Skip to content

Commit

Permalink
add tekton results upstream e2e to acceptance test
Browse files Browse the repository at this point in the history
- Run tekton results upstream e2e test on sha update in pipeline service
- Refer  PLNSRVCE-1182

Signed-off-by: Avinal Kumar <[email protected]>
  • Loading branch information
avinal committed Apr 19, 2023
1 parent 05a881b commit c8c48c5
Show file tree
Hide file tree
Showing 4 changed files with 102 additions and 1 deletion.
15 changes: 14 additions & 1 deletion .tekton/pipeline-service-test.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,10 @@ metadata:
pipelinesascode.tekton.dev/task-4: "[.tekton/tasks/generate-cluster-name.yaml]"
pipelinesascode.tekton.dev/task-5: "[.tekton/tasks/pipeline-service-setup.yaml]"
pipelinesascode.tekton.dev/task-6: "[.tekton/tasks/pipeline-service-tests.yaml]"
pipelinesascode.tekton.dev/task-7: "[git-clone]"
pipelinesascode.tekton.dev/task-7: "[.tekton/tasks/tekton-results-fetch-sha.yaml]"
pipelinesascode.tekton.dev/task-8: "[.tekton/tasks/tekton-results-upstream-e2e.yaml]"
pipelinesascode.tekton.dev/task-9: "[git-clone]"
pipelinesascode.tekton.dev/task-10: "[git-cli]"
pipelinesascode.tekton.dev/max-keep-runs: "5"
spec:
pipelineRef:
Expand All @@ -26,6 +29,8 @@ spec:
value: "{{ revision }}"
- name: target_branch
value: "{{ target_branch }}"
- name: results_url
value: "https://github.com/openshift-pipelines/tektoncd-results"
timeouts:
pipeline: "1h0m0s"
workspaces:
Expand All @@ -48,3 +53,11 @@ spec:
resources:
requests:
storage: 50Mi
- name: tekton-results-source
volumeClaimTemplate:
spec:
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 3Gi
40 changes: 40 additions & 0 deletions .tekton/pipeline/acceptance-tests.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -8,10 +8,12 @@ spec:
- name: repo_url
- name: revision
- name: target_branch
- name: results_url
timeouts:
finally: "0h20m0s"
workspaces:
- name: source
- name: tekton-results-source
- name: kubeconfig-dir
- name: shared-workspace
tasks:
Expand Down Expand Up @@ -107,6 +109,44 @@ spec:
workspace: shared-workspace
- name: source
workspace: source
- name: tekton-results-fetch-sha
taskRef:
name: tekton-results-fetch-sha
runAfter:
- "clone-pipeline-service-git"
params:
- name: target_branch
value: $(params.target_branch)
workspaces:
- name: source
workspace: source
- name: clone-downstream-tekton-results
taskRef:
name: git-cli
runAfter:
- "tekton-results-fetch-sha"
params:
- name: GIT_SCRIPT
value: |
git fetch origin "$(params.results_url)"
git checkout "$(tasks.tekton-results-fetch-sha.results.tekton-results-downstream-sha)"
workspaces:
- name: output
workspace: tekton-results-source
- name: tekton-results-upstream-e2e
taskRef:
name: tekton-results-upstream-e2e
runAfter:
- "clone-downstream-tekton-results"
- "plnsvc-setup"
params:
- name: target_branch
value: $(params.target_branch)
workspaces:
- name: source
workspace: tekton-results-source
- name: kubeconfig-dir
workspace: kubeconfig-dir
finally:
- name: destroy-cluster
taskRef:
Expand Down
20 changes: 20 additions & 0 deletions .tekton/tasks/tekton-results-fetch-sha.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
---
apiVersion: tekton.dev/v1beta1
kind: Task
metadata:
name: tekton-results-fetch-sha
spec:
workspaces:
- name: source
params:
- name: target_branch
results:
- name: tekton-results-downstream-sha
description: Tekton Results updated SHA in Pipeline Service
steps:
- name: fetch-results-sha
workingDir: $(workspaces.source.path)
image: quay.io/openshift-pipeline/ci:latest
script: |
#! /usr/bin/env bash
yq '.images[0].newTag' $(workspaces.source.path)/operator/gitops/argocd/pipeline-service/tekton-results/base/kustomization.yaml | tee $(results.tekton-results-downstream-sha.path)
28 changes: 28 additions & 0 deletions .tekton/tasks/tekton-results-upstream-e2e.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
---
apiVersion: tekton.dev/v1beta1
kind: Task
metadata:
name: tekton-results-upstream-e2e
spec:
params:
- name: target_branch
workspaces:
- name: source
- name: kubeconfig-dir
steps:
- name: execute-tekton-results-upstream-e2e
image: quay.io/redhat-pipeline-service/ci-runner:$(params.target_branch)
workingDir: $(workspaces.source.path)
env:
- name: KUBECONFIG
value: "$(workspaces.kubeconfig-dir.path)/kubeconfig"
script: |
#! /usr/bin/env bash
export SA_TOKEN_PATH=${SA_TOKEN_PATH:-"/tmp/tekton-results/tokens"}
mkdir -p ${SA_TOKEN_PATH}
service_accounts=(all-namespaces-read-access single-namespace-read-access)
for service_account in "${service_accounts[@]}"; do
kubectl create token "$service_account" > "${SA_TOKEN_PATH}"/"$service_account"
done
export CGO_ENABLED=0
go test -v -count=1 --tags=e2e $(workspaces.source.path)/test/e2e/...

0 comments on commit c8c48c5

Please sign in to comment.