mirror of
https://github.com/ae-utbm/sith.git
synced 2024-11-22 06:03:20 +00:00
Merge branch 'skia/deploy_in_ci' into 'master'
gitlab-ci: deploy with Gitlab CI/CD This MR is a proof-of-concept for deploying the Sith using Gitlab CI/CD. It leverage the CI variable to use a private key that is deployed for the `sith` user of `ae-web`. The `prod.sh` script shall do the rest. TODO before merge: * [x] Ensure the private key variable is protected (currently done, but may change during development to be used on this branch) * [x] Remove this branch from the `only:refs` list * [x] Change `test_prod.sh` for the real script See merge request ae/Sith!293
This commit is contained in:
commit
5b0f7ca21b
@ -1,5 +1,6 @@
|
||||
stages:
|
||||
- test
|
||||
- deploy
|
||||
|
||||
# Installs and launch unittests
|
||||
unittests:
|
||||
@ -47,3 +48,40 @@ black:
|
||||
cache:
|
||||
paths:
|
||||
- .cache/pip_black
|
||||
|
||||
deploy:
|
||||
stage: deploy
|
||||
before_script:
|
||||
##
|
||||
## Install ssh-agent if not already installed, it is required by Docker.
|
||||
## (change apt-get to yum if you use an RPM-based image)
|
||||
##
|
||||
- 'command -v ssh-agent >/dev/null || ( apt-get update -y && apt-get install openssh-client -y )'
|
||||
|
||||
##
|
||||
## Run ssh-agent (inside the build environment)
|
||||
##
|
||||
- eval $(ssh-agent -s)
|
||||
|
||||
##
|
||||
## Add the SSH key stored in SSH_PRIVATE_KEY variable to the agent store
|
||||
## We're using tr to fix line endings which makes ed25519 keys work
|
||||
## without extra base64 encoding.
|
||||
## https://gitlab.com/gitlab-examples/ssh-private-key/issues/1#note_48526556
|
||||
##
|
||||
- echo "$SSH_PRIVATE_KEY" | tr -d '\r' | ssh-add -
|
||||
|
||||
##
|
||||
## Create the SSH directory and give it the right permissions
|
||||
##
|
||||
- mkdir -p ~/.ssh
|
||||
- chmod 700 ~/.ssh
|
||||
script:
|
||||
- ssh -o StrictHostKeyChecking=accept-new sith@ae-web $SITH_PROD_SCRIPT_PATH
|
||||
environment:
|
||||
name: prod
|
||||
url: https://ae.utbm.fr
|
||||
only:
|
||||
refs:
|
||||
- master
|
||||
when: on_success
|
||||
|
Loading…
Reference in New Issue
Block a user