- builder:
    name: set-git-credentials
    builders:
      - shell: |
          #!/bin/bash -e
          echo "machine gerrit.googlesource.com login $GS_GIT_USER password $GS_GIT_PASS">> ~/.netrc
          chmod 600 ~/.netrc

- builder:
    name: merge-target-branch
    builders:
      - shell: |
          #!/bin/bash -e
          cd gerrit
          git fetch origin $TARGET_BRANCH
          git config user.name "Jenkins Build"
          git config user.email "jenkins@gerritforge.com"
          git merge --no-commit --no-edit --no-ff FETCH_HEAD

- builder:
    name: fetch-all-submodules
    builders:
      - shell: |
          #!/bin/bash -e
          set +x
          cd gerrit
          function fetch_submodules {
            # We do need to call update even if we know it will fail: the submodules git needs
            # to be initialised and made it pointing to the correct remote submodule URL
            git submodule update > /dev/null 2> /dev/null || true
            export SUBMODULES=$(git submodule status | awk '{print $2}')
            for module in $SUBMODULES
            do
              echo "Fetching all changes refs for $module ..."
              pushd $module > /dev/null
              git fetch -q origin +refs/changes/*:refs/changes/*
              popd > /dev/null
            done
          }
          git submodule init
          # Fetch submodules refs/changes as fallback action of a submodule update failure
          echo "Updating all submodules ..."
          git submodule update || ( fetch_submodules && git submodule update )

- defaults:
    name: verifier-defaults
    concurrent: true
    parameters:
      - string:
          name: CHANGE_URL
          description: 'Gerrit Change URL to build'
      - string:
          name: REFSPEC
          description: 'Git refspec to use for fetching changes'
      - string:
          name: BRANCH
          description: 'Git SHA1 of the path-set to verify'
      - string:
          name: TARGET_BRANCH
          description: 'Git target branch of the change'
      - choice:
          name: MODE
          choices:
            - reviewdb
            - notedb
            - polygerrit
            - rbe
          description: 'Type of verification to execute'
    properties:
      - authorization:
          anonymous:
            - job-discover
            - job-read
            - job-extended-read
      - build-discarder:
          days-to-keep: 30
      - inject:
          properties-content: >
            BAZEL_OPTS=--remote_cache=https://gerrit-ci.gerritforge.com/cache
            --java_toolchain=//tools:error_prone_warnings_toolchain
    scm:
      - git:
          url: https://gerrit.googlesource.com/a/gerrit
          credentials-id: gerrit.googlesource.com
          refspec: $REFSPEC
          branches:
            - $BRANCH
          submodule:
            disable: true
          skip-tag: true
          basedir: gerrit
    wrappers:
      - credentials-binding:
          - username-password-separated:
              credential-id: gerrit.googlesource.com
              username: GS_GIT_USER
              password: GS_GIT_PASS
      - raw:
          xml: |
            <hudson.plugins.build__timeout.BuildTimeoutWrapper plugin="build-timeout@1.16">
              <strategy class="hudson.plugins.build_timeout.impl.NoActivityTimeOutStrategy">
                 <timeoutSecondsString>750</timeoutSecondsString>
              </strategy>
              <operationList>
                 <hudson.plugins.build__timeout.operations.AbortOperation/>
              </operationList>
            </hudson.plugins.build__timeout.BuildTimeoutWrapper>
    publishers:
      - groovy-postbuild:
          script: |
            (manager.logContains('timed out') || manager.logContains('TIMEOUT in ')) \
              ? manager.buildAborted() : false

- job:
    name: Gerrit-verifier-bazel
    description: 'Gerrit build of open change with Bazel'
    defaults: verifier-defaults
    node: bazel-debian
    builders:
      - set-git-credentials
      - merge-target-branch
      - fetch-all-submodules
      - shell: !include-raw-escape: gerrit-bazel-cleancache.sh
      - shell: !include-raw-escape: gerrit-bazel-build.sh
      - shell: !include-raw-escape: set-docker-host.sh
      - shell: !include-raw-escape: gerrit-bazel-verifier-test.sh
      - shell: !include-raw-escape: gerrit-bazel-cat-test-log.sh
    publishers:
      - archive:
          artifacts: >
            gerrit/bazel-bin/release.war,
            gerrit/bazel-bin/*api/*api.jar,
            gerrit/bazel-bin/gerrit-acceptance-framework/*.jar
          excludes: 'gerrit/bazel-bin/plugins/core*/**/*.jar'

- job-template:
    name: Gerrit-verifier-{config}
    description: 'Gerrit build of open change with {config}'
    defaults: verifier-defaults
    node: bazel-{config}
    builders:
      - set-git-credentials
      - merge-target-branch
      - fetch-all-submodules
      - shell: !include-raw-escape: gerrit-bazel-cleancache.sh
      - shell: !include-raw-escape: gerrit-bazel-build.sh
      - shell: !include-raw-escape: set-docker-host.sh
      - shell: !include-raw-escape: gerrit-bazel-verifier-test.sh
      - shell: !include-raw-escape: gerrit-bazel-cat-test-log.sh
    publishers:
      - archive:
          artifacts: >
            gerrit/bazel-bin/*.war,gerrit/bazel-bin/plugins/*/*.jar,
            gerrit/bazel-bin/*api/*api.jar,
            gerrit/bazel-bin/gerrit-acceptance-framework/*.jar
          excludes: 'gerrit/bazel-bin/plugins/core*/**/*.jar'

- project:
    name: Gerrit-verifier-bazel
    config:
      - chrome80
    jobs:
      - 'Gerrit-verifier-{config}'

- job:
    name: Gerrit-codestyle
    description: 'Gerrit code-style checker for an open change'
    defaults: verifier-defaults
    node: bazel-debian
    builders:
      - set-git-credentials
      - merge-target-branch
      - fetch-all-submodules
      - shell: !include-raw-escape: gerrit-bazel-cleancache.sh
      - shell: !include-raw-escape: gerrit-codestyle-gjf.sh
      - shell: !include-raw-escape: gerrit-codestyle-polygerrit-lint.sh
      - shell: !include-raw-escape: gerrit-codestyle-buildifier.sh

- job:
    name: 'Gerrit-verifier-pipeline'
    description: Multi-branch pipeline to validate Gerrit
    project-type: multibranch
    node: master
    days-to-keep: 90
    prune-dead-branches: true
    scm:
      - gerrit:
          url: https://gerrit-review.googlesource.com/a/gerrit
          credentials-id: gerrit.googlesource.com
          refspecs:
            - '+refs/heads/*:refs/remotes/@{remote}/*'
          filter-checks:
            query-operator: 'SCHEME'
            query-string: 'gerritforge'
          property-strategies:
            all-branches:
              - suppress-scm-triggering: false
              - pipeline-branch-durability-override: max-survivability
    periodic-folder-trigger: 5m
