Releases: openshift-pipelines/pipelines-as-code
v0.39.1
Pipelines as Code version v0.39.1
OpenShift Pipelines as Code v0.39.1 has been released 🥳
Changes
This is a bugfix release, the most notable fix is cd576b1 fixing a crash of the controller when the gitlab token is invalid.
Installation
To install this version you can install the release.yaml with kubectl for your platform :
Openshift
kubectl apply -f https://github.com/openshift-pipelines/pipelines-as-code/releases/download/v0.39.1/release.yamlKubernetes
kubectl apply -f https://github.com/openshift-pipelines/pipelines-as-code/releases/download/v0.39.1/release.k8s.yamlDocumentation
The documentation for this release is available here :
https://release-v0-39-1.pipelines-as-code.pages.dev
Changelog
- a8212d3: chore: increase logs lines to check for string in e2e (@zakisk)
- 76770ef: docs(resolver): Reorganize in-repo pipeline and task documentation (@aThorp96)
- 2946d77: enhance: add PipelineRun name in pr json marshalling (@zakisk)
- f1112fd: fix: Update Gemini model to non-preview version (@chmouel)
- cd576b1: fix: crash on gl provider when token is invalid (@chmouel)
- f8992de: test(gitlab): add comprehensive ACL test coverage (@theakshaypant)
v0.37.3
Pipelines as Code version v0.37.3
OpenShift Pipelines as Code v0.37.3 has been released 🥳
This is a bugfix release, the most notable fix is 7e14293 fixing a crash of the controller when the gitlab token is invalid.
Installation
To install this version you can install the release.yaml with kubectl for your platform :
Openshift
kubectl apply -f https://github.com/openshift-pipelines/pipelines-as-code/releases/download/v0.37.3/release.yamlKubernetes
kubectl apply -f https://github.com/openshift-pipelines/pipelines-as-code/releases/download/v0.37.3/release.k8s.yamlDocumentation
The documentation for this release is available here :
https://release-v0-37-3.pipelines-as-code.pages.dev
Changelog
v0.37.2
Pipelines as Code version v0.37.2
OpenShift Pipelines as Code v0.37.2 has been released 🥳
Installation
To install this version you can install the release.yaml with kubectl for your platform :
Openshift
kubectl apply -f https://github.com/openshift-pipelines/pipelines-as-code/releases/download/v0.37.2/release.yamlKubernetes
kubectl apply -f https://github.com/openshift-pipelines/pipelines-as-code/releases/download/v0.37.2/release.k8s.yamlDocumentation
The documentation for this release is available here :
https://release-v0-37-2.pipelines-as-code.pages.dev
Changes Since v0.37.1
🐛 Bug Fixes
- Prevented a potential nil pointer panic in EventEmitter, improving runtime stability and reliability. (#2311)
Changelog
- 23eee70: Release yaml generated from eb0d9b1 for release v0.37.1 ( <>)
- 3725c38: chore(goreleaser): use binaries field in homebrew (@theakshaypant)
- 8195b9d: fix: delete go build tag for CI (@zakisk)
- 5fbebdf: fix: prevent nil pointer panic in EventEmitter (@chmouel)
- ac8e45c: refactor: Migrate build tags from +build to //go:build directives (@chmouel)
v0.39.0
Pipelines as Code version v0.39.0
OpenShift Pipelines as Code v0.39.0 has been released 🥳
Installation
To install this version you can install the release.yaml with kubectl for your platform :
Openshift
kubectl apply -f https://github.com/openshift-pipelines/pipelines-as-code/releases/download/v0.39.0/release.yamlKubernetes
kubectl apply -f https://github.com/openshift-pipelines/pipelines-as-code/releases/download/v0.39.0/release.k8s.yamlDocumentation
The documentation for this release is available here :
https://release-v0-39-0.pipelines-as-code.pages.dev
Here is the list of notable changes based on your input:
✨ Features
- feat: Add AI/LLM-powered pipeline analysis SRVKP-8577 d19d6de2
- feat: Add GitOps command support for tags in GitLab SRVKP-8612 d0f36f54
- feat: Add support for optional
namespaceparameter in incoming webhook SRVKP-5837 d1565533 - feat: Exclude tag push events from skip-pr-commits logic SRVKP-9111 d44c8b11
- feat(incoming): Set default secret key for incoming webhooks d3e7518a
- feat: support glob in incoming webhook targets SRVKP-7364 d21592a7
- feat: Honor gitops in GitLab threads replies SRVKP-8324 d0b991c4
- feat(gitlab): Cache results acl project membership SRVKP-9056 d0b84bf4
- feat(ci): skip PR checks for MIRRORED PRs ce551d9b
- feat: Introduce PR CI automation via AI and move linter there ce9c3fba
- feat: Introduce error log snippet line config SRVKP-8165 c9e5e05d
🐛 Bugs
- fix: prevent nil pointer panic in EventEmitter SRVKP-8910 d58b2e20
- fix(github): handle check run status for validation errors d4ee0808
- fix: add explicit mapping for cancelled status SRVKP-9050 d1668dff
- fix(cli): respect forceInstallGosmee in bootstrap SRVKP-9062 d1348b12
- fix: prevent stale failure statuses on commits SRVKP-9044 d0ffb7a2
- fix(cli): correct namespace flag binding in tkn-pac SRVKP-7152 d0c2e056
- fix: Improve E2E failure reporting in GitHub Actions d0bdc4cd
- test: add unit tests for duplicate secret reuse scenario ce521cb5
- fix: resolve templating placeholder evaluation bug SRVKP-8984 cdbb4508
- fix: increase number of lines of logs from pac-controller cdb54e22
- fix: Prevent panic in EventEmitter when logger is nil SRVKP-8910 cdafa7a1
- fix: Improve GitLab commit status handling SRVKP-8908 cd781bd2
- fix: Check source project access for GitLab PRs SRVKP-8902 cd28829c
⚙️ Misc
- docs: correct docs for GitOps commands on GitLab d5774cdf
- refactor: Migrate build tags from +build to //go:build directives d4dc56fd
- chore: remove raw API response in log d46f5e8f
- chore(deps): bump actions/upload-artifact from 4 to 5 d3ec0be4
- chore: configure application id in CI via env variable d3434604
- chore(goreleaser): use binaries field in homebrew d30048d2
- chore: Add deprecation log for repository status field d1d37ef3
- chore: Allow org members to trigger E2E workflow d0d750e1
- docs: clarify
repo_ownerparameter semantics cf464831 - docs: Clarify documentation for repository
comment_strategyce145f8d - docs: Restructure and enhance README for clarity cdb2b564
- chore: Enhance text consistency across codebase cdb09d06
- docs: improve English phrasing across upstream documentation cda97ff4
- chore: Add new points in AI template for PR cda974e5
- docs: Add AI assistance disclosure to PR template cd8a9d25
Changelog
- 71e6994: chore(deps): bump actions/upload-artifact from 4 to 5 (@dependabot[bot])
- 2106ee6: chore(goreleaser): use binaries field in homebrew (@theakshaypant)
- 8a3103c: chore(linter): enforce British spelling 'cancelled' over 'canceled' (@ab-ghosh)
- e6889e3: chore: Add deprecation log for repository status field (@zakisk)
- 0bacb90: chore: Add formatting checklist to AGENTS.md (@chmouel)
- dd3f552: chore: Enhance text consistency across codebase (@chmouel)
- 9c097be: chore: Remove obsolete Tekton trigger PipelineRun (@chmouel)
- a7b73ac: chore: add new points in AI template for PR (@zakisk)
- 9a418d7: chore: configure application id in CI via env variable (@zakisk)
- 96b7476: chore: remove raw API response in log (@zakisk)
- 6740f8b: feat(ci): skip PR checks for MIRRORED PRs (@chmouel)
- e45ee14: feat(gitlab): Cache results acl project membership (@chmouel)
- 840cce8: feat(incoming): Set default secret key for incoming webhooks (@zakisk)
- f0042c7: feat: Add GitOps command support for tags in GitLab (@zakisk)
- 99eecad: feat: Add release note and PR URL to JIRA custom fields (@chmouel)
- 6fc679e: feat: Add support for optional
namespaceparameter in incoming webhook (@aThorp96) - b9067e1: feat: Create JIRA tickets from PRs with Gemini AI (@chmouel)
- b4d37f6: feat: Exclude tag push events from skip-pr-commits logic (@zakisk)
- b42d36d: feat: Honor gitops in GitLab threads replies (@chmouel)
- 269d2a7: feat: Introduce AI/LLM-powered pipeline analysis (@chmouel)
- d3bc3b2: feat: Introduce PR CI automation via AI (@chmouel)
- 7aa1b46: feat: Introduce error log snippet line config (@chmouel)
- a8e6b9c: feat: Refactor JIRA generation to use Google GenAI SDK (@chmouel)
- e18390d: feat: support glob in incoming webhook targets (@theakshaypant)
- e4e992b: fix(ci): Remove duplicate context declaration in e2e workflow (@chmouel)
- 212a4f5...
v0.37.1
Pipelines as Code version v0.37.1
OpenShift Pipelines as Code v0.37.1 has been released 🥳
Installation
To install this version you can install the release.yaml with kubectl for your platform :
Openshift
kubectl apply -f https://github.com/openshift-pipelines/pipelines-as-code/releases/download/v0.37.1/release.yamlKubernetes
kubectl apply -f https://github.com/openshift-pipelines/pipelines-as-code/releases/download/v0.37.1/release.k8s.yamlDocumentation
The documentation for this release is available here :
https://release-v0-37-1.pipelines-as-code.pages.dev
Changes Since v0.37.0
🐛 Bug Fixes
-
Improve GitLab commit status handling: Clarified documentation and improved code for GitLab commit status updates, ensuring comments are only posted when status updates fail due to permissions. (#2253)
Jira: SRVKP-8908 -
Check source project access for GitLab PRs: Ensures the GitLab token has read access to the source repository for pull requests, fixing potential build failures due to insufficient scope. (#2251)
Jira: SRVKP-8902, SRVKP-8910 -
Prevent panic in EventEmitter when logger is nil: Added nil checks for the logger in EmitMessage to prevent panics and ensure robust initialization. (#2257)
Jira: SRVKP-8910 -
Revert on-path-change on pr merge in bitbucket: Reverted a change that caused the {{ revision }} variable to fetch incorrect commit IDs for Bitbucket merge commits, restoring expected behavior. (#2247)
Jira: SRVKP-8616
Changelog
- b78ba64: Revert on-path-change on pr merge in bitbucket (@zakisk)
- 3823319: feat: Add check user permission step in e2e workflow (@zakisk)
- 3bd52ba: fix: Check source project access for GitLab PRs (@chmouel)
- 239f25f: fix: Improve GitLab commit status handling (@chmouel)
- 9c2edcc: fix: Prevent panic in EventEmitter when logger is nil (@chmouel)
- eb0d9b1: fix: increase controller logs lines to detect message (@zakisk)
v0.38.0
Pipelines as Code version v0.38.0
OpenShift Pipelines as Code v0.38.0 has been released 🥳
✨ Major changes and Features
- Added an experimental CEL expression evaluator command: Introduced a new experimental command
tkn pac celfor interactively evaluating CEL expressions, with support for various webhook payloads, headers, and provider auto-detection.- Link: #2151
- Jira: SRVKP-8026
Screen.Recording.2025-09-08.at.22.mp4
- Support PipelineRun re-triggering on git tag: Enables re-triggering PipelineRuns via GitOps comments on Git tags, allowing users to specify a tag for re-execution.
- Link: #2225
- Jira: SRVKP-8364
- optimize GHApp installation ID retrieval: Optimized the retrieval of GitHub App installation IDs by removing unnecessary listings and directly fetching the installation using the repository URL, with fallback to organization installation. This improves performance and reduces API calls.
- Link: #2218
🐛 Bug Fixes
- Revert on-path-change on pr merge in bitbucket: Reverted a change that caused the
{{ revision }}variable to fetch incorrect commit IDs for Bitbucket merge commits, restoring expected behavior.- Link: #2247
- Jira: SRVKP-8616
- Prevent panic in EventEmitter when logger is nil: Added nil checks for the logger in
EmitMessageto prevent panics and ensure robust initialization.- Link: #2257
- Jira: SRVKP-8910
- Check source project access for GitLab PRs: Ensures the GitLab token has read access to the source repository for pull requests, fixing potential build failures due to insufficient scope.
- Link: #2251
- Jira: SRVKP-8902, SRVKP-8910
- /ok-to-test /retest pipelineruns should not be created if last sha successful: Prevents the creation of new PipelineRuns for
/retestor/ok-to-testcommands if the last commit SHA was already successful.- Link: #2048
- ensure cancel-in-progress targets PR PipelineRuns only: Correctly targets PR-close cancellations to PR PipelineRuns and prevents accidental cancellation of push-triggered PipelineRuns.
- Link: #2232
- use TargetProjectID for merge request comments (GitLab): Fixed an issue where GitLab merge request comments were not being posted correctly from forks due to incorrect ProjectID usage.
- Link: #2194
- Jira: SRVKP-8246
- Improve GitLab commit status handling: Clarified documentation and improved code for GitLab commit status updates, ensuring comments are only posted when status updates fail due to permissions.
- Link: #2253
- Jira: SRVKP-8908
- handle duplicate secret creation gracefully: Modified secret creation logic to reuse existing secrets instead of failing when a duplicate secret is encountered.
- Link: #2224
📚 Documentation Updates
- Add CEL filter example for non-code changes: Provided a comprehensive example for using CEL expressions to filter PipelineRuns, specifically excluding changes to documentation or configuration files.
- Link: #2243
- Jira: SRVKP-4602
- Add deprecation notice of Repository CR PipelineRun status: Added a prominent deprecation notice for the
PipelineRunstatus field in theRepositoryCR, indicating its future removal.- Link: #2238
- Add tags available for every metric in PaC: Documented the available tags/keys for every metric in Pipelines-as-Code to help users filter metrics effectively.
- Link: #2227
⚙️ Chores
- Add PR labeling with Gemini: Introduced an automated pull request labeling pipeline using Tekton and a Python script that leverages the Gemini AI model to analyze PRs and suggest labels.
- Link: #2233
- Add check user permission step in e2e workflow: Added a step to the end-to-end workflow that checks the triggering user's repository permissions via the GitHub REST API.
- Link: #2230
- Jira: SRVKP-8350
- ensure tmp dir for tests: Created the
tmp/directory before running unit tests to prevent potential test execution failures.- Link: #2250
- Re-enable tests for Global config changes: Re-enabled tests that were previously skipped due to flakiness, as the flakes were unrelated to the global config modifications.
- Link: #2236
- Add AI assistance disclosure to PR template: Added a section to the pull request template for contributors to disclose the use of AI assistance.
- Link: #2255
- Update Jira AI token secret names: Updated AI token secret names to
gemini-api-keyandapi-keyto align with.tekton/pr-labeler.yamlsetup.- Link: #2241
- Add more unit tests for pr sorting: Added more test cases to improve the overall test coverage for the PipelineRun sorting logic.
- Link: #2197
- Update dependencies: Updated various CI and tooling dependencies, including
golangimage versions andpre-commithook configurations, and refined Vale style files for better accuracy with technical terms.- Link: #2249
- fix GEMINI rules: Adjusted Gemini rules to enforce code quality, formatting, and development processes, including rules for architecture, dependencies, documentation, and testing.
- Link: #2228
- add mathur07 to E2E tests allowlist: Added a user to the allowlist for triggering E2E tests on pull requests to facilitate automated testing.
- Link: #2221
- Use DeepEqual for map comparison in tests: Replaced manual map comparisons with
DeepEqualin tests for more robust and accurate comparison.- Link: #2220
- Add tests for getExecutionOrderPatch func: Added unit tests for the
getExecutionOrderPatchfunction to ensure it returns the correct value when called.- Link: #2215
- Use usernames for E2E trigger permissions: Updated E2E trigger permissions to use usernames, as GitHub has deprecated the
author_associationfield.- Link: #2217
- Bump actions/setup-go from 5 to 6: Updated the
actions/setup-goGitHub Action from version 5 to 6.- Link: #2240
- Bump actions/github-script from 7 to 8: Updated the
actions/github-scriptGitHub Action from version 7 to 8.- Link: #2239
- Bump actions/checkout from 4 to 5: Updated the
actions/checkoutGitHub Action from version 4 to 5.- Link: #2219
Installation
To install this version you can install the release.yaml with kubectl for your platform :
Openshift
kubectl apply -f https://github.com/openshift-pipelines/pipelines-as-code/releases/download/v0.38.0/release.yamlKubernetes
kubectl apply -f https://github.com/openshift-pipelines/pipelines-as-code/releases/download/v0.38.0/release.k8s.yamlDocumentation
The documentation for this release is available here :
https://release-v0-38-0.pipelines-as-code.pages.dev
Changelog
- 440cf02: Add e2e test for GitlabMergeRequestValidationErrors (@infernus01)
- 8cdbaff: Revert "fix: Re-enable tests for Global config changes" (@zakisk)
- 95d7eda: Revert on-path-change on pr merge in bitbucket (@zakisk)
- 61ba239: chore(deps): bump actions/checkout from 4 to 5 (@dependabot[bot])
- 8f2b37a: chore(deps): bump actions/github-script from 7 to 8 (@dependabot[bot])
- 018026a: chore(deps): bump actions/setup-go from 5 to 6 (@dependabot[bot])
- 3dab622: chore(deps): update Go dependencies (...
v0.37.0
Pipelines as Code version v0.37.0
OpenShift Pipelines as Code v0.37.0 has been released 🥳
Installation
To install this version you can install the release.yaml with kubectl for your platform :
Openshift
kubectl apply -f https://github.com/openshift-pipelines/pipelines-as-code/releases/download/v0.37.0/release.yamlKubernetes
kubectl apply -f https://github.com/openshift-pipelines/pipelines-as-code/releases/download/v0.37.0/release.k8s.yamlDocumentation
The documentation for this release is available here :
https://release-v0-37-0.pipelines-as-code.pages.dev
Changes since v0.36.0
🚀 Features & Enhancements
-
📜 Structured Logging: Structured logging now includes repository context for improved readability and debugging. (5949341)
-
🏛️ Artifact Hub Support: Support has been added for resolving tasks and pipelines from Artifact Hub. (5034528)
-
🎟️ Jira Integration: You can now create Jira tickets directly from pull request comments. (5e98945)
-
✍️ Customizable CR Names: Added template support for customizing the names of auto-configured Repository CRs. (1ba08cf)
-
🔗 Relative Task Resolution: Support has been added for fetching remote tasks using relative URLs. (8c752e3)
-
⚠️ CEL Error Reporting: Invalid CEL expression errors are now reported as comments directly on the pull request. (c0f65c7) -
📊 GitHub API Monitoring: Implemented intelligent monitoring and instrumentation for GitHub API calls in E2E tests. (15d764c, 8346f33, bc8e716)
-
💻 Cursor IDE Rules: Comprehensive development and linting rules have been added for the Cursor IDE. (32e2093)
-
🧩 Payload Parsing Enhancement: The ParsePayload function has been enhanced to use a more direct client function for API calls. (db0e832)
-
🧪 Improved Error Clarity: Error messages for commit info have been clarified and new tests have been added. (f3a73b4)
🐛 Bug Fixes
-
🛡️ Webhook Secret Validation: A guard has been added to prevent a controller crash when checking webhook secrets for nil responses on GitHub. (e18edee)
-
📎 Concurrency Deadlock: A deadlock in the concurrency tryAcquire method has been prevented. (d1ea889)
-
📝 PipelineRun Annotation: The PipelineRun is now correctly annotated when the "started" status is reported. (a1d7e4e)
-
🤔 Missing .tekton Directory: Fixed an issue where pull requests could remain in a 'pending' state indefinitely if the repository - was missing a .tekton directory. (846416e)
-
🤫 YAML Validation Noise: Validation errors are no longer incorrectly reported for non-Tekton resources, reducing noise. (4f415fb)
-
🍺 Homebrew Packaging: Resolved issues with Homebrew packaging and updated the cask installation documentation. (ecd0637, 3639f67)
-
🗑️ Bitbucket DC Branch Deletion: Branch deletion events, which do not contain a commit SHA, are now correctly ignored to prevent processing errors. (7340740)
🧹 Housekeeping & CI
-
🚦 E2E Test Triggers: E2E tests are now triggered more efficiently, running only when workflow files change and based on the author's association with the repository. (a5b9453, f120625)
-
✅ Commit Validation: Commit and pull request title validation in the CI has been improved and unified. (fe32890, ce23998)
-
🔧 Git-Clone Task Path: The git-clone task location has been updated to its new canonical path. (0ad67b6)
-
♻️ Finalizer Naming: The controller's finalizer name has been updated to be more explicit. (a0bcb6f)
-
🔗 Dependency Update: The jenkins-x/go-scm dependency has been updated to the latest version. (28a095f, 4ae3540)
-
🧼 Code Cleanup: An unused ConvertPacStructToConfigMap function and its tests have been removed. (70eb7ba)
-
🏃 Linter Fix: The noctx linter is now satisfied by using exec.CommandContext in the CI. (3e8fe4c)
-
🐍 CI Python Image: The CI now uses a standard Python image to install ruff, improving portability. (cce78bb)
-
📛 Linter Naming Fix: A var-naming error from the revive linter has been fixed. (87df55c)
-
👥 E2E Test Permissions: E2E tests can now be triggered by a wider range of trusted contributors. (633f025, 78a7418)
-
🏷️ Event Type Refactor: The internal event type LabelUpdate has been refactored to the more descriptive pull_request_labeled. (fdd6549)
-
🏛️ Catalog ID Refactor: The default ArtifactHub catalog ID has been refactored to pacpipelines. (542f1a0)
-
📖 Documentation
🎟️ Jira Integration Docs: Added new documentation, guidelines, and templates for creating Jira issues. (e790bc0) -
📝 PR Template Update: The pull request template has been updated to include sections for dependencies and other details. (4888d6d, 098a2a0)
-
🖊️ Typo Fixes: Corrected various minor typos in documentation and warning messages. (bca681c, 9e43cbb, 52d6a16)
Changelog
- 5949341: Feat: structured logging with source repo context (#2165) (@infernus01)
- 4888d6d: Update .github/pull_request_template.md (@chmouel)
- f4b1be2: chore: Allow insensitive case for pr title (@chmouel)
- 9e43cbb: chore: Correct typos in warning and event messages (@chmouel)
- fe32890: chore: Improve commit and pull request title validation (@chmouel)
- e7a2b7b: chore: Make go-testing PipelineRun targeted by all branches (@zakisk)
- f120625: chore: Run E2E tests based on author association (@chmouel)
- 52d6a16: chore: Some minor typos in docs (@zakisk)
- 0ad67b6: chore: Update git-clone task location (@chmouel)
- 934dddc: chore: add PipelineRun status in logs when creating PipelineRun (@zakisk)
- 098a2a0: chore: add deps in pr template (@zakisk)
- 70eb7ba: chore: remove unused ConvertPacStructToConfigMap func and tests (@infernus01)
- a5b9453: chore: trigger E2E tests only on workflows change (@zakisk)
- ce23998: chore: update PR template and unify commit validation in CI (@chmouel)
- 28a095f: dep: update jenkins-x/go-scm version (@zakisk)
- 4ae3540: deps: update jenkins-x/go-scm version (@zakisk)
- db0e832: enhance: Use Client Function for API Call in ParsePayload (@zakisk)
- f3a73b4: enhance: clarify commit-info error & add tests for verifyRepoAndUser (@zakisk)
- e790bc0: feat: Add Jira issue creation guidelines and templates (@chmouel)
- 5e98945: feat: Add PipelineRun to create JIRA tickets via comments (@chmouel)
- 5034528: feat: Add support for Artifact Hub (@chmouel)
- 1ba08cf: feat: Add template support for auto-configured repository CR names (@zakisk)
- 32e2093: feat: Implement comprehensive development rules for Cursor (@chmouel)
- 15d764c: feat: Implement intelligent GH API call monitoring (@chmouel)
- 8346f33: feat: add instrumentation in e2e for GH API calls (@chmouel)
- bc8e716: feat: add instrumentation in e2e for GH API calls (@chmouel)
- 8c752e3: feat: add relative TaskRef fetching functionality (@martindbrv)
- c0f65c7: feat: report invalid CEL expression errors as PR comments (@zakisk)
- 7340740: fix(bitbucketdatacenter): ignore branch deletion events in ParsePayload (@infernus01)
- 87df55c: fix(ci): golangci-lint revive var-naming error in linters (@zakisk)
- 3e8fe4c: fix(ci): use exec.CommandContext to satisfy
noctxlinter (@zakisk) - e18edee: fix(github): guard checkWebhookSecretValidity against nil response (@zakisk)
- ecd0637: fix(homebrew): goreleaser issue and cask install doc (@dronenb)
- 633f025: fix: Allow contributors to trigger end-to-end tests (@chmouel)
- 78a7418: fix: Allow infernus01 to trigger E2E workflow (@chmouel)
- a1d7e4e: fix: Annotate PLR when when started status is reported (#2208) (@gbenhaim)
- 4f415fb: fix: Ignore non-Tekton resources errors reporting (@chmouel)
- 846416e: fix: Improve handling of missing .tekton directory for ok-to-test events (@zakisk)
- d1ea889: fix: Prevent deadlock in tryAcquire method (@chmouel)
- 3639f67: fix: homebrew packaging (@chmouel)
- c6fdb38: fix: skip pr title check for MIRRORED PR (@chmouel)
- cce78bb: fix: use python image to install ruff (@zakisk)
- fdd6549: refactor(triggertype): rename LabelUpdate to pull_request_labeled (@infernus01)
- 542f1a0: refactor: artifacthub catalog ID to pacpipelines (@chmouel)
v0.35.3
Pipelines as Code version v0.35.3
OpenShift Pipelines as Code v0.35.3 has been released 🥳
This is a bug fix release fixing reporting as error when non tekton resources are located in .tekton and the homebrew release of tkn-pac binary.
Installation
To install this version you can install the release.yaml with kubectl for your platform :
Openshift
kubectl apply -f https://github.com/openshift-pipelines/pipelines-as-code/releases/download/v0.35.3/release.yamlKubernetes
kubectl apply -f https://github.com/openshift-pipelines/pipelines-as-code/releases/download/v0.35.3/release.k8s.yamlDocumentation
The documentation for this release is available here :
https://release-v0-35-3.pipelines-as-code.pages.dev
Changelog
- 25d6e84: Release yaml generated from 165d92a for release v0.35.2 ( <>)
- 793677d: fix(homebrew): goreleaser issue and cask install doc (@dronenb)
- 238d2cf: fix: Ignore non-Tekton resources errors reporting (@chmouel)
What's Changed
Full Changelog: v0.35.2...v0.35.3
v0.35.2
Pipelines as Code version v0.35.2
OpenShift Pipelines as Code v0.35.2 has been released 🥳
Installation
To install this version you can install the release.yaml with kubectl for your platform :
Openshift
kubectl apply -f https://github.com/openshift-pipelines/pipelines-as-code/releases/download/v0.35.2/release.yamlKubernetes
kubectl apply -f https://github.com/openshift-pipelines/pipelines-as-code/releases/download/v0.35.2/release.k8s.yamlDocumentation
The documentation for this release is available here :
https://release-v0-35-2.pipelines-as-code.pages.dev
Changes Since v0.35.1
🐛 Notable Bug Fixes
-
GitHub API Stability: Fixed a potential crash that could occur when checking the status and rate limits of a GitHub token, particularly for tokens with limited permissions. The application now handles these cases gracefully. (#2162)
-
Controller Finalizer Naming: The controller's finalizer name has been updated to be more explicit, improving internal consistency. (#2099)
-
Bitbucket on-path-change Fix: Resolved an issue where the on-path-change annotation was not working correctly on pull request merge events. (#2145)
-
Bitbucket Empty Commit Handling: Empty commits in push events are now correctly detected and invalidated. (#2138)
-
YAML Validation for Non-Tekton Resources: Validation errors are no longer incorrectly reported for non-Tekton resources, reducing noise. (#2147)
-
YAML Error Formatting: Long YAML validation error messages on push events are now split for better readability. (#2109)
-
HTTP Server Timeouts: Added timeouts to the internal HTTP server to prevent hangs. (#2116)
-
HTTP Response Handling: Fixed handling of HTTP response body close errors to prevent resource leaks. (#2147)
-
GitLab Trigger Precision: Fixed an issue on GitLab where pipelines could be triggered incorrectly by unsupported events. (#2122)
Changelog
- ba5f90b: Release yaml generated from 0b6cda8 for release v0.35.1 ( <>)
- 0437463: chore: Make go-testing PipelineRun targeted by all branches (@zakisk)
- 6fcedc6: chore: Update controller finalizer name to include explicit part (@chmouel)
- 522240f: fix(ci): golangci-lint revive var-naming error in linters (@zakisk)
- 165d92a: fix(github): guard checkWebhookSecretValidity against nil response (@zakisk)
- 86da7d4: fix(gitlab): trigger PipelineRun only on label change (@PuneetPunamiya)
- ad8fea1: fix: Split error message of yaml validation on push (@zakisk)
- f780e96: fix: add timeouts to HTTP server (@chmouel)
- bea1de2: fix: avoid reporting errors for non-Tekton res (@chmouel)
- 0510f33: fix: handle response body close errors (@chmouel)
- 3dc9d63: fix: inavlidate empty commits in push events in bitbucket dc (@zakisk)
- 71027f9: fix: issue in on-path-change on pr merge in bitbucket data center (@zakisk)
- 66d16b3: fix: migrate from brews to homebrew_casks in goreleaser (@zakisk)
- 3eac400: fix: use correct event type in log in GetTektonDir func (@zakisk)
v0.36.0
Pipelines as Code version v0.36.0
OpenShift Pipelines as Code v0.36.0 has been released 🥳
Installation
To install this version you can install the release.yaml with kubectl for your platform :
Openshift
kubectl apply -f https://github.com/openshift-pipelines/pipelines-as-code/releases/download/v0.36.0/release.yamlKubernetes
kubectl apply -f https://github.com/openshift-pipelines/pipelines-as-code/releases/download/v0.36.0/release.k8s.yamlDocumentation
The documentation for this release is available here :
https://release-v0-36-0.pipelines-as-code.pages.dev
Changes since v0.35.1
🚀 Features & Enhancements
-
Kueue Integration: Pipelines-as-Code now natively reports PipelineRun status updates when integrated with the Kueue queuing system. #2120
-
Quieter Pull Requests: You can now disable status comments from PipelineRuns on GitHub pull requests to reduce noise. #2110
-
New Dynamic Variable: The
{{ pull_request_number }}variable is now supported in push event triggers, making it easier to reference the original pull request. #2118 -
JSON Body Support: Incoming webhooks now support parameters provided in a JSON body. #2100
-
Direct PipelineRun Link: The initial "PipelineRun starting" comment now includes a direct link to the PipelineRun for easier access. #2114
🐛 Bug Fixes
-
on-path-change issue: Resolved an issue where the on-path-change annotation was not working correctly on pull request merge events in Bitbucket Data Center. #2145
-
No Commit in Payload: Empty commits in push events are now correctly invalidated in Bitbucket Data Center. #2138
-
GitLab Triggers: Fixed an issue on GitLab where pipelines could be triggered incorrectly on unsupported events. #2122
-
YAML Validation: Avoided reporting YAML syntax and validation errors for non-Tekton resources. #2147
-
YAML Error Formatting: Split long YAML validation error messages on push events for better readability. #2109
-
Stability Improvements: Added timeouts to the internal HTTP server, set stricter permissions on created directories, fixed handling of HTTP response body close errors, and corrected event types in logs for better provenance and debugging. #2116
🧹 Housekeeping & Chores
-
Test Coverage: Added new unit test cases for the GetCurrentControllerName function. #2107
-
Finalizer Naming: Updated the controller's finalizer name to be more explicit. #2099
-
Enhanced PR Mirroring: The script for mirroring external PRs has been significantly improved, with new functionality to update existing PRs, list and close them by their original state, and perform a dry run. #2125 #2142 #2144
-
GoReleaser Configuration: Migrated from the deprecated brews to the modern homebrew_casks configuration in GoReleaser. #2121
-
Audit Logging: For enhanced security, audit logging has been added to various clients within Pipelines-as-Code. #2127
📖 Documentation & Typos
-
CEL Expressions: Updated documentation to clarify the precedence of CEL expressions. #2119
-
YAML Validation Docs: Added clarification to the docs regarding YAML validation errors. #2135
Changelog
608c97b: Disable Github comments for pipeline start/end events to reduce PR noise (@PuneetPunamiya)
d2ac965: Revert "adding logs whenever client uses token which is security best practice" (@zakisk)
bca681c: Update privaterepo.md with missing colon (@fabriziosta)
9e37185: adding logs whenever client uses token which is security best practice (@mbpavan)
da83cb5: chore: Add test cases for GetCurrentControllerName (@zakisk)
67c2fb1: chore: Small typo in linters PipelineRun (@zakisk)
a0bcb6f: chore: Update controller finalizer name to include explicit part (@chmouel)
6aa79a5: chore: change scmclient to client in bibtucket dc (@zakisk)
f0e3411: chore: set environment variables for git execution (@chmouel)
6484b59: chore: update docs about CEL expression precedence (@zakisk)
8a4ed95: cleanup: remove redunant IsCancelComment func (@zakisk)
5a2151f: cleanup: removes unsupported enum values for Gitlab comment_strategy (@PuneetPunamiya)
eacd4ac: dcos: clarification about YAML validation error (@zakisk)
f07a394: feat(security): add audit logging to clients in pipelines-as-code (@mbpavan)
0c647e1: feat: Add JSON body support for incoming webhook parameters (@chmouel)
8dbb5f5: feat: Allow listing and closing mirrored PRs by original state (@chmouel)
b772b84: feat: Enable mirror script to update existing PRs (@chmouel)
ff0bf5d: feat: Enable updating existing mirrored pull requests (@chmouel)
1e99f6f: feat: Implement dry run functionality for mirror-pr script (@chmouel)
54151f7: feat: Implement script to mirror external PRs for E2E tests (@chmouel)
7e1d03c: feat: link to PipelineRun in Starting template (@aThorp96)
5dafa4a: feat: support PipelineRun running status reporting on Github with Kueue (@zakisk)
c05e765: feat: support pull_request_number variable on push events (@zakisk)
78eed25: fix(gitlab): trigger PipelineRun only on label change (@PuneetPunamiya)
6575e4d: fix: Improve Tekton gitlint step to list all failing commits (@chmouel)
6ba7b1e: fix: Set stricter permissions on created directories (@chmouel)
aa20b5b: fix: Split error message of yaml validation on push (@zakisk)
c4e24c5: fix: add timeouts to HTTP server (@chmouel)
46067b2: fix: avoid reporting errors for non-Tekton res (@chmouel)
002a60d: fix: handle response body close errors (@chmouel)
af3b914: fix: improve mirror-pr.sh script (@chmouel)
527ebbf: fix: inavlidate empty commits in push events in bitbucket dc (@zakisk)
f9fd3f3: fix: issue in on-path-change on pr merge in bitbucket data center (@zakisk)
313ace7: fix: migrate from brews to homebrew_casks in goreleaser (@zakisk)
445ab7e: fix: removed duplicate statement in overview page (@zakisk)
94e4bbd: fix: small typo in README.md (@zakisk)
640cb4f: fix: small typo in docs/install/setting.md (@infernus01)
d529a98: fix: small typo in test pipelinerun yaml (@zakisk)
1f9ba8c: fix: use correct event type in log in GetTektonDir func (@zakisk)
0e5b93c: foo (@chmouel)