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 c145a6a commit ab86347
Show file tree
Hide file tree
Showing 4 changed files with 95 additions and 1 deletion.
14 changes: 13 additions & 1 deletion .tekton/pipeline-service-test.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,9 @@ 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/max-keep-runs: "5"
spec:
pipelineRef:
Expand All @@ -26,6 +28,8 @@ spec:
value: "{{ revision }}"
- name: target_branch
value: "{{ target_branch }}"
- name: results_url
value: "github.com/openshift-pipelines/tektoncd-results.git"
timeouts:
pipeline: "1h0m0s"
workspaces:
Expand All @@ -48,3 +52,11 @@ spec:
resources:
requests:
storage: 50Mi
- name: tekton-results-source
volumeClaimTemplate:
spec:
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 3Gi
38 changes: 38 additions & 0 deletions .tekton/pipeline/acceptance-tests.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,7 @@ spec:
finally: "0h20m0s"
workspaces:
- name: source
- name: tekton-results-source
- name: kubeconfig-dir
- name: shared-workspace
tasks:
Expand Down Expand Up @@ -107,6 +108,43 @@ spec:
workspace: shared-workspace
- name: source
workspace: source
- name: fetch-tekton-results-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: checkout-results-sha
taskRef:
name: git-clone
runAfter:
- "fetch-tekton-results-sha"
params:
- name: url
value: $(params.results_url)
- name: revision
value: $(tasks.tekton-results-fetch-sha.results.tekton-results-downstream-sha)
workspaces:
- name: output
workspace: tekton-results-source
- name: tekton-results-e2e-tests
taskRef:
name: tekton-results-upstream-e2e
runAfter:
- "checkout-results-sha"
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:
# access the source workspace and get sha
- name: fetch-results-sha
workingDir: $(workspaces.source.path)
image: quay.io/redhat-pipeline-service/ci-runner:$(params.target_branch)
command:
- yq '.images[0].newTag' $(workspaces.source.path)/operator/gitops/argocd/pipeline-service/tekton-results/base/kustomization.yaml | tee $(results.tekton-results-downstream-sha)
24 changes: 24 additions & 0 deletions .tekton/tasks/tekton-results-upstream-e2e.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
---
apiVersion: tekton.dev/v1beta1
kind: Task
metadata:
name: tekton-results-upstream-e2e
spec:
params:
- name: target_branch
workspaces:
- name: tekton-results-source
- name: kubeconfig-dir
steps:
- name: execute-tekton-results-upstream-e2e
image: quay.io/redhat-pipeline-service/ci-runner:$(params.target_branch)
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.tekton-results-source.path)/test/e2e/...

0 comments on commit ab86347

Please sign in to comment.