Skip to content

chore(deployment): bump apiVersion from v1beta1 to v1 - #1392

Open
gferreir wants to merge 19 commits into
tektoncd:mainfrom
gferreir:chore/deployment-api-v1-bump
Open

gferreir wants to merge 19 commits into
tektoncd:mainfrom
gferreir:chore/deployment-api-v1-bump

Conversation

@gferreir

Copy link
Copy Markdown
Contributor

Changes

Mechanical API version bump for the argocd + deployment/CD task family, as part of the
v1beta1 → v1 migration tracked in #1381.

Tasks updated

Task Old → New Changes
argocd-task-connect-repo 0.1 → 0.2 apiVersion v1, minVersion 0.50.0, removed hardcoded namespace: argocd
argocd-task-sync-and-wait 0.2 → 0.3 apiVersion v1, minVersion 0.50.0
blue-green-deploy 0.2 → 0.3 apiVersion v1, minVersion 0.50.0, tests/samples bumped
gke-deploy 0.1 → 0.2 apiVersion v1, minVersion 0.50.0
helm-upgrade-from-repo 0.3 → 0.4 apiVersion v1, minVersion 0.50.0, tests/samples bumped
helm-upgrade-from-source 0.4 → 0.5 apiVersion v1, minVersion 0.50.0, tests/samples bumped
istio-canary-release 0.1 → 0.2 apiVersion v1, minVersion 0.50.0, pinned origin-cli:4.6 to digest, samples bumped
kamel-run 0.1 → 0.2 apiVersion v1, minVersion 0.50.0, tests/samples bumped
kn-apply 0.2 → 0.3 apiVersion v1, minVersion 0.50.0

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

argocd-task-connect-repo had metadata.namespace: argocd hardcoded. Catalog
tasks should not pin a namespace, so that field was dropped in 0.2.

istio-canary-release referenced quay.io/openshift/origin-cli:4.6 without a
digest. 0.2 pins it to @sha256:6722d5041b472ac61a294647f7fa02fb432a948835bb780cc73cd221a9291a2c.

Note: #1318 is still open and also creates helm-upgrade-from-repo/0.4 (without
an API bump). This PR starts from current 0.3. If #1318 merges first, this
will need a version rebase to 0.5.

Validation

  • yamllint passes for all modified files
  • No remaining tekton.dev/v1beta1 references in any of the new version directories

Note on pre-existing conditions

Several of these tasks interpolate $(params.*) directly in script: blocks,
and some keep mutable image defaults via params (e.g. kn-apply :latest).
Those 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
  • Includes docs (if user facing)
  • Includes tests (for new tasks or changed functionality)
  • Meets the Tekton contributor standards (including functionality, content, code)
  • Commit messages follow commit message best practices
  • 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, see example. Note An issue has been filed to automate this 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.

Signed-off-by: gferreir <guilherme.nmf@gmail.com>
Ref: tektoncd#1381

Signed-off-by: gferreir <guilherme.nmf@gmail.com>
Signed-off-by: gferreir <guilherme.nmf@gmail.com>
Ref: tektoncd#1381

Signed-off-by: gferreir <guilherme.nmf@gmail.com>
Signed-off-by: gferreir <guilherme.nmf@gmail.com>
Ref: tektoncd#1381

Signed-off-by: gferreir <guilherme.nmf@gmail.com>
Signed-off-by: gferreir <guilherme.nmf@gmail.com>
Ref: tektoncd#1381

Signed-off-by: gferreir <guilherme.nmf@gmail.com>
Signed-off-by: gferreir <guilherme.nmf@gmail.com>
Ref: tektoncd#1381

Signed-off-by: gferreir <guilherme.nmf@gmail.com>
Signed-off-by: gferreir <guilherme.nmf@gmail.com>
Ref: tektoncd#1381

Signed-off-by: gferreir <guilherme.nmf@gmail.com>
Signed-off-by: gferreir <guilherme.nmf@gmail.com>
Ref: tektoncd#1381

Signed-off-by: gferreir <guilherme.nmf@gmail.com>
Signed-off-by: gferreir <guilherme.nmf@gmail.com>
Ref: tektoncd#1381

Signed-off-by: gferreir <guilherme.nmf@gmail.com>
Signed-off-by: gferreir <guilherme.nmf@gmail.com>
Ref: tektoncd#1381

Signed-off-by: gferreir <guilherme.nmf@gmail.com>
@tekton-robot tekton-robot added the kind/cleanup Categorizes issue or PR as related to cleaning up code, process, or technical debt. label Sep 17, 2026
@tekton-robot tekton-robot added the size/XXL Denotes a PR that changes 1000+ lines, ignoring generated files. label Sep 17, 2026
@gferreir gferreir changed the title Chore/deployment api v1 bump chore(deployment): bump apiVersion from v1beta1 to v1 Sep 17, 2026
@tekton-robot

Copy link
Copy Markdown
Diff between version 0.1 and 0.2
diff --git a/task/istio-canary-release/0.1/README.md b/task/istio-canary-release/0.2/README.md
index 63e2e9a..61d8b73 100644
--- a/task/istio-canary-release/0.1/README.md
+++ b/task/istio-canary-release/0.2/README.md
@@ -19,13 +19,13 @@ kubectl apply -f https://raw.githubusercontent.com/tektoncd/catalog/main/task/ku
 2. For Istio Services
 
 ```bash
-kubectl apply -f https://raw.githubusercontent.com/tektoncd/catalog/main/task/istio-canary-release/0.1/istio-canary-release.yaml
+kubectl apply -f https://raw.githubusercontent.com/tektoncd/catalog/main/task/istio-canary-release/0.2/istio-canary-release.yaml
 ```
 
 ## Installing the ClusterRoleBinding
 
 ```bash
-kubectl apply -f https://raw.githubusercontent.com/tektoncd/catalog/main/task/istio-canary-release/0.1/support/clusterrolebinding.yaml
+kubectl apply -f https://raw.githubusercontent.com/tektoncd/catalog/main/task/istio-canary-release/0.2/support/clusterrolebinding.yaml
 ```
 
 ## Workspaces
diff --git a/task/istio-canary-release/0.1/istio-canary-release.yaml b/task/istio-canary-release/0.2/istio-canary-release.yaml
index 1bd23aa..588e38d 100644
--- a/task/istio-canary-release/0.1/istio-canary-release.yaml
+++ b/task/istio-canary-release/0.2/istio-canary-release.yaml
@@ -1,11 +1,11 @@
-apiVersion: tekton.dev/v1beta1
+apiVersion: tekton.dev/v1
 kind: Task
 metadata:
   name: istio-canary-release
   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: Deployment
     tekton.dev/tags: canary deployment, istio
     tekton.dev/displayName: "istio canary release"
@@ -40,7 +40,7 @@ spec:
       default: ""
   steps:
     - name: canary-deploy
-      image: quay.io/openshift/origin-cli:4.6
+      image: quay.io/openshift/origin-cli:4.6@sha256:6722d5041b472ac61a294647f7fa02fb432a948835bb780cc73cd221a9291a2c
       workingDir: $(workspaces.istio-manifest-dir.path)
       script: |
         #!/usr/bin/env bash
diff --git a/task/istio-canary-release/0.1/samples/run.yaml b/task/istio-canary-release/0.2/samples/run.yaml
index 1a8e398..6b847b4 100644
--- a/task/istio-canary-release/0.1/samples/run.yaml
+++ b/task/istio-canary-release/0.2/samples/run.yaml
@@ -1,4 +1,4 @@
-apiVersion: tekton.dev/v1beta1
+apiVersion: tekton.dev/v1
 kind: Pipeline
 metadata:
   name: canary-deployment
@@ -31,7 +31,7 @@ spec:
         - name: istio-manifest-dir
           workspace: istio-manifest-dir
 ---
-apiVersion: tekton.dev/v1beta1
+apiVersion: tekton.dev/v1
 kind: PipelineRun
 metadata:
   name: canary-deployment-run
diff --git a/task/istio-canary-release/0.1/samples/taskrun.yaml b/task/istio-canary-release/0.2/samples/taskrun.yaml
index 3e9c451..f39f573 100644
--- a/task/istio-canary-release/0.1/samples/taskrun.yaml
+++ b/task/istio-canary-release/0.2/samples/taskrun.yaml
@@ -1,4 +1,4 @@
-apiVersion: tekton.dev/v1beta1
+apiVersion: tekton.dev/v1
 kind: TaskRun
 metadata: istio-run
 spec:

@gferreir

Copy link
Copy Markdown
Contributor Author

/assign @vdemeester

PipelineRun v1 removed spec.serviceAccountName in favor of
spec.taskRunTemplate.serviceAccountName. The old field causes strict
decoding errors on Tekton >= 0.50.0.

Affected tests:
- helm-upgrade-from-repo/0.4/tests/run.yaml
- helm-upgrade-from-source/0.5/tests/run.yaml

Ref: tektoncd#1381

Signed-off-by: gferreir <guilherme.nmf@gmail.com>
@gferreir

Copy link
Copy Markdown
Contributor Author

The e2e failures were caused by spec.serviceAccountName on PipelineRun manifests.
That field was removed in the v1 API — the replacement is spec.taskRunTemplate.serviceAccountName.

Two test files affected:

  • task/helm-upgrade-from-repo/0.4/tests/run.yaml
  • task/helm-upgrade-from-source/0.5/tests/run.yaml

The blue-green-deploy/0.3/tests/run.yaml uses a TaskRun (not PipelineRun), so spec.serviceAccountName is still valid there.

Fixed in 303c653. The pattern matches what buildpacks-phases/0.3 and helm-render-manifests-from-repo/0.1 already use in this repo.

@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 21, 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 21, 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.

3 participants