charts/common-library/templates/_common.yaml (324 lines of code) (raw):

{{- define "get-cache" -}} - name: get-cache taskRef: kind: Task name: get-cache runAfter: - fetch-repository params: - name: CACHE_NAME value: $(params.CODEBASE_NAME) workspaces: - name: cache workspace: shared-workspace subPath: cache {{- end -}} {{- define "save-cache" -}} - name: save-cache taskRef: kind: Task name: save-cache runAfter: - build params: - name: CACHE_NAME value: $(params.CODEBASE_NAME) workspaces: - name: cache workspace: shared-workspace subPath: cache {{- end -}} {{- define "helm-docs" -}} - name: helm-docs taskRef: kind: Task name: helm-docs params: - name: CHART_DIR value: "deploy-templates" runAfter: - fetch-repository workspaces: - name: source workspace: shared-workspace subPath: source {{- end -}} {{- define "sonar-cleanup" -}} - name: sonar-cleanup taskRef: kind: Task name: sonar-cleanup runAfter: - init-values params: - name: patchsetNumber value: $(params.patchsetNumber) - name: changeNumber value: $(params.changeNumber) - name: CODEBASE_NAME value: $(params.CODEBASE_NAME) - name: BRANCH value: $(tasks.init-values.results.NORMALIZED_BRANCH) {{- end -}} {{- define "security" -}} - name: security taskRef: kind: Task name: security runAfter: - get-version params: - name: reportDataProductName value: $(tasks.init-values.results.TENANT_NAME) - name: reportDataEngagementName value: $(params.CODEBASEBRANCH_NAME) - name: PROJECT_NAME value: $(params.CODEBASE_NAME) - name: PROJECT_BRANCH value: $(params.git-source-revision) workspaces: - name: source workspace: shared-workspace subPath: source {{- end -}} {{- define "security-edp" -}} - name: security taskRef: kind: Task name: security runAfter: - update-build-number params: - name: reportDataProductName value: $(tasks.init-values.results.TENANT_NAME) - name: reportDataEngagementName value: $(params.CODEBASEBRANCH_NAME) - name: PROJECT_NAME value: $(params.CODEBASE_NAME) - name: PROJECT_BRANCH value: $(params.git-source-revision) workspaces: - name: source workspace: shared-workspace subPath: source {{- end -}} # The last section for Build Pipeline {{- define "build-pipeline-end" -}} - name: git-tag taskRef: kind: Task name: git-cli runAfter: - kaniko-build params: - name: GIT_USER_EMAIL value: edp-ci@edp.ci-user - name: GIT_USER_NAME value: edp-ci - name: GIT_SCRIPT value: | git tag -a "$(tasks.get-version.results.VCS_TAG)" -m "Tag is added automatically by CI user" git push --tags workspaces: - name: source workspace: shared-workspace subPath: source - name: ssh-directory workspace: ssh-creds - name: update-cbis taskRef: kind: Task name: update-cbis runAfter: - git-tag params: - name: CBIS_NAME value: $(tasks.init-values.results.RESULT_IMAGE_NAME) - name: IMAGE_TAG value: $(tasks.get-version.results.IS_TAG) {{- end -}} {{- define "build-pipeline-lib-end" -}} - name: git-tag taskRef: kind: Task name: git-cli runAfter: - push params: - name: GIT_USER_EMAIL value: edp-ci@edp.ci-user - name: GIT_USER_NAME value: edp-ci - name: GIT_SCRIPT value: | git tag -a "$(tasks.get-version.results.VCS_TAG)" -m "Tag is added automatically by CI user" git push --tags workspaces: - name: source workspace: shared-workspace subPath: source - name: ssh-directory workspace: ssh-creds {{- end -}} {{- define "build-pipeline-rpm-end" -}} - name: git-tag taskRef: kind: Task name: git-cli runAfter: - rpm-build params: - name: GIT_USER_EMAIL value: edp-ci@edp.ci-user - name: GIT_USER_NAME value: edp-ci - name: GIT_SCRIPT value: | git tag -a "$(tasks.get-version.results.VCS_TAG)" -m "Tag is added automatically by CI user" git push --tags workspaces: - name: source workspace: shared-workspace subPath: source - name: ssh-directory workspace: ssh-creds - name: update-cbis taskRef: kind: Task name: update-cbis runAfter: - git-tag params: - name: CBIS_NAME value: $(tasks.init-values.results.RESULT_IMAGE_NAME) - name: IMAGE_TAG value: "$(tasks.get-version.results.IS_TAG)" {{- end -}} # final section for gerrit codereview pipelines {{- define "gerrit-review-vote" -}} finally: - name: gerrit-vote-success when: - input: "$(tasks.status)" operator: in values: ["Succeeded"] taskRef: kind: Task name: gerrit-ssh-cmd params: - name: GERRIT_PORT value: '{{ .Values.global.gerritSSHPort }}' - name: SSH_GERRIT_COMMAND value: "review --verified +1 --message 'Build Successfull $(params.pipelineUrl)' $(params.changeNumber),$(params.patchsetNumber)" workspaces: - name: ssh-directory workspace: ssh-creds - name: gerrit-vote-failure when: - input: "$(tasks.status)" operator: in values: ["Failed"] taskRef: kind: Task name: gerrit-ssh-cmd params: - name: GERRIT_PORT value: '{{ .Values.global.gerritSSHPort }}' - name: SSH_GERRIT_COMMAND value: "review --verified -1 --message 'Build Failed $(params.pipelineUrl)' $(params.changeNumber),$(params.patchsetNumber)" workspaces: - name: ssh-directory workspace: ssh-creds {{- end -}} # final section for all build pipelines that use edp versioning {{- define "update-cbb" -}} finally: - name: update-cbb when: - input: "$(tasks.status)" operator: in values: ["Succeeded"] taskRef: kind: Task name: update-cbb params: - name: CODEBASEBRANCH_NAME value: $(params.CODEBASEBRANCH_NAME) - name: CURRENT_BUILD_NUMBER value: $(tasks.get-version.results.BUILD_ID) {{- end -}} {{- define "update-codebasebranch" -}} - name: update-cbb when: - input: "$(tasks.status)" operator: in values: ["Succeeded"] taskRef: kind: Task name: update-cbb params: - name: CODEBASEBRANCH_NAME value: $(params.CODEBASEBRANCH_NAME) - name: CURRENT_BUILD_NUMBER value: $(tasks.get-version.results.BUILD_ID) {{- end -}} {{- define "push-to-jira" -}} - name: push-to-jira taskRef: kind: Task name: push-to-jira when: - input: "$(tasks.status)" operator: in values: ["Succeeded"] - input: "$(params.JIRA_SERVER)" operator: notin values: [ "" ] params: - name: TICKET_NAME_PATTERN value: "$(params.TICKET_NAME_PATTERN)" - name: COMMIT_MESSAGE value: "$(params.COMMIT_MESSAGE)" - name: COMMIT_ID value: "$(tasks.fetch-repository.results.commit)" - name: JIRA_ISSUE_METADATA_PAYLOAD value: "$(params.JIRA_ISSUE_METADATA_PAYLOAD)" - name: CODEBASE_NAME value: "$(params.CODEBASE_NAME)" - name: VCS_TAG value: "$(tasks.get-version.results.VCS_TAG)" - name: VERSION value: "$(tasks.get-version.results.VERSION)" - name: GIT_URL value: $(params.git-source-url) {{- end -}} {{- define "send-to-microsoft-teams-build" -}} - name: send-to-microsoft-teams-failed when: - input: "$(tasks.status)" operator: in values: ["Failed", "PipelineRunTimeout"] taskRef: name: send-to-microsoft-teams params: - name: webhook-url-secret value: microsoft-teams-webhook-url-secret - name: webhook-url-secret-key value: url - name: message value: >- Build Failed project: $(params.CODEBASE_NAME)<br> branch: $(params.git-source-revision)<br> pipeline: <a href=$(params.pipelineUrl)>$(context.pipelineRun.name)</a><br> commit message: $(params.COMMIT_MESSAGE) {{- end -}} # final section for all build pipelines that use default versioning {{- define "finally-block-default" -}} finally: {{ include "push-to-jira" . | nindent 2 }} {{- end -}} # final section for all build pipelines that use edp versioning {{- define "finally-block-edp" -}} finally: {{ include "update-codebasebranch" . | nindent 2 }} {{ include "push-to-jira" . | nindent 2 }} {{- end -}} {{- define "build-result" -}} results: - description: VCS tag name: VCS_TAG type: string value: $(tasks.get-version.results.VCS_TAG) {{- end -}}