#!groovy

@Library('szint-global-pipeline-libraries@2.2.0') _
import de.sueddeutsche.scm.Release

def release

try {
  release = new Release(this, getAppName())
  release.start()
  release.test()
  release.build()
  release.deploy('stage')
  stage('Standardtests') {
    timeout(time: 4, unit: 'DAYS') {
      input 'Were standardtests successfull?'
    }
  }
  release.deploy('prod')
  release.finish()

} catch(Throwable e) {

  currentBuild.result = "FAILED"
  notifyFailure("${getAppName()}: release failed")
  throw e

}
