Skip to content

Commit de80ac4

Browse files
committed
chore: add pac pipeline
1 parent e394055 commit de80ac4

File tree

3 files changed

+164
-41
lines changed

3 files changed

+164
-41
lines changed

.builds/doc-pr-build.yaml

Lines changed: 0 additions & 41 deletions
This file was deleted.

.tekton/doc-pr-build.yaml

Lines changed: 92 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,92 @@
1+
apiVersion: tekton.dev/v1
2+
kind: PipelineRun
3+
metadata:
4+
name: doc-pr-build
5+
annotations:
6+
pipelinesascode.tekton.dev/on-comment: "^(/doc-pr)$"
7+
# pipelinesascode.tekton.dev/cancel-in-progress: "true"
8+
pipelinesascode.tekton.dev/max-keep-runs: "20"
9+
pipelinesascode.tekton.dev/on-cel-expression: |-
10+
(
11+
event == "pull_request" && (
12+
target_branch.matches("^(main|master|release-.*)$")
13+
)
14+
)
15+
spec:
16+
timeouts:
17+
pipeline: 1h
18+
tasks: 1h
19+
20+
params:
21+
- name: doc-base
22+
value: container_platform
23+
# 下面这些变量都是 pac 触发时自动注入的
24+
- name: git-url
25+
value: "{{ repo_url }}"
26+
- name: git-revision
27+
value: "{{ source_branch }}"
28+
- name: git-commit
29+
value: "{{ revision }}"
30+
- name: pull-request-number
31+
value: "{{ pull_request_number }}"
32+
- name: pull-request-target
33+
value: "{{ target_branch }}"
34+
35+
pipelineRef:
36+
resolver: cluster
37+
params:
38+
- name: kind
39+
value: pipeline
40+
- name: name
41+
value: product-docs-pr-pipeline
42+
- name: namespace
43+
value: idp-dev
44+
45+
workspaces:
46+
- name: source
47+
volumeClaimTemplate:
48+
spec:
49+
storageClassName: topolvm
50+
accessModes:
51+
- ReadWriteOnce
52+
resources:
53+
requests:
54+
storage: 25Gi
55+
- name: cache
56+
persistentVolumeClaim:
57+
claimName: build-cache
58+
subPath: yarn_cache
59+
60+
# This secret will be replaced by the pac controller
61+
- name: basic-auth
62+
secret:
63+
secretName: "{{ git_auth_secret }}"
64+
65+
taskRunTemplate:
66+
# Default: run tasks as root (UID 0) since most build tasks require root privileges.
67+
# Individual tasks can override this as needed (see taskRunSpecs below).
68+
podTemplate:
69+
securityContext:
70+
runAsUser: 0
71+
runAsGroup: 0
72+
fsGroup: 0
73+
fsGroupChangePolicy: "OnRootMismatch"
74+
75+
taskRunSpecs:
76+
- pipelineTaskName: git-clone
77+
# Override: run git-clone as non-root user for security.
78+
podTemplate:
79+
securityContext:
80+
runAsUser: 65532
81+
runAsGroup: 65532
82+
fsGroup: 65532
83+
fsGroupChangePolicy: "OnRootMismatch"
84+
85+
- pipelineTaskName: build-docs
86+
computeResources:
87+
requests:
88+
cpu: 2
89+
memory: 6Gi
90+
limits:
91+
cpu: 4
92+
memory: 12Gi

.tekton/pr-manage.yaml

Lines changed: 72 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,72 @@
1+
apiVersion: tekton.dev/v1
2+
kind: PipelineRun
3+
metadata:
4+
name: pr-manage
5+
annotations:
6+
pipelinesascode.tekton.dev/pipeline: "https://raw.githubusercontent.com/AlaudaDevops/toolbox/main/pr-cli/pipeline/pr-manage.yaml"
7+
pipelinesascode.tekton.dev/on-comment: "^/(help|rebase|lgtm|remove-lgtm|cherry-?pick|assign|merge|ready|unassign|label|unlabel|check|retest|close|batch|checkbox|checkbox-issue)($|\\s.*)"
8+
pipelinesascode.tekton.dev/max-keep-runs: "5"
9+
spec:
10+
pipelineRef:
11+
name: pr-manage
12+
params:
13+
- name: trigger_comment
14+
value: "{{ trigger_comment }}"
15+
- name: repo_owner
16+
value: "{{ repo_owner }}"
17+
- name: repo_name
18+
value: "{{ repo_name }}"
19+
- name: pull_request_number
20+
value: "{{ pull_request_number }}"
21+
- name: comment_sender
22+
value: "{{ sender }}"
23+
- name: git_auth_secret
24+
value: "{{ git_auth_secret }}"
25+
#
26+
# Optional parameters (value is the default):
27+
#
28+
# The key in git_auth_secret that contains the token (default: git-provider-token)
29+
# - name: git_auth_secret_key
30+
# value: "git-provider-token"
31+
#
32+
# Container image for pr-cli tool (default: registry.alauda.cn:60070/devops/toolbox/pr-cli:latest)
33+
# - name: image
34+
# value: "registry.alauda.cn:60070/devops/toolbox/pr-cli:latest"
35+
#
36+
# The /lgtm threshold needed of approvers for a PR to be approved (default: 1)
37+
# - name: lgtm_threshold
38+
# value: "1"
39+
#
40+
# The permissions the user need to trigger a lgtm (default: admin,write)
41+
# - name: lgtm_permissions
42+
# value: "admin,write"
43+
#
44+
# The review event when lgtm is triggered, can be APPROVE,
45+
# REQUEST_CHANGES, or COMMENT if setting to empty string it will be set as
46+
# PENDING (default: APPROVE)
47+
# - name: lgtm_review_event
48+
# value: "APPROVE"
49+
#
50+
# The merge method to use. Can be one of: merge, squash, rebase (default: squash)
51+
# - name: merge_method
52+
# value: "squash"
53+
#
54+
# The name used for self-check status (default: pr-manage)
55+
# - name: self_check_name
56+
# value: "pr-manage"
57+
#
58+
# Enable debug mode (skip validation, allow PR creator self-approval) (default: false)
59+
# - name: debug
60+
# value: "false"
61+
#
62+
# Enable verbose logging (debug level logs) (default: false)
63+
# - name: verbose
64+
# value: "false"
65+
#
66+
# The platform to use, can be one of: github, gitlab, gitee (default: github)
67+
# - name: platform
68+
# value: "github"
69+
#
70+
# The robot accounts for managing bot approval reviews.
71+
# - name: robot_accounts
72+
# value: "alaudabot,dependabot,renovate"

0 commit comments

Comments
 (0)