# This file holds all gerrit verifications for building deb and rpm packages.
# https://jenkins.osmocom.org/jenkins/view/Jenkins-Gerrit/.
# One can simply add a gerrit job by adding project's repository to repos list.

- project:
    name: gerrit-binpkgs
    jobs:
      - 'gerrit-binpkgs'

- job:
    name: 'gerrit-binpkgs'
    project-type: freestyle
    node: osmocom-gerrit
    concurrent: true
    retry-count: 3 # scm checkout
    properties:
      - build-discarder:
          days-to-keep: 30
          num-to-keep: 1000
    description: |
      binary packages job (deb/rpm) of CI for patches sent to
      <a href="https://gerrit.osmocom.org">gerrit</a>
      </br></br>
      Related issue: <a href="https://osmocom.org/issues/2385">OS#2385</a>

    parameters:
      !include: gerrit-verifications-parameters.yaml.inc

    scm:
      - git:
         basedir: 'code-from-gerrit'
         url: '$GERRIT_REPO_URL'
         credentials-id: d5eda5e9-b59d-44ba-88d2-43473cb6e42d
         branches:
           - $GERRIT_BRANCH
         refspec: $GERRIT_REFSPEC
         name:
         choosing-strategy: gerrit
         wipe-workspace: true
         skip-tag: true
         submodule:
           recursive: false

    builders:
      - shell: |-
          # Make obvious which distro we build for, for humans and for parsing
          # by scripts/jenkins-gerrit/comment_generate.py
          set +x
          echo
          echo "Building binary packages for distro: '$DISTRO'"
          echo
          set -x

          # Clone osmo-ci.git
          rm -rf osmo-ci
          git clone \
            --depth=1 \
            --branch="$BRANCH_CI" \
            https://gerrit.osmocom.org/osmo-ci \
            osmo-ci
          git -C osmo-ci log --oneline

          # Move code from gerrit to build_srcpkg.py's git cache
          cache_dir=osmo-ci/scripts/obs/_cache
          mkdir -p $cache_dir
          mv code-from-gerrit "$cache_dir/$PROJECT_NAME"

          # Set a known branch name
          git -C "$cache_dir/$PROJECT_NAME" checkout -B "origin/gerrit"

          # Build source package
          cd osmo-ci/scripts/obs/
          ./build_srcpkg.py \
            --docker \
            --feed master \
            --git-branch gerrit \
            --git-skip-fetch \
            "$PROJECT_NAME"

          # Build binary package
          ./build_binpkg.py \
            --docker "$DISTRO" \
            "$PROJECT_NAME"
    wrappers:
    - ansicolor:
        colormap: xterm
    - ssh-agent-credentials:
        users:
        - d5eda5e9-b59d-44ba-88d2-43473cb6e42d

# vim: expandtab tabstop=2 shiftwidth=2
