Conversation
|
API Changes no api changes detected |
🔍 Code Analysis ResultsThis PR synchronizes the Tyk repository with changes from an upstream source, introducing a FIPS-compliant build variant for the Tyk Gateway and enhancing the CI/CD pipeline's robustness. Files Changed Analysis
Architecture & Impact Assessment
graph TD
subgraph "Release Workflow"
A[Start Build Job] --> B{Build Matrix};
B --> C_EE[Build & Push EE Image];
B --> C_STD[Build & Push STD Image];
B --> C_FIPS["Build & Push FIPS Image (New)"];
C_EE & C_STD --> D[Run Upgrade Tests];
end
Scope Discovery & Context ExpansionThe scope is focused on the build and release process to introduce a new FIPS build variant. Enabling The broader context is to support customers with stringent regulatory requirements. The creation of a new Metadata
Powered by Visor from Probelabs Last updated: 2025-11-18T13:53:41.335Z | Triggered by: synchronize | Commit: a57cbbc 💡 TIP: You can chat with Visor using |
🔍 Code Analysis ResultsSecurity Issues (2)
Architecture Issues (1)
Performance Issues (1)
Quality Issues (2)
Dependency Issues (1)
✅ Connectivity Check PassedNo connectivity issues found – changes LGTM. Powered by Visor from Probelabs Last updated: 2025-11-18T13:53:42.600Z | Triggered by: synchronize | Commit: a57cbbc 💡 TIP: You can chat with Visor using |
c815369 to
ab0c1f9
Compare
🚨 Jira Linter FailedCommit: The Jira linter failed to validate your PR. Please check the error details below: 🔍 Click to view error detailsNext Steps
This comment will be automatically deleted once the linter passes. |
|
|
/release to release-5.8 |
## Description Carry over changes from gromit into the tyk repo ## Related Issue [TT-16131](https://tyktech.atlassian.net/browse/TT-16131) ## Motivation and Context Ensure the tyk repo is in sync as the buildenv for this repo will continue to be `1.24-bullseye` with the addition of a manual pull of the latest go version, this is done upstream when the image is built. This PR carries over other changes from gromit ensuring everything is in sync after this change. [TT-16131]: https://tyktech.atlassian.net/browse/TT-16131?atlOrigin=eyJpIjoiNWRkNTljNzYxNjVmNDY3MDlhMDU5Y2ZhYzA5YTRkZjUiLCJwIjoiZ2l0aHViLWNvbS1KU1cifQ Co-authored-by: Gromit <policy@gromit> Co-authored-by: Leonid Bugaev <leonsbox@gmail.com> (cherry picked from commit 007b66a)
|
✅ Cherry-pick successful. A PR was created: #7550 |
…7550) Gromit sync with tyk repo TT-16131 (#7542) ## Description Carry over changes from gromit into the tyk repo ## Related Issue [TT-16131](https://tyktech.atlassian.net/browse/TT-16131) ## Motivation and Context Ensure the tyk repo is in sync as the buildenv for this repo will continue to be `1.24-bullseye` with the addition of a manual pull of the latest go version, this is done upstream when the image is built. This PR carries over other changes from gromit ensuring everything is in sync after this change. [TT-16131]: https://tyktech.atlassian.net/browse/TT-16131?atlOrigin=eyJpIjoiNWRkNTljNzYxNjVmNDY3MDlhMDU5Y2ZhYzA5YTRkZjUiLCJwIjoiZ2l0aHViLWNvbS1KU1cifQ Co-authored-by: Gromit <policy@gromit> Co-authored-by: Leonid Bugaev <leonsbox@gmail.com> [TT-16131]: https://tyktech.atlassian.net/browse/TT-16131?atlOrigin=eyJpIjoiNWRkNTljNzYxNjVmNDY3MDlhMDU5Y2ZhYzA5YTRkZjUiLCJwIjoiZ2l0aHViLWNvbS1KU1cifQ [TT-16131]: https://tyktech.atlassian.net/browse/TT-16131?atlOrigin=eyJpIjoiNWRkNTljNzYxNjVmNDY3MDlhMDU5Y2ZhYzA5YTRkZjUiLCJwIjoiZ2l0aHViLWNvbS1KU1cifQ <!---TykTechnologies/jira-linter starts here--> ### Ticket Details <details> <summary> <a href="https://tyktech.atlassian.net/browse/TT-16131" title="TT-16131" target="_blank">TT-16131</a> </summary> | | | |---------|----| | Status | In Code Review | | Summary | Gromit sync with tyk repo | Generated at: 2025-11-19 09:22:29 </details> <!---TykTechnologies/jira-linter ends here--> Co-authored-by: Razeen <98765619+Razeen-Abdal-Rahman@users.noreply.github.com> Co-authored-by: Gromit <policy@gromit> Co-authored-by: Leonid Bugaev <leonsbox@gmail.com>
|
/release to release-5.10 |
## Description Carry over changes from gromit into the tyk repo ## Related Issue [TT-16131](https://tyktech.atlassian.net/browse/TT-16131) ## Motivation and Context Ensure the tyk repo is in sync as the buildenv for this repo will continue to be `1.24-bullseye` with the addition of a manual pull of the latest go version, this is done upstream when the image is built. This PR carries over other changes from gromit ensuring everything is in sync after this change. [TT-16131]: https://tyktech.atlassian.net/browse/TT-16131?atlOrigin=eyJpIjoiNWRkNTljNzYxNjVmNDY3MDlhMDU5Y2ZhYzA5YTRkZjUiLCJwIjoiZ2l0aHViLWNvbS1KU1cifQ Co-authored-by: Gromit <policy@gromit> Co-authored-by: Leonid Bugaev <leonsbox@gmail.com> (cherry picked from commit 007b66a)
|
✅ Cherry-pick successful. A PR was created: #7551 |
|
/release to release-5.10.1 |
## Description Carry over changes from gromit into the tyk repo ## Related Issue [TT-16131](https://tyktech.atlassian.net/browse/TT-16131) ## Motivation and Context Ensure the tyk repo is in sync as the buildenv for this repo will continue to be `1.24-bullseye` with the addition of a manual pull of the latest go version, this is done upstream when the image is built. This PR carries over other changes from gromit ensuring everything is in sync after this change. [TT-16131]: https://tyktech.atlassian.net/browse/TT-16131?atlOrigin=eyJpIjoiNWRkNTljNzYxNjVmNDY3MDlhMDU5Y2ZhYzA5YTRkZjUiLCJwIjoiZ2l0aHViLWNvbS1KU1cifQ Co-authored-by: Gromit <policy@gromit> Co-authored-by: Leonid Bugaev <leonsbox@gmail.com> (cherry picked from commit 007b66a)
|
✅ Cherry-pick successful. A PR was created: #7552 |
…7551) ### **User description** <details open> <summary><a href="https://tyktech.atlassian.net/browse/TT-16131" title="TT-16131" target="_blank">TT-16131</a></summary> <br /> <table> <tr> <th>Summary</th> <td>Gromit sync with tyk repo</td> </tr> <tr> <th>Type</th> <td> <img alt="Story" src="https://tyktech.atlassian.net/rest/api/2/universal_avatar/view/type/issuetype/avatar/10315?size=medium" /> Story </td> </tr> <tr> <th>Status</th> <td>In Code Review</td> </tr> <tr> <th>Points</th> <td>N/A</td> </tr> <tr> <th>Labels</th> <td>-</td> </tr> </table> </details> <!-- do not remove this marker as it will break jira-lint's functionality. added_by_jira_lint --> --- Gromit sync with tyk repo TT-16131 (#7542) ## Description Carry over changes from gromit into the tyk repo ## Related Issue [TT-16131](https://tyktech.atlassian.net/browse/TT-16131) ## Motivation and Context Ensure the tyk repo is in sync as the buildenv for this repo will continue to be `1.24-bullseye` with the addition of a manual pull of the latest go version, this is done upstream when the image is built. This PR carries over other changes from gromit ensuring everything is in sync after this change. [TT-16131]: https://tyktech.atlassian.net/browse/TT-16131?atlOrigin=eyJpIjoiNWRkNTljNzYxNjVmNDY3MDlhMDU5Y2ZhYzA5YTRkZjUiLCJwIjoiZ2l0aHViLWNvbS1KU1cifQ Co-authored-by: Gromit <policy@gromit> Co-authored-by: Leonid Bugaev <leonsbox@gmail.com> [TT-16131]: https://tyktech.atlassian.net/browse/TT-16131?atlOrigin=eyJpIjoiNWRkNTljNzYxNjVmNDY3MDlhMDU5Y2ZhYzA5YTRkZjUiLCJwIjoiZ2l0aHViLWNvbS1KU1cifQ [TT-16131]: https://tyktech.atlassian.net/browse/TT-16131?atlOrigin=eyJpIjoiNWRkNTljNzYxNjVmNDY3MDlhMDU5Y2ZhYzA5YTRkZjUiLCJwIjoiZ2l0aHViLWNvbS1KU1cifQ ___ ### **PR Type** Enhancement, Tests, Bug fix ___ ### **Description** - Add FIPS build and images to release - Improve installer cleanup and permissions - Adjust GoReleaser to skip docker when needed - Make upgrade tests resilient to repo issues ___ ### Diagram Walkthrough ```mermaid flowchart LR goreleaser["GoReleaser config updates"] -- "FIPS flags, boringcrypto" --> fipsbin["FIPS binaries"] fipsbin -- "BUILD_PACKAGE_NAME=tyk-gateway-fips" --> fipsimg["FIPS images (CI/prod)"] workflow["Release workflow"] -- "metadata + build-push" --> fipsimg workflow -- "skip docker on snapshot/tags" --> images["Standard/EE images"] postinstall["post_install.sh"] -- "safer cleanup, chmod if exists" --> installsafe["Safer installs"] tests["Upgrade test Dockerfiles"] -- "tolerant repo setup, fallback" --> resilient["Resilient upgrade tests"] dockerstd["ci/Dockerfile.std"] -- "copy deb, stricter cleanup" --> slimmer["Slimmer image"] ``` <details> <summary><h3> File Walkthrough</h3></summary> <table><thead><tr><th></th><th align="left">Relevant files</th></tr></thead><tbody><tr><td><strong>Bug fix</strong></td><td><table> <tr> <td> <details> <summary><strong>post_install.sh</strong><dd><code>Safer post-install cleanup and permissions</code> </dd></summary> <hr> ci/install/post_install.sh <ul><li>Swap cleanup paths for systemd/sysv<br> <li> Only chmod config if file exists</ul> </details> </td> <td><a href="https://github.com/TykTechnologies/tyk/pull/7551/files#diff-16f232a53df862d740ca45c0a608e598b38a7211da8325b9f74ceaecc00280c5">+4/-4</a> </td> </tr> </table></td></tr><tr><td><strong>Enhancement</strong></td><td><table> <tr> <td> <details> <summary><strong>release.yml</strong><dd><code>Release workflow adds FIPS and hardens tests</code> </dd></summary> <hr> .github/workflows/release.yml <ul><li>Add FIPS image metadata and pushes<br> <li> Output FIPS tags for downstream jobs<br> <li> Skip docker builds in goreleaser when tagging/snapshot<br> <li> Make upgrade tests tolerate repo/old version absence</ul> </details> </td> <td><a href="https://github.com/TykTechnologies/tyk/pull/7551/files#diff-87db21a973eed4fef5f32b267aa60fcee5cbdf03c67fafdc2a9b553bb0b15f34">+71/-3</a> </td> </tr> <tr> <td> <details> <summary><strong>Dockerfile.std</strong><dd><code>Standard image installs from dist and cleans</code> </dd></summary> <hr> ci/Dockerfile.std <ul><li>Install package from dist with arch pattern<br> <li> Strengthen cleanup of apt/log caches<br> <li> Adjust deb naming/glob usage</ul> </details> </td> <td><a href="https://github.com/TykTechnologies/tyk/pull/7551/files#diff-a3b3e9cabd877d0bd0fc8f20a9fdca7f44d102547a5fdfcd398ea01637e5dfae">+5/-5</a> </td> </tr> <tr> <td> <details> <summary><strong>goreleaser.yml</strong><dd><code>Enable boringcrypto for FIPS build</code> </dd></summary> <hr> ci/goreleaser/goreleaser.yml <ul><li>Set GOEXPERIMENT=boringcrypto for FIPS<br> <li> Keep FIPS tags and ldflags intact</ul> </details> </td> <td><a href="https://github.com/TykTechnologies/tyk/pull/7551/files#diff-fb944a05459e4d713bc7541efd6e721cbe992a556353c09c4eb66a8eae9b856e">+1/-1</a> </td> </tr> </table></td></tr><tr><td><strong>Tests</strong></td><td><table> <tr> <td> <details> <summary><strong>upgrade-deb.yml (generated Dockerfile content)</strong><dd><code>Debian upgrade test resilient to repo issues</code> </dd></summary> <hr> ci/tests/api-functionality/upgrade-deb.yml (generated Dockerfile content) <ul><li>Add fallback if repo setup fails<br> <li> Continue when previous version not found</ul> </details> </td> <td><a href=""></a></td> </tr> <tr> <td> <details> <summary><strong>upgrade-rpm.yml (generated Dockerfile content)</strong><dd><code>RPM upgrade test resilient to repo issues</code> </dd></summary> <hr> ci/tests/api-functionality/upgrade-rpm.yml (generated Dockerfile content) <ul><li>Add fallback if repo setup fails<br> <li> Continue when previous version not found</ul> </details> </td> <td><a href=""></a></td> </tr> </table></td></tr></tr></tbody></table> </details> ___ --------- Co-authored-by: Razeen <98765619+Razeen-Abdal-Rahman@users.noreply.github.com> Co-authored-by: Gromit <policy@gromit> Co-authored-by: Leonid Bugaev <leonsbox@gmail.com> Co-authored-by: Razeen <Razeen.Abdal-Rahman@outlook.com>
…#7552) ### **User description** <details open> <summary><a href="https://tyktech.atlassian.net/browse/TT-16131" title="TT-16131" target="_blank">TT-16131</a></summary> <br /> <table> <tr> <th>Summary</th> <td>Gromit sync with tyk repo</td> </tr> <tr> <th>Type</th> <td> <img alt="Story" src="https://tyktech.atlassian.net/rest/api/2/universal_avatar/view/type/issuetype/avatar/10315?size=medium" /> Story </td> </tr> <tr> <th>Status</th> <td>In Code Review</td> </tr> <tr> <th>Points</th> <td>N/A</td> </tr> <tr> <th>Labels</th> <td>-</td> </tr> </table> </details> <!-- do not remove this marker as it will break jira-lint's functionality. added_by_jira_lint --> --- Gromit sync with tyk repo TT-16131 (#7542) ## Description Carry over changes from gromit into the tyk repo ## Related Issue [TT-16131](https://tyktech.atlassian.net/browse/TT-16131) ## Motivation and Context Ensure the tyk repo is in sync as the buildenv for this repo will continue to be `1.24-bullseye` with the addition of a manual pull of the latest go version, this is done upstream when the image is built. This PR carries over other changes from gromit ensuring everything is in sync after this change. [TT-16131]: https://tyktech.atlassian.net/browse/TT-16131?atlOrigin=eyJpIjoiNWRkNTljNzYxNjVmNDY3MDlhMDU5Y2ZhYzA5YTRkZjUiLCJwIjoiZ2l0aHViLWNvbS1KU1cifQ Co-authored-by: Gromit <policy@gromit> Co-authored-by: Leonid Bugaev <leonsbox@gmail.com> [TT-16131]: https://tyktech.atlassian.net/browse/TT-16131?atlOrigin=eyJpIjoiNWRkNTljNzYxNjVmNDY3MDlhMDU5Y2ZhYzA5YTRkZjUiLCJwIjoiZ2l0aHViLWNvbS1KU1cifQ [TT-16131]: https://tyktech.atlassian.net/browse/TT-16131?atlOrigin=eyJpIjoiNWRkNTljNzYxNjVmNDY3MDlhMDU5Y2ZhYzA5YTRkZjUiLCJwIjoiZ2l0aHViLWNvbS1KU1cifQ ___ ### **PR Type** Enhancement, Bug fix ___ ### **Description** - Add FIPS build and images - Improve CI release flow robustness - Fix post-install service cleanup logic - Safeguard config chmod when absent ___ ### Diagram Walkthrough ```mermaid flowchart LR ci["CI release workflow"] -- "add FIPS metadata/tags" --> fipsMeta["FIPS docker metadata"] ci -- "build+push FIPS images" --> fipsPushCI["Push FIPS CI image"] tags["Tag push"] -- "build+push FIPS prod" --> fipsPushProd["Push FIPS prod image"] goreleaser["Goreleaser config"] -- "boringcrypto experiment" --> fipsBuild["FIPS build target"] installer["post_install.sh"] -- "fix service cleanup, safe chmod" --> saferInstall["Safer post-install"] images["Distroless Dockerfile"] -- "install .deb earlier, clean logs" --> leanImage["Smaller attack surface"] tests["Package upgrade tests"] -- "tolerate repo failures" --> resilientTests["Resilient fallbacks"] ``` <details> <summary><h3> File Walkthrough</h3></summary> <table><thead><tr><th></th><th align="left">Relevant files</th></tr></thead><tbody><tr><td><strong>Bug fix</strong></td><td><table> <tr> <td> <details> <summary><strong>post_install.sh</strong><dd><code>Correct service cleanup and safe config chmod</code> </dd></summary> <hr> ci/install/post_install.sh <ul><li>Invert service cleanup paths correctly.<br> <li> Guard chmod of <code>tyk.conf</code> with file check.</ul> </details> </td> <td><a href="https://github.com/TykTechnologies/tyk/pull/7552/files#diff-16f232a53df862d740ca45c0a608e598b38a7211da8325b9f74ceaecc00280c5">+4/-4</a> </td> </tr> </table></td></tr><tr><td><strong>Enhancement</strong></td><td><table> <tr> <td> <details> <summary><strong>release.yml</strong><dd><code>CI: FIPS images and more robust release flow</code> </dd></summary> <hr> .github/workflows/release.yml <ul><li>Add FIPS docker metadata, CI and prod pushes.<br> <li> Expose <code>fips_tags</code> output from CI.<br> <li> Skip docker in goreleaser when not tagging.<br> <li> Make package upgrade tests resilient to repo issues.</ul> </details> </td> <td><a href="https://github.com/TykTechnologies/tyk/pull/7552/files#diff-87db21a973eed4fef5f32b267aa60fcee5cbdf03c67fafdc2a9b553bb0b15f34">+71/-3</a> </td> </tr> <tr> <td> <details> <summary><strong>Dockerfile.std</strong><dd><code>Streamline std image install and cleanup</code> </dd></summary> <hr> ci/Dockerfile.std <ul><li>Install package via <code>dist/${BUILD_PACKAGE_NAME}...</code> early.<br> <li> Clean logs and apt dirs more precisely.<br> <li> Adjust glob patterns for .deb install/removal.</ul> </details> </td> <td><a href="https://github.com/TykTechnologies/tyk/pull/7552/files#diff-a3b3e9cabd877d0bd0fc8f20a9fdca7f44d102547a5fdfcd398ea01637e5dfae">+5/-5</a> </td> </tr> <tr> <td> <details> <summary><strong>goreleaser.yml</strong><dd><code>Enable boringcrypto experiment for FIPS build</code> </dd></summary> <hr> ci/goreleaser/goreleaser.yml <ul><li>Set GOEXPERIMENT=boringcrypto for FIPS build.<br> <li> Remove unused env placeholder.</ul> </details> </td> <td><a href="https://github.com/TykTechnologies/tyk/pull/7552/files#diff-fb944a05459e4d713bc7541efd6e721cbe992a556353c09c4eb66a8eae9b856e">+1/-1</a> </td> </tr> </table></td></tr></tr></tbody></table> </details> ___ --------- Co-authored-by: Razeen <98765619+Razeen-Abdal-Rahman@users.noreply.github.com> Co-authored-by: Gromit <policy@gromit> Co-authored-by: Leonid Bugaev <leonsbox@gmail.com> Co-authored-by: Razeen <Razeen.Abdal-Rahman@outlook.com>



Description
Carry over changes from gromit into the tyk repo
Related Issue
TT-16131
Motivation and Context
Ensure the tyk repo is in sync as the buildenv for this repo will continue to be
1.24-bullseyewith the addition of a manual pull of the latest go version, this is done upstream when the image is built.This PR carries over other changes from gromit ensuring everything is in sync after this change.