diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 081e344f..3bf62d81 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -11,7 +11,8 @@ variables: stages: - test - - deploy + - deploy_697 + - deploy_736 unit_test: stage: test @@ -21,7 +22,7 @@ unit_test: - php artisan key:generate deploy_production: - stage: deploy + stage: deploy_697 script: - 'which ssh-agent || ( apt-get update -y && apt-get install openssh-client -y )' - eval $(ssh-agent -s) @@ -29,10 +30,25 @@ deploy_production: - mkdir -p ~/.ssh - '[[ -f /.dockerenv ]] && echo -e "Host *\n\tStrictHostKeyChecking no\n\n" > ~/.ssh/config' - - ~/.composer/vendor/bin/envoy run deploy --commit="$CI_COMMIT_SHA" + - ~/.composer/vendor/bin/envoy run deploy_697 --commit="$CI_COMMIT_SHA" environment: - name: production - url: http://dev.exvps.ca - when: manual + name: 697 + url: http://escadron697.ca + only: + - master + +deploy_production: + stage: deploy_736 + script: + - 'which ssh-agent || ( apt-get update -y && apt-get install openssh-client -y )' + - eval $(ssh-agent -s) + - ssh-add <(echo "$SSH_PRIVATE_KEY") + - mkdir -p ~/.ssh + - '[[ -f /.dockerenv ]] && echo -e "Host *\n\tStrictHostKeyChecking no\n\n" > ~/.ssh/config' + + - ~/.composer/vendor/bin/envoy run deploy_736 --commit="$CI_COMMIT_SHA" + environment: + name: 697 + url: http://736.exvps.ca only: - master \ No newline at end of file diff --git a/Envoy.blade.php b/Envoy.blade.php index c06598b9..c9c466a1 100644 --- a/Envoy.blade.php +++ b/Envoy.blade.php @@ -2,43 +2,83 @@ @setup $repository = 'git@gitlab.com:TheGamecraft/c-cms.git'; - $releases_dir = '/var/www/c-cms/escadron697/releases'; - $app_dir = '/var/www/c-cms/escadron697'; $release = date('YmdHis'); - $new_release_dir = $releases_dir .'/'. $release; + + $releases_dir_697 = '/var/www/c-cms/escadron697/releases'; + $app_dir_697 = '/var/www/c-cms/escadron697'; + $new_release_dir_697 = $releases_dir_697 .'/'. $release; + + $releases_dir_736 = '/var/www/c-cms/escadron736/releases'; + $app_dir_736 = '/var/www/c-cms/escadron736'; + $new_release_dir_736 = $releases_dir_736 .'/'. $release; @endsetup -@story('deploy') - clone_repository - run_composer - update_symlinks +@story('deploy_697') + clone_repository_697 + run_composer_697 + update_symlinks_697 @endstory -@task('clone_repository') +@story('deploy_736') + clone_repository_736 + run_composer_736 + update_symlinks_736 +@endstory + +@task('clone_repository_697') echo 'Cloning repository' - [ -d {{ $releases_dir }} ] || mkdir {{ $releases_dir }} - git clone --depth 1 {{ $repository }} {{ $new_release_dir }} - cd {{ $new_release_dir }} + [ -d {{ $releases_dir_697 }} ] || mkdir {{ $releases_dir_697 }} + git clone --depth 1 {{ $repository }} {{ $new_release_dir_697 }} + cd {{ $new_release_dir_697 }} git reset --hard {{ $commit }} @endtask -@task('run_composer') +@task('run_composer_697') echo "Starting deployment ({{ $release }})" - cd {{ $new_release_dir }} + cd {{ $new_release_dir_697 }} composer install --prefer-dist --no-scripts -q -o @endtask -@task('update_symlinks') +@task('update_symlinks_697') echo "Linking storage directory" - rm -rf {{ $new_release_dir }}/storage - ln -nfs {{ $app_dir }}/storage {{ $new_release_dir }}/storage + rm -rf {{ $new_release_dir_697 }}/storage + ln -nfs {{ $app_dir_697 }}/storage {{ $new_release_dir_697 }}/storage echo 'Linking .env file' - ln -nfs {{ $app_dir }}/.env {{ $new_release_dir }}/.env + ln -nfs {{ $app_dir_697 }}/.env {{ $new_release_dir_697 }}/.env echo 'Linking current release' - ln -nfs {{ $new_release_dir }} {{ $app_dir }}/current + ln -nfs {{ $new_release_dir_697 }} {{ $app_dir_697 }}/current echo 'Setting permission' - chmod -R 777 {{ $app_dir }}/current/bootstrap/ + chmod -R 777 {{ $app_dir_697 }}/current/bootstrap/ +@endtask + +@task('clone_repository_736') + echo 'Cloning repository' + [ -d {{ $releases_dir_736 }} ] || mkdir {{ $releases_dir_736 }} + git clone --depth 1 {{ $repository }} {{ $new_release_dir_736 }} + cd {{ $new_release_dir_736 }} + git reset --hard {{ $commit }} +@endtask + +@task('run_composer_736') + echo "Starting deployment ({{ $release }})" + cd {{ $new_release_dir_736 }} + composer install --prefer-dist --no-scripts -q -o +@endtask + +@task('update_symlinks_736') + echo "Linking storage directory" + rm -rf {{ $new_release_dir_736 }}/storage + ln -nfs {{ $app_dir_736 }}/storage {{ $new_release_dir_736 }}/storage + + echo 'Linking .env file' + ln -nfs {{ $app_dir_736 }}/.env {{ $new_release_dir_736 }}/.env + + echo 'Linking current release' + ln -nfs {{ $new_release_dir_736 }} {{ $app_dir_736 }}/current + + echo 'Setting permission' + chmod -R 777 {{ $app_dir_736 }}/current/bootstrap/ @endtask \ No newline at end of file