New pipeline

This commit is contained in:
Jannis Portmann 2022-01-23 00:37:00 +01:00
parent 71ca261cab
commit b47e2c1b14

42
Jenkinsfile vendored
View file

@ -2,36 +2,32 @@ node {
def app def app
stage('Clone repository') { stage('Clone repository') {
/* Let's make sure we have the repository cloned to our workspace */ // Let's make sure we have the repository cloned to our workspace
checkout scm checkout scm
} }
stage('Build image') { stage('Install dependencies') {
/* This builds the actual image; synonymous to // Install dependencies for build later
* docker build on the command line */ composer update --no-dev
yarn install
app = docker.build("thisfro/plantex")
} }
stage('Test image') { stage('Vulnr test') {
/* Ideally, we would run a test framework against our image. snykSecurity(
* For this example, we're using a Volkswagen-type approach ;-) */ snykInstallation: 'snyk',
targetFile: 'composer.json',
app.inside { )
// php 'bin/phpunit'
sh 'echo "success"'
}
}
stage('Push image') {
docker.withRegistry('https://hub.thisfro.ch') {
app.push("$BUILD_NUMBER")
app.push('latest')
}
} }
stage('Deploy staging') { stage('Deploy staging') {
sh 'cd /opt/containers/pflaenz.li && docker-compose pull && docker-compose up -d' // Deploy to staging host
vendor/bin/dep deploy staging
} }
/*
stage('Test staging') {
// Run phpunit tests on staging host
bin/phpunit COMMAND
}
/*
} }