pipeline { agent any environment { FTP_HOST = credentials('csgowtf-deploy-host') LFTP_PASSWORD = credentials('csgowtf-deploy-password') } stages { stage('Prepare') { steps { writeFile file: '.env.prodution', text: 'VUE_APP_API_URL=https://api.csgow.tf' } } stage('Install Dependencies') { steps { sh 'yarn install' } } stage('Build') { steps { sh 'yarn build' archiveArtifacts artifacts: '**/dist/**', excludes: '**/node_modules/**' } } stage('Deploy') { when { branch 'master' expression { currentBuild.result == null || currentBuild.result == 'SUCCESS' } } environment { FTP_USERNAME = credentials('csgowtf-deploy-user') } steps { sh 'lftp -u $FTP_USERNAME --env-password -e \'mirror --reverse --verbose --delete --ignore-time --recursion=always dist/ /\' $FTP_HOST' } } stage('Deploy Dev') { when { branch 'dev' expression { currentBuild.result == null || currentBuild.result == 'SUCCESS' } } environment { FTP_USERNAME = credentials('csgowtf-deploy-user-dev') } steps { sh 'lftp -u $FTP_USERNAME --env-password -e \'mirror --reverse --verbose --delete --ignore-time --recursion=always dist/ /\' $FTP_HOST' } } } }