---
# CORD helm chart publishing tasks

- project:
    name: helm-repo

    # add repos that have documentation to the project list in both jobs
    jobs:
      - 'publish-helm-repo':
          project-regexp: '{helm-charts-projects-regexp}'
          branch-regexp: '{supported-branches-regexp}'

- job-template:
    id: publish-helm-repo
    name: 'publish-helm-repo'
    description: |
      Created by publish-helm-repo job-template from ci-management/jjb/helm.yaml

    triggers:
      - cord-infra-gerrit-trigger-merge:
          gerrit-server-name: '{gerrit-server-name}'
          project-regexp: '{project-regexp}'
          branch-regexp: '{branch-regexp}'
          file-include-regexp: '{all-files-regexp}'
          dependency-jobs: '{dependency-jobs}'

    properties:
      - cord-infra-properties:
          build-days-to-keep: '{build-days-to-keep}'
          artifact-num-to-keep: '{artifact-num-to-keep}'

    wrappers:
      - lf-infra-wrappers:
          build-timeout: '{build-timeout}'
          jenkins-ssh-credential: '{jenkins-ssh-credential}'

    scm:
      - lf-infra-gerrit-scm:
          git-url: '$GIT_URL/$GERRIT_PROJECT'
          refspec: ''
          branch: '$GERRIT_BRANCH'
          submodule-recursive: 'false'
          choosing-strategy: 'gerrit'
          jenkins-ssh-credential: '{jenkins-ssh-credential}'

    node: '{build-node}'
    project-type: freestyle
    concurrent: false

    builders:
      - shell: |
          #!/usr/bin/env bash
          set -eu -o pipefail

          echo "git version: $(git --version)"

          # Configure git
          git config --global user.email "do-not-reply@opencord.org"
          git config --global user.name "Jenkins"

          # Checkout 'cord-charts-repo' repo that contains updated charts
          git clone ssh://jenkins@gerrit.opencord.org:29418/cord-charts-repo.git

          # Clone the `helm-repo-tools` which contains scripts
          git clone ssh://jenkins@gerrit.opencord.org:29418/helm-repo-tools.git

          # Setup helm and external repos
          helm init --client-only
          helm repo add incubator https://kubernetes-charts-incubator.storage.googleapis.com
          helm repo add rook-beta https://charts.rook.io/beta
          helm repo add cord https://charts.opencord.org

          # Update the repo
          ./helm-repo-tools/helmrepo.sh

          # Tag and push to git the charts repo
          pushd cord-charts-repo

            # only update if charts are changed
            set +e
            if git diff --exit-code index.yaml > /dev/null; then
              echo "No changes to charts in patchset $GERRIT_CHANGE_NUMBER on project: $GERRIT_PROJECT, exiting."
              exit 0
            fi
            set -e

            # version tag is the current date in RFC3339 format
            NEW_VERSION=$(date -u +%Y%m%dT%H%M%SZ)

            # Add changes and create commit
            git add -A
            git commit -m "Changed by CORD Jenkins publish-helm-repo job: $BUILD_NUMBER, for project: $GERRIT_PROJECT, patchset: $GERRIT_CHANGE_NUMBER"

            # create tag on new commit
            git tag "$NEW_VERSION"

            echo "Tags including new tag:"
            git tag -n

            # push new commit and tag back into repo
            git push origin
            git push origin "$NEW_VERSION"
          popd

          # Set up the ssh host keys for the docs host
          mkdir -p ~/.ssh
          echo '{docs-ssh-host-key}' >> ~/.ssh/known_hosts

          # Copy updated repo to host
          rsync -rvzh --delete-after --exclude=.git cord-charts-repo/ {docs-ssh-host}:/var/www/charts

    publishers:
      - email:
          recipients: 'andy@opennetworking.org kailash@opennetworking.org luca@opennetworking.org teo@opennetworking.org saurav@opennetworking.org zdw@opennetworking.org'

# check helm charts with `helm lint --strict` and that charts version is
# updated when the contents of a chart is modified.
- job-template:
    id: verify-helm-lint
    name: 'verify_{project}_helm-lint'
    description: |
      Created by verify-helm-lint job-template from ci-management/jjb/lint.yaml

    triggers:
      - cord-infra-gerrit-trigger-patchset:
          gerrit-server-name: '{gerrit-server-name}'
          project-regexp: '^{project}$'
          branch-regexp: '{branch-regexp}'
          file-include-regexp: '{all-files-regexp}'
          dependency-jobs: '{dependency-jobs}'

    properties:
      - cord-infra-properties:
          build-days-to-keep: '{build-days-to-keep}'
          artifact-num-to-keep: '{artifact-num-to-keep}'

    wrappers:
      - lf-infra-wrappers:
          build-timeout: '{build-timeout}'
          jenkins-ssh-credential: '{jenkins-ssh-credential}'

    scm:
      - lf-infra-gerrit-scm:
          git-url: '$GIT_URL/$GERRIT_PROJECT'
          refspec: '$GERRIT_REFSPEC'
          branch: '$GERRIT_BRANCH'
          submodule-recursive: 'false'
          choosing-strategy: gerrit
          jenkins-ssh-credential: '{jenkins-ssh-credential}'

    node: '{build-node}'
    project-type: freestyle
    concurrent: true

    builders:
      - shell: |
          #!/usr/bin/env bash
          set -eu -o pipefail

          # Setup helm and external repos
          helm init --client-only
          helm repo add incubator https://kubernetes-charts-incubator.storage.googleapis.com
          helm repo add rook-beta https://charts.rook.io/beta
          helm repo add cord https://charts.opencord.org

          git clone https://gerrit.opencord.org/helm-repo-tools
          ./helm-repo-tools/helmlint.sh clean

          # Specify the remote branch to compare against
          export COMPARISON_BRANCH="origin/$GERRIT_BRANCH"
          ./helm-repo-tools/chart_version_check.sh

          # Check for chart version conflicts by building the repo (don't upload)
          git clone ssh://jenkins@gerrit.opencord.org:29418/cord-charts-repo.git
          ./helm-repo-tools/helmrepo.sh
