pipeline { agent any environment { DOCKER_LOGIN_CREDS = credentials('gitlab-docker-key') PATH = "/var/lib/jenkins/.cargo/bin:$PATH" INFRA_KEY = credentials('infra_key') } stages { stage('Build') { steps { sh 'cargo build --locked' } } stage('Clippy') { steps { sh 'cargo clippy --locked' } } stage('Docker') { steps { sh 'docker login registry.gitlab.com -u ${DOCKER_LOGIN_CREDS_USR} -p ${DOCKER_LOGIN_CREDS_PSW}' sh 'STK_CHANNEL=bleeding STK_BUILD_NUM=${BUILD_NUMBER} ./spacetime build_docker' } } stage('Deploy') { steps { sh 'sshpass -p ${INFRA_KEY} ./spacetime infra update-bleeding' sh 'sshpass -p ${INFRA_KEY} ./spacetime infra restart-bleeding' } } } }