/*
 * Copyright (C) SapphireCode - All Rights Reserved
 * This file is part of Snippeteer which is released under BSD-3-Clause.
 * See file 'LICENSE' for full license details.
 * Created by Timo Hocker <timo@scode.ovh>, May 2020
 */

/* eslint-disable max-len */

import { files } from '@sapphirecode/standard';

const general = { jenkinsfile: '' };
const node = { jenkinsfile: files.jenkinsfile, js: files.jenkins };

general.jenkinsfile = `pipeline {
  agent any

  environment {
      VERSION = VersionNumber([
          versionNumberString: 
              '\${BUILDS_ALL_TIME}',
          versionPrefix: '1.0.',
          worstResultForIncrement: 'SUCCESS'
      ])
      publish = 0
  }

  stages {
      stage('Setup') {
          steps {
              script {
                  currentBuild.displayName = env.VERSION
              }
              echo 'Setting up test environment'
              sh 'echo setup'
          }
      }
  }
  post {
      success {
          script {
              publish = sh script: "git log -1 | grep '\\\\[no publish\\\\]'", returnStatus: true
              if (publish != 0) {
                echo 'Deploying'
                sh 'echo deploy'
              } else {
                echo 'Build successful, Commit not marked for deploying'
                currentBuild.result = "UNSTABLE"
              }
          }
      }
  }
}
`;

export { general, node };