when: event: - push - manual branch: main steps: build: image: rust environment: SSH_PRIVATE_KEY: from_secret: SSH_PRIVATE_KEY SSH_USER: from_secret: SSH_USER SSH_HOST: from_secret: SSH_HOST CARGO_PATH: from_secret: CARGO_PATH WORK_DIR: from_secret: WORK_DIR MAIN_BRANCH: from_secret: MAIN_BRANCH ARTIFACT_DIR: from_secret: ARTIFACT_DIR DEPLOY_PATH: from_secret: DEPLOY_PATH commands: - mkdir -p ~/.ssh - echo "$${SSH_PRIVATE_KEY}" > ~/.ssh/id_rsa && chmod 600 ~/.ssh/id_rsa - ssh-keyscan -H $${SSH_HOST} > ~/.ssh/known_hosts - ssh $${SSH_USER}@$${SSH_HOST} "export PATH="$${CARGO_PATH}:$PATH" && cd $${WORK_DIR} && git checkout $${MAIN_BRANCH} && git pull --rebase && dx build --release && cp -r $${ARTIFACT_DIR} $${DEPLOY_PATH} && rm -rf $${DEPLOY_PATH}/personality && mv $${DEPLOY_PATH}/public $${DEPLOY_PATH}/personality" - rm -rf ~/.ssh