Skip to content

chore(cli-tools): bump apiVersion v1beta1 → v1 for 11 CLI/utility tasks - #1395

Open
gferreir wants to merge 1 commit into
tektoncd:mainfrom
gferreir:chore/cli-api-v1-bump
Open

gferreir wants to merge 1 commit into
tektoncd:mainfrom
gferreir:chore/cli-api-v1-bump

Conversation

@gferreir

Copy link
Copy Markdown
Contributor

Changes

API version bump for 11 CLI and general-purpose utility tasks, continuing the
v1beta1 → v1 migration tracked in #1381.

Tasks updated

Task Old → New Changes
ansible-tower-cli 0.1 → 0.2 apiVersion v1, minVersion 0.50.0
aws-cli 0.2 → 0.3 apiVersion v1, minVersion 0.50.0, samples bumped
az 0.1 → 0.2 apiVersion v1, minVersion 0.50.0
curl 0.1 → 0.2 apiVersion v1, minVersion 0.50.0, tests bumped
gogit 0.1 → 0.2 apiVersion v1, minVersion 0.50.0
kn 0.2 → 0.3 apiVersion v1, minVersion 0.50.0, knative-dockerfile-deploy sub-pipelines + RBAC bumped
powershell 0.1 → 0.2 apiVersion v1, minVersion 0.50.0, tests (Pipeline + PipelineRun + TaskRun) bumped
rsync 0.1 → 0.2 apiVersion v1, minVersion 0.50.0, samples bumped
skopeo-copy 0.4 → 0.5 apiVersion v1, minVersion 0.50.0, tests/samples bumped, mutable image pinned to digest
terraform-cli 0.2 → 0.3 apiVersion v1, minVersion 0.50.0
wget 0.1 → 0.2 apiVersion v1, minVersion 0.50.0, tests bumped

Each task follows copy-then-modify per CONTRIBUTING.md: one commit copies the
previous version directory, a second commit applies the bump. None of these tasks
use PipelineResources or other v1beta1-only constructs.

Image pinning

skopeo-copy was the only task in this batch with a mutable hardcoded image
(quay.io/skopeo/stable:v1). Pinned to its current digest:
quay.io/skopeo/stable:v1@sha256:2b7d76dde38c5924e1945348840c58786fc192201f2fd545832e58b53d26f7b8

Three tasks already carried pinned images (ansible-tower-cli, aws-cli, rsync).
The rest use parameterized images (az, curl, gogit, kn, powershell,
terraform-cli, wget), so pinning is left to the user at runtime.

Additional fixes

  • kn ships a knative-dockerfile-deploy subdirectory with its own Pipelines,
    PipelineRuns, and RBAC manifests. All tekton.dev/v1beta1 and
    rbac.authorization.k8s.io/v1beta1 references in that subtree were bumped to v1.
  • powershell tests include a Pipeline, a PipelineRun, and a TaskRun. The
    PipelineRun carries no serviceAccountName, so no taskRunTemplate migration
    was needed.
  • skopeo-copy test hook (pre-apply-task-hook.sh) keeps its executable permissions.

Conflict note

PR #1127 touches skopeo-copy but has been inactive since Aug 2023. This PR creates
a new version (0.5) and does not conflict with those older changes to 0.3.

Validation

  • Zero remaining v1beta1 references across all 11 new version directories
  • yamllint clean (pre-existing upstream indentation warnings only, identical to original versions)
  • All 22 commits carry correct Signed-off-by
  • 4 tasks with existing tests (curl, powershell, skopeo-copy, wget) have their test manifests bumped

Note on pre-existing conditions

Several tasks interpolate $(params.*) directly in script: blocks or args: fields
(az, curl, gogit, kn, terraform-cli, wget). Those patterns are inherited
from the previous versions and not introduced by this PR. Script injection hardening
will be addressed in follow-up PRs as part of #1381.

Ref: #1381

/kind cleanup

Submitter Checklist

These are the criteria that every PR should meet, please check them off as you
review them:

  • Follows the [authoring recommendations][authoring]
  • Includes [docs][docs] (if user facing)
  • Includes [tests][tests] (for new tasks or changed functionality)
    • See the [end-to-end testing documentation][e2e] for guidance and CI details.
  • Meets the [Tekton contributor standards][contributor] (including functionality, content, code)
  • Commit messages follow [commit message best practices][commit]
  • Has a kind label. You can add one by adding a comment on this PR that
    contains /kind <type>. Valid types are bug, cleanup, design, documentation,
    feature, flake, misc, question, tep
  • Complies with [Catalog Organization TEP][TEP], see [example]. Note [An issue has been filed to automate this validation][validation]
    • File path follows <kind>/<name>/<version>/name.yaml

    • Has README.md at <kind>/<name>/<version>/README.md

    • Has mandatory metadata.labels - app.kubernetes.io/version the same as the <version> of the resource

    • Has mandatory metadata.annotations tekton.dev/pipelines.minVersion

    • mandatory spec.description follows the convention

        ```
        spec:
          description: >-
            one line summary of the resource
      
            Paragraph(s) to describe the resource.
        ```
      

See the contribution guide for more details.

TEP
example

@tekton-robot tekton-robot added the kind/cleanup Categorizes issue or PR as related to cleaning up code, process, or technical debt. label Sep 18, 2026
@tekton-robot tekton-robot added the size/XXL Denotes a PR that changes 1000+ lines, ignoring generated files. label Sep 18, 2026
@tekton-robot

Copy link
Copy Markdown
Diff between version 0.1 and 0.2
diff --git a/task/wget/0.1/README.md b/task/wget/0.2/README.md
index 9f25dd7..7013188 100644
--- a/task/wget/0.1/README.md
+++ b/task/wget/0.2/README.md
@@ -6,7 +6,7 @@ This task uses wget to download files from the internet to a workspace  .
 ## Install the Task
 
 ```
-kubectl apply -f https://raw.githubusercontent.com/tektoncd/catalog/main/task/wget/0.1/wget.yaml
+kubectl apply -f https://raw.githubusercontent.com/tektoncd/catalog/main/task/wget/0.2/wget.yaml
 ```
 
 ## Parameters
@@ -32,7 +32,7 @@ You can invoke `wget url -P workspace` to check if file is downloaded to workspa
 Create a file, `wget-run.yaml`:
 
 ```
-apiVersion: tekton.dev/v1beta1
+apiVersion: tekton.dev/v1
 kind: TaskRun
 metadata:
   name: wget-run
diff --git a/task/wget/0.1/tests/run.yaml b/task/wget/0.2/tests/run.yaml
index 5f38633..b451605 100644
--- a/task/wget/0.1/tests/run.yaml
+++ b/task/wget/0.2/tests/run.yaml
@@ -1,4 +1,4 @@
-apiVersion: tekton.dev/v1beta1
+apiVersion: tekton.dev/v1
 kind: TaskRun
 metadata:
   name: wget-run
diff --git a/task/wget/0.1/wget.yaml b/task/wget/0.2/wget.yaml
index 34dfaaa..a20872d 100644
--- a/task/wget/0.1/wget.yaml
+++ b/task/wget/0.2/wget.yaml
@@ -1,11 +1,11 @@
-apiVersion: tekton.dev/v1beta1
+apiVersion: tekton.dev/v1
 kind: Task
 metadata:
   name: wget
   labels:
-    app.kubernetes.io/version: "0.1"
+    app.kubernetes.io/version: "0.2"
   annotations:
-    tekton.dev/pipelines.minVersion: "0.12.1"
+    tekton.dev/pipelines.minVersion: "0.50.0"
     tekton.dev/categories: CLI
     tekton.dev/tags: download
     tekton.dev/platforms: "linux/amd64,linux/s390x,linux/ppc64le"

@gferreir

Copy link
Copy Markdown
Contributor Author

/assign @vinamra28

@chmouel

chmouel commented Sep 21, 2026

Copy link
Copy Markdown
Member

can you stash the related commits please?

Bumps apiVersion from tekton.dev/v1beta1 to tekton.dev/v1 for:
ansible-tower-cli (0.1 → 0.2), aws-cli (0.2 → 0.3), az (0.1 → 0.2),
curl (0.1 → 0.2), gogit (0.1 → 0.2), kn (0.2 → 0.3),
powershell (0.1 → 0.2), rsync (0.1 → 0.2), skopeo-copy (0.4 → 0.5),
terraform-cli (0.2 → 0.3), wget (0.1 → 0.2).

Each new version was created using copy-then-modify per CONTRIBUTING.md.
skopeo-copy mutable image pinned to sha256 digest.
kn knative-dockerfile-deploy sub-pipelines and RBAC bumped to v1.

Ref: tektoncd#1381

Signed-off-by: gferreir <guilherme.nmf@gmail.com>
@gferreir
gferreir force-pushed the chore/cli-api-v1-bump branch from 12708b5 to 56c03c2 Compare September 21, 2026 15:05
@gferreir

Copy link
Copy Markdown
Contributor Author

Done — squashed all 22 commits into a single one. Same tree, just cleaner history.

@vdemeester vdemeester left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

/lgtm

@tekton-robot tekton-robot added the lgtm Indicates that a PR is ready to be merged. label Sep 25, 2026
@tekton-robot

Copy link
Copy Markdown

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: vdemeester

The full list of commands accepted by this bot can be found here.

The pull request process is described here

Details Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@tekton-robot tekton-robot added the approved Indicates a PR has been approved by an approver from all required OWNERS files. label Sep 25, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

approved Indicates a PR has been approved by an approver from all required OWNERS files. kind/cleanup Categorizes issue or PR as related to cleaning up code, process, or technical debt. lgtm Indicates that a PR is ready to be merged. size/XXL Denotes a PR that changes 1000+ lines, ignoring generated files.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants