charts/pipelines-library/templates/pipelines/csharp/github-review.yaml (161 lines of code) (raw):

{{ if has "github" .Values.global.gitProviders }} {{ if or ( index .Values.pipelines.deployableResources.cs "dotnet3.1" ) ( index .Values.pipelines.deployableResources.cs "dotnet6.0" ) }} {{- $raw := include "edp-tekton.resourceMapping.cs" . | fromYaml -}} {{- range $framework, $image:= $raw }} apiVersion: tekton.dev/v1 kind: Pipeline metadata: name: github-dotnet-{{ $framework }}-app-review labels: app.edp.epam.com/pipelinetype: review {{- include "edp-tekton.labels" $ | nindent 4 }} spec: description: "The Review pipeline for building {{ $framework }} with Dotnet" workspaces: - name: shared-workspace - name: ssh-creds params: - name: pipelineUrl default: https://portal-{{ $.Release.Namespace }}.{{ $.Values.global.dnsWildCard }}/c/main/pipelines/$(context.pipelineRun.namespace)/$(context.pipelineRun.name) type: string - name: git-source-url default: "https://github.com/epmd-edp/csharp-dotnet-{{ $framework }}" description: git url to clone type: string - name: git-source-revision description: 'git revision to checkout (branch, tag, sha, ref…)' default: "edp" type: string - name: git-refspec description: Refspec to fetch before checking out revision. default: "" type: string - name: targetBranch description: Target branch of Merge Request - name: changeNumber description: Change number from Merge Request - name: CODEBASE_NAME default: 'csharp-dotnet-{{ $framework }}' description: "Project name" type: string - name: CODEBASEBRANCH_NAME description: "Codebasebranch name" type: string - name: image default: "{{ $image }}" description: "dotnet-sdk image version" type: string - name: gitfullrepositoryname description: "repository full name" type: string - name: gitsha description: "commit sha" type: string - name: CHART_DIR description: "Deploy templates directory for helm-lint" default: "deploy-templates" - name: CT_CONFIGS_DIR description: "ct-configs directory for helm-lint" default: "." tasks: {{- include "github-review-start" $ | nindent 4 }} {{- include "helm-docs" $ | nindent 4 }} {{- include "get-cache" $ | nindent 4 }} - name: build taskRef: kind: Task name: edp-dotnet runAfter: - get-cache params: - name: BASE_IMAGE value: $(params.image) workspaces: - name: source workspace: shared-workspace - name: sonar taskRef: kind: Task name: sonarqube-dotnet runAfter: - build params: - name: SONAR_PROJECT_KEY value: $(params.CODEBASE_NAME) - name: SONAR_PROJECT_NAME value: $(params.CODEBASE_NAME) - name: target-branch value: $(params.targetBranch) - name: source-branch value: $(params.git-source-revision) - name: key-id value: $(params.changeNumber) - name: BASE_IMAGE value: 'epamedp/tekton-dotnet:6.0.2' - name: EXTRA_COMMANDS value: | slnFilename=$(ls *.sln) dotnet sonarscanner begin \ /d:sonar.host.url=${SONAR_HOST_URL} \ /d:sonar.qualitygate.wait=true \ /d:sonar.login=${SONAR_TOKEN} \ /k:${SONAR_PROJECT_KEY} \ /n:${SONAR_PROJECT_NAME} \ /d:sonar.pullrequest.key=${KEY_ID} \ /d:sonar.pullrequest.branch=${SOURCE_BRANCH} \ /d:sonar.pullrequest.base=${TARGET_BRANCH} dotnet build ${sln_filename} dotnet sonarscanner end /d:sonar.login=${SONAR_TOKEN} workspaces: - name: source workspace: shared-workspace subPath: source - name: dotnet-publish taskRef: kind: Task name: dotnet runAfter: - sonar params: - name: BASE_IMAGE value: $(params.image) - name: EXTRA_COMMANDS value: | set -x dotnet publish --configuration Release --output app workspaces: - name: source workspace: shared-workspace subPath: source - name: dockerfile-lint taskRef: kind: Task name: hadolint runAfter: - fetch-repository workspaces: - name: source workspace: shared-workspace subPath: source {{ include "dockerbuild-verify-dotnet" $ | nindent 4 }} - name: helm-lint taskRef: kind: Task name: helm-lint runAfter: - fetch-repository params: - name: CHART_DIR value: $(params.CHART_DIR) - name: CT_CONFIGS_DIR value: $(params.CT_CONFIGS_DIR) workspaces: - name: source workspace: shared-workspace subPath: source {{- include "save-cache" $ | nindent 4 }} {{ include "github-review-vote" $ | nindent 2 }} --- {{ end }} {{ end }} {{ end }}