# Copyright (c) HashiCorp, Inc. # SPDX-License-Identifier: MPL-2.0 version: 2.1 orbs: slack: circleci/slack@3.4.2 jobs: update-helm-charts-index: docker: - image: docker.mirror.hashicorp.services/cimg/go:1.19.2 steps: - checkout - run: name: verify Chart version matches tag version environment: RELEASE_TAG: << pipeline.parameters.release-tag >> command: | go install github.com/mikefarah/yq/v2@latest export TAG=${RELEASE_TAG:-$CIRCLE_TAG} git_tag=$(echo "${TAG#v}") chart_tag=$(yq r Chart.yaml version) if [ "${git_tag}" != "${chart_tag}" ]; then echo "chart version (${chart_tag}) did not match git version (${git_tag})" exit 1 fi - run: name: install gh tool command: | version="2.22.1" curl --show-error --silent --location --output "gh.tar.gz" "https://github.com/cli/cli/releases/download/v${version}/gh_${version}_linux_amd64.tar.gz" tar -xvzf gh.tar.gz && mkdir -p bin && mv "gh_${version}_linux_amd64/bin/gh" bin/ - run: name: update helm-charts index environment: RELEASE_TAG: << pipeline.parameters.release-tag >> command: | export GITHUB_TOKEN="${HELM_CHARTS_GITHUB_TOKEN}" ./bin/gh workflow run publish-charts.yml \ --repo hashicorp/helm-charts \ --ref main \ -f SOURCE_TAG="${CIRCLE_TAG}" \ -f SOURCE_REPO="${CIRCLE_PROJECT_USERNAME}/${CIRCLE_PROJECT_REPONAME}" - slack/status: fail_only: true failure_message: "Failed to trigger an update to the helm charts index. Check the logs at: ${CIRCLE_BUILD_URL}" parameters: release-tag: type: string default: "" description: "The tag to release, including v, e.g. v0.22.1" workflows: version: 2 # Note: unit and acceptance tests are now being run in GitHub Actions update-helm-charts-index: jobs: - update-helm-charts-index: context: helm-charts-trigger-vault filters: tags: only: /^v.*/ branches: ignore: /.*/ manual-trigger-update-helm-charts-index: when: << pipeline.parameters.release-tag >> jobs: - update-helm-charts-index: context: helm-charts-trigger-vault