Skip to content

Commit 2c40637

Browse files
author
edge-katanomi-app2[bot]
committed
📚 Sync docs from alaudadevops/tektoncd-operator on aa1f835bdc8298d20b257e9d62f36c3cdcff0555
Source: test: [DEVOPS-43746] align e2e with latest task and pipeline defaults (#1659) Author: l-qing Ref: refs/heads/main Commit: aa1f835bdc8298d20b257e9d62f36c3cdcff0555 This commit automatically syncs documentation changes from the source-docs repository. 🔗 View source commit: https://github.com/alaudadevops/tektoncd-operator/commit/aa1f835bdc8298d20b257e9d62f36c3cdcff0555 🤖 Synced on 2026-04-13 04:06:41 UTC
1 parent bb63b10 commit 2c40637

6 files changed

Lines changed: 269 additions & 11 deletions

File tree

.github/SYNC_INFO.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
11
# Documentation Sync Information
22

3-
- **Last synced**: 2026-04-08 08:58:59 UTC
3+
- **Last synced**: 2026-04-13 04:06:41 UTC
44
- **Source repository**: alaudadevops/tektoncd-operator
5-
- **Source commit**: [5498473437f17622b6feb6275bc8a1e63aa4b22e](https://github.com/alaudadevops/tektoncd-operator/commit/5498473437f17622b6feb6275bc8a1e63aa4b22e)
5+
- **Source commit**: [aa1f835bdc8298d20b257e9d62f36c3cdcff0555](https://github.com/alaudadevops/tektoncd-operator/commit/aa1f835bdc8298d20b257e9d62f36c3cdcff0555)
66
- **Triggered by**: edge-katanomi-app2[bot]
7-
- **Workflow run**: [#190](https://github.com/alaudadevops/tektoncd-operator/actions/runs/24126997642)
7+
- **Workflow run**: [#191](https://github.com/alaudadevops/tektoncd-operator/actions/runs/24325163172)
88

99
## Files synced:
1010
- docs/

docs/en/development/e2e/index.mdx

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,11 +16,13 @@ End-to-end testing validates the complete functionality of the TektonCD Operator
1616
The E2E testing documentation is organized into the following sections:
1717

1818
- **[Writing Guidelines](./guidelines.md)** - Best practices and conventions for writing E2E tests
19+
- **[Run Local Integration Tests](./run_local_integration_tests.mdx)** - Default source-tree workflow using `cd testing && make test`
1920
- **[Running Tests](./run_e2e.mdx)** - Guide on how to run E2E tests locally
2021

2122
## Quick Links
2223

2324
- Learn how to write E2E tests by reading the [Writing Guidelines](./guidelines.md)
24-
- Get started running tests with the [E2E Testing Guide](./run_e2e.mdx)
25+
- Run tests directly from the repo with [Run Local Integration Tests](./run_local_integration_tests.mdx)
26+
- Use the container-image workflow with the [E2E Testing Guide](./run_e2e.mdx)
2527

2628
<Overview overviewHeaders={[]} />

docs/en/development/e2e/run_e2e.mdx

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,8 @@ weight: 40
77

88
This document will guide you through using TektonCD Operator's E2E test image to connect to a Kubernetes cluster and perform end-to-end testing in your local environment.
99

10+
If you are working directly in the source repository and want the default contributor workflow, use [Run Local Integration Tests](./run_local_integration_tests.mdx) instead.
11+
1012
## Prerequisites
1113

1214
Before starting, please ensure your environment meets the following requirements:
Lines changed: 241 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,241 @@
1+
---
2+
title: Run Local Integration Tests
3+
weight: 30
4+
---
5+
6+
# Run Local Integration Tests
7+
8+
This guide covers the default local development workflow for running the TektonCD Operator integration test suite directly from the source tree.
9+
10+
Use this document when you want to run tests from the local repository with:
11+
12+
```bash
13+
cd testing
14+
make test
15+
```
16+
17+
Use [Run TektonCD Operator E2E Tests](./run_e2e.mdx) only when you specifically want the container-image-based workflow.
18+
19+
## Scope
20+
21+
This workflow is for contributors working in the `tektoncd-operator` repository itself. It matches the behavior implemented in [testing/Makefile] and [testing/main_test.go].
22+
23+
Key differences from the catalog playbook:
24+
25+
- You still need a valid `KUBECONFIG`
26+
- You do not need to run a separate `prepare` helper before regular local verification
27+
- You need a local test config file before execution
28+
- You should use `TAGS` to narrow the test scope
29+
- The standard entrypoint is `cd testing && make test`
30+
31+
## Prerequisites
32+
33+
- Access to a Kubernetes cluster that already has the required external dependencies available for the scenarios you plan to run
34+
- A valid kubeconfig with enough permissions for the tested scenarios
35+
- Go toolchain available locally
36+
- Optional: `allure` for reading the generated test report
37+
38+
## Step 1: Export Kubeconfig
39+
40+
Before every local run, export the kubeconfig you want the suite to use:
41+
42+
```bash
43+
export KUBECONFIG=/path/to/your/kubeconfig.yaml
44+
```
45+
46+
Verify the context before running tests:
47+
48+
```bash
49+
kubectl config current-context
50+
kubectl get nodes
51+
```
52+
53+
## Step 2: Prepare Local Test Config
54+
55+
The test suite reads external toolchain and registry settings from a config file.
56+
57+
The default location is:
58+
59+
```text
60+
testing/config.yaml
61+
```
62+
63+
You can either:
64+
65+
- Place your local config at `testing/config.yaml`
66+
- Or keep it elsewhere and export `TESTING_CONFIG=/path/to/config.yaml`
67+
68+
Example:
69+
70+
```bash
71+
export TESTING_CONFIG=/path/to/local-testing-config.yaml
72+
```
73+
74+
The Makefile defaults to `./config.yaml` only when `TESTING_CONFIG` is not set.
75+
76+
Important rules:
77+
78+
- Do not commit credentials, tokens, kubeconfig files, or private toolchain settings
79+
- Treat feature files as the source of truth for which config keys are actually required
80+
- Different tags may require different sections under `registry` and `toolchains`
81+
82+
## Step 3: Choose the Test Scope with TAGS
83+
84+
The suite supports running the whole default bucket or a smaller subset.
85+
86+
Common patterns:
87+
88+
- One scenario tag
89+
- One feature-level tag
90+
- A comma-separated OR list of several scenario tags
91+
92+
Examples:
93+
94+
```bash
95+
export TAGS='@tektoncd-pipeline-gitops-repo-update-005'
96+
```
97+
98+
```bash
99+
export TAGS='@tektoncd-pipeline-gitops-repo-update'
100+
```
101+
102+
```bash
103+
export TAGS='@tektoncd-pipeline-gitops-repo-update-004,@tektoncd-pipeline-gitops-repo-update-005'
104+
```
105+
106+
Notes:
107+
108+
- `make test` applies your `TAGS` on top of the common exclusions defined in the Makefile
109+
- By default, regular runs exclude `@automatable`, `@manual`, `@ui`, `@upgrade`, and `@prepare`
110+
- `make test` automatically handles both parallel and serial scenarios
111+
112+
## Step 4: Run Tests
113+
114+
The default local command is:
115+
116+
```bash
117+
cd testing
118+
make test
119+
```
120+
121+
Recommended single-case workflow:
122+
123+
```bash
124+
export KUBECONFIG=/path/to/your/kubeconfig.yaml
125+
export TAGS='@tektoncd-pipeline-gitops-repo-update-005'
126+
cd testing
127+
make test
128+
```
129+
130+
If your config file is not stored at the default location:
131+
132+
```bash
133+
export KUBECONFIG=/path/to/your/kubeconfig.yaml
134+
export TESTING_CONFIG=/path/to/local-testing-config.yaml
135+
export TAGS='@tektoncd-pipeline-gitops-repo-update-005'
136+
cd testing
137+
make test
138+
```
139+
140+
For lower-noise debugging, you can temporarily force single-thread execution:
141+
142+
```bash
143+
export GODOG_ARGS='--godog.concurrency=1 --godog.format=allure'
144+
cd testing
145+
make test
146+
```
147+
148+
If you need more attachments in the local Allure report:
149+
150+
```bash
151+
export BDD_COLLECT_ARGS=
152+
cd testing
153+
make test
154+
```
155+
156+
## No Prepare Step for Regular Local Runs
157+
158+
Do not copy the catalog repository workflow directly here.
159+
160+
For normal local verification in this repository:
161+
162+
- Do not run `common-integration-prepare.sh`
163+
- Do not run `make prepare-resources` unless you are explicitly validating resources labeled for prepare behavior
164+
- Start from kubeconfig, local config, tag selection, and `cd testing && make test`
165+
166+
## Useful Commands
167+
168+
Run only the parallel bucket:
169+
170+
```bash
171+
cd testing
172+
make test-parallel
173+
```
174+
175+
Run only the serial bucket:
176+
177+
```bash
178+
cd testing
179+
make test-serial
180+
```
181+
182+
Show the generated Allure report:
183+
184+
```bash
185+
cd testing
186+
make report
187+
```
188+
189+
## How to Pick the Right Tag
190+
191+
Start from the feature file that covers your change and locate:
192+
193+
- The feature-level tag near the top of the file
194+
- The scenario tag above the exact case you want to run
195+
196+
Example feature file:
197+
198+
[pipeline.gitops-repo-update.feature]
199+
200+
Typical workflow:
201+
202+
1. Find the affected feature file in `testing/features`
203+
2. Run one scenario tag first
204+
3. Run the feature-level tag after the scenario passes
205+
4. Expand to the broader bucket only after the focused rerun is stable
206+
207+
## Troubleshooting
208+
209+
### Config placeholders render as `<no value>`
210+
211+
- Your config file is missing one or more required keys
212+
- Check the exact placeholder path used by the feature file or referenced testdata
213+
214+
### A step like `执行 "...脚本成功"` fails early
215+
216+
- Treat it as environment or external dependency failure first
217+
- Verify the matching toolchain settings in your local config
218+
219+
### `No scenarios` appears in the output
220+
221+
- Your `TAGS` expression does not match any scenario
222+
- Start with one exact scenario tag instead of a complex expression
223+
224+
### The wrong config file is being used
225+
226+
- Verify `TESTING_CONFIG`
227+
- If unset, the suite uses `testing/config.yaml`
228+
229+
### Tests are too noisy while debugging
230+
231+
- Set `GODOG_ARGS='--godog.concurrency=1 --godog.format=allure'`
232+
- Narrow `TAGS` to one scenario
233+
234+
## Recommended Team Workflow
235+
236+
1. Export the target `KUBECONFIG`
237+
2. Prepare a local test config file
238+
3. Select one precise `TAGS` value
239+
4. Run `cd testing && make test`
240+
5. Inspect the first failing step before changing code
241+
6. Widen the scope only after the focused case passes

docs/en/pipelines/how_to/configure_dynamic_forms.mdx

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -56,21 +56,21 @@ metadata:
5656
name: simple-task
5757
annotations:
5858
style.tekton.dev/descriptors: |
59-
- path: params.gitUrl
59+
- path: params.gitURL
6060
x-descriptors:
6161
- urn:alm:descriptor:label:zh:GitRepo
6262
- urn:alm:descriptor:com.tectonic.ui:text
6363
- urn:alm:descriptor:placeholder:zh:Git URL
6464
- urn:alm:descriptor:com.tectonic.ui:validation:required
6565
spec:
6666
params:
67-
- name: gitUrl
67+
- name: gitURL
6868
type: string
6969
steps:
7070
- name: clone
7171
image: alpine/git
7272
script: |
73-
git clone $(params.gitUrl)
73+
git clone $(params.gitURL)
7474
```
7575

7676
## Form Basic Configuration

docs/en/pipelines/how_to/tool-images.mdx

Lines changed: 17 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,7 @@ This page helps you quickly choose the right tool image for your pipeline steps.
2626
| | Java build, test, and package | [`maven`](#maven) | Maven + JDK 21 |
2727
| | .NET build, test, and publish | [`dotnet`](#dotnet) | .NET SDK LTS image for application compilation |
2828
| | Python scripts and tests | [`python`](#python) | Python + pip |
29+
| | Node.js build and test | [`nodejs`](#nodejs) | Node.js LTS runtime |
2930
| **Image & Artifact** | OCI image build and push | [`buildah`](#buildah) | Rootless build, no Docker daemon required |
3031
| | Multi-arch manifest merge (`merge-image` Task), copy, retag, and registry sync | [`crane`](#crane) | Uses `crane index append` to compose and publish manifest lists without a build stage |
3132
| | Helm chart package and publish | [`helm`](#helm) | Includes oras, kubectl, yq |
@@ -69,6 +70,8 @@ This page helps you quickly choose the right tool image for your pipeline steps.
6970
| sonar-scanner | [`sonarqube-scanner`](#sonarqube-scanner) |
7071
| sonar (CLI) | [`sonarqube-cli`](#sonarqube-cli) |
7172
| msmtp | [`msmtp`](#msmtp) |
73+
| Node.js | [`nodejs`](#nodejs) |
74+
| npm | [`nodejs`](#nodejs) |
7275
| Go | [`golang`](#golang) |
7376
| JDK | [`maven`](#maven) [`sonarqube-scanner`](#sonarqube-scanner) |
7477
| Maven | [`maven`](#maven) |
@@ -176,6 +179,17 @@ This page helps you quickly choose the right tool image for your pipeline steps.
176179
| Best For | .NET restore/build/test/publish workflows |
177180
| Not Recommended | OCI image build/push workflows (use `buildah`) |
178181

182+
#### nodejs \{#nodejs}
183+
184+
| Field | Content |
185+
| --- | --- |
186+
| Registry | `registry.alauda.cn:60070/devops/tektoncd/hub/nodejs` |
187+
| Tag | `latest`<br/>`v24`<br/>`v24.14` |
188+
| Main Tools | Node.js 24 |
189+
| Bundled Tools | npm |
190+
| Best For | Node.js project build, test, and packaging workflows |
191+
| Not Recommended | Go/Java/Python build workflows |
192+
179193
### Image & Artifact
180194

181195
#### buildah \{#buildah}
@@ -184,7 +198,7 @@ This page helps you quickly choose the right tool image for your pipeline steps.
184198
| --- | --- |
185199
| Registry | `registry.alauda.cn:60070/devops/tektoncd/hub/buildah` |
186200
| Tag | `latest`<br/>`v1.33` |
187-
| Main Tools | buildah 1.42 (image tag v1.33 is the image version; tool version is 1.42) |
201+
| Main Tools | buildah 1.43 (image tag v1.33 is the image version; tool version is 1.43) |
188202
| Bundled Tools | rootless build support |
189203
| Best For | OCI image build and push |
190204
| Not Recommended | Vulnerability scanning, signing, or SBOM generation only |
@@ -229,8 +243,8 @@ This page helps you quickly choose the right tool image for your pipeline steps.
229243
| Field | Content |
230244
| --- | --- |
231245
| Registry | `registry.alauda.cn:60070/devops/tektoncd/hub/syft` |
232-
| Tag | `latest`<br/>`v1.23` |
233-
| Main Tools | syft 1.28 (image tag v1.23 is the image version; tool version is 1.28) |
246+
| Tag | `latest`<br/>`v1.42` |
247+
| Main Tools | syft 1.42 (image tag v1.42 matches the syft binary version) |
234248
| Bundled Tools | cosign 2.6 |
235249
| Best For | SBOM generation, supply chain material output |
236250
| Not Recommended | Signing only (use `cosign`) or vulnerability scanning only (use `trivy`) |
@@ -321,4 +335,3 @@ This page helps you quickly choose the right tool image for your pipeline steps.
321335
> - All images run as UID 65532 (non-root user).
322336
> - `latest` usually points to the newest fixed tag but may introduce major version changes. Use fixed tags if stability is a priority.
323337
> - Tool versions are at the `major.minor` level; patch versions are upgraded automatically with image updates.
324-

0 commit comments

Comments
 (0)