From 1e9fc192e6ddb9be07d70f24bffad4e32809272a Mon Sep 17 00:00:00 2001 From: Eric Seidel Date: Fri, 29 May 2015 10:47:16 -0700 Subject: [PATCH] Fix sky_server.py on Mac and make sky_server executable if it's not already R=eseidel@chromium.org, eseidel Review URL: https://codereview.chromium.org/1161133002 --- tools/skypy/skyserver.py | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/tools/skypy/skyserver.py b/tools/skypy/skyserver.py index d161eb0ddd4..970437d0703 100644 --- a/tools/skypy/skyserver.py +++ b/tools/skypy/skyserver.py @@ -6,6 +6,7 @@ import socket import subprocess import logging import os.path +import stat import platform SKYPY_PATH = os.path.dirname(os.path.abspath(__file__)) @@ -32,10 +33,10 @@ class SkyServer(object): if platform.system() == 'Linux': platform_dir = 'linux64' - elif platform.system() == 'Mac': + elif platform.system() == 'Darwin': platform_dir = 'mac' else: - assert False, 'No sky_server binary for this platform?' + assert False, 'No sky_server binary for this platform: ' + platform.system() return os.path.join(SKYGO_PATH, platform_dir, 'sky_server') @@ -47,6 +48,10 @@ class SkyServer(object): return server_path = self.sky_server_path() + st = os.stat(self.sky_server_path()) + if not (stat.S_IXUSR & st[stat.ST_MODE]): + logging.warn('Changing the permissions of %s to be executable.', self.sky_server_path()) + os.chmod(self.sky_server_path(), st[stat.ST_MODE] | stat.S_IEXEC) server_command = [ server_path, '-t', self.configuration,