2016-10-12 5 views
0

CircleCI를 사용하여 서버에 배포 한 Django 프로젝트가 있습니다. 서버는 기본 클라우드 서버이며 SSH로 연결할 수 있습니다.CircleCI 배포 후 서버에서 작업 수행

circle.yml 파일의 deployment 섹션을 설정하면 모든 것이 잘 작동합니다. 배포 후 (예 : 데이터베이스 마이그레이션 또는 gunicorn 다시로드) 서버에서 일부 작업을 자동으로 수행하려고합니다.

내가 거기 CircleCI와 함께 할 수있는 방법은? 나는 문서를 보았지만이 특별한 문제와 관련된 것을 찾을 수 없었다. 내 배포 단계 후에도 ssh [email protected]_server_ip을 넣으려고했으나 멈추어 서 어떤 작업도 수행 할 수 없습니다. SSH를 성공적으로 수행 할 수 있지만 나머지 명령은 호출되지 않습니다. 내가 서버에 post_deploy.sh 파일을 넣고, 그리고 circle.yml에이 줄을 바꾸어 문제를 해결

deployment: 
    staging: 
    branch: develop 
     commands: 
     - rsync --update ./requirements.txt [email protected]:/home/user/requirements.txt 
     - rsync -r --update ./myapp/ [email protected]:/home/user/myapp/ 
     - ssh [email protected] 
     - workon myapp_venv 
     - cd /home/user/ 
     - pip install -r requirements.txt 

답변

1

: 이 ssh -i ~/.ssh/id_myhost [email protected] 'post_deploy.sh' 그것은 명령을 실행 여기에

처럼 내 이상적 circle.yml 파일이 보일 것이다 것입니다 post_deploy.sh 파일에 있습니다. 정확히 내가 원했던 것입니다.

관련 문제