diff --git a/spug_api/apps/deploy/utils.py b/spug_api/apps/deploy/utils.py index 3d4e5d5..183cbd1 100644 --- a/spug_api/apps/deploy/utils.py +++ b/spug_api/apps/deploy/utils.py @@ -10,6 +10,7 @@ import socket import subprocess import json import uuid +import sys import os REPOS_DIR = settings.REPOS_DIR @@ -149,7 +150,11 @@ def _deploy_ext1_host(helper, h_id, extend, env): # do deploy helper.send_step(h_id, 3, f'{human_time()} 执行发布... ') tmp_path = os.path.join(extend.dst_repo, f'tmp_{env.SPUG_VERSION}') - helper.remote(host.id, ssh, f'ln -sfn {repo_dir} {tmp_path} && mv -fT {tmp_path} {extend.dst_dir}') + if sys.platform == 'darwin': + command = f'rm -f {extend.dst_dir} && ln -sfn {repo_dir} {extend.dst_dir}' + else: + command = f'ln -sfn {repo_dir} {tmp_path} && mv -fT {tmp_path} {extend.dst_dir}' + helper.remote(host.id, ssh, command) helper.send_step(h_id, 3, '完成\r\n') # post host