# usig a freestyle project to work around jenkins bug:
# https://issues.jenkins-ci.org/browse/JENKINS-14193

- job-template:
    name: 'gate-{name}-build'
    node: '{node}'

    wrappers:
      - build-timeout:
          timeout: 30
      - timestamps

    builders:
      - revoke-sudo
      - gerrit-git-prep
      - shell: |
          #!/bin/bash -xe
          /usr/local/jenkins/slave_scripts/version-properties.sh
          source version.properties
          mvn clean package -B -Dproject-version=$PROJECT_VER

    publishers:
      - console-log

- job-template:
    name: '{name}-hpi-artifact'
    node: '{node}'

    wrappers:
      - build-timeout:
          timeout: 30
      - timestamps

    builders:
      - revoke-sudo
      - gerrit-git-prep
      - shell: |
          #!/bin/bash -xe
          /usr/local/jenkins/slave_scripts/version-properties.sh
          source version.properties
          mvn clean package -B -Dproject-version=$PROJECT_VER
          cp ./target/{name}.hpi ./target/{name}-$PROJECT_VER.hpi

    publishers:
      - war:
          site: '{tarball-site}'
          warfile: 'target/{name}-*.hpi'
          target: 'tarballs/ci/{name}'
      - console-log

- job-template:
    name: '{name}-jenkinsci-upload'
    node: pypi

    builders:
      - revoke-sudo
      - shell: |
          #!/bin/bash -xe
          TAG=`echo $ZUUL_REF | sed 's/^refs.tags.//'`
          FILENAME_HPI="{name}-$TAG.hpi"

          # copy plugin artifacts from tarballs to local workspace
          rm -rf *.hpi
          curl -o $FILENAME_HPI http://{tarball-site}/ci/{name}/$FILENAME_HPI

          # deploy to maven repository
          FILENAME_POM="{name}-$TAG.pom"
          /usr/local/jenkins/slave_scripts/jenkinsci-upload.sh {name} $TAG \
              $FILENAME_POM $FILENAME_HPI

    publishers:
      - console-log

- job-group:
    name: jenkins-plugin-jobs
    jobs:
      - 'gate-{name}-build'
      - '{name}-hpi-artifact'
      - '{name}-jenkinsci-upload'