Add docker images built using FIPS binaries#894
Conversation
🔍 Code Analysis ResultsAn analysis of the pull request is provided below, based on the submitted changes. 1. Change Impact AnalysisWhat this PR accomplishesThis pull request introduces the capability to build and release FIPS-compliant Docker images for Tyk Pump. This is a new feature driven by a customer requirement for environments that need FIPS compliance. The key outcome is a new Docker image, Key technical changes introduced
Affected system components
2. Architecture VisualizationThe following diagram illustrates the updated build and release process, highlighting the new FIPS image pipeline alongside the existing standard one. graph TD
subgraph "GitHub Actions: release.yml"
A[Git Tag Push] --> B{Prepare Job};
B --> C[Run GoReleaser];
subgraph "GoReleaser Build"
C --> D{Build Binaries};
D -- GOEXPERIMENT=boringcrypto --> E[tyk-pump-fips amd64 binary];
D -- Standard build --> F[tyk-pump std amd64/arm64 binaries];
end
subgraph "Docker Image Build & Push"
C --> G{Build Docker Images};
G -- Based on FIPS binary --> H(Build tyk-pump-fips Image);
G -- Based on std binaries --> I(Build tyk-pump Images);
H --> J[Push to tykio/tyk-pump-fips];
I --> K[Push to tykio/tyk-pump-docker-pub];
end
subgraph "Docker Manifests"
J --> L[Create Single-Arch FIPS Manifest];
K --> M[Create Multi-Arch Standard Manifest];
end
end
subgraph "Artifacts"
L --> N[Image: tykio/tyk-pump-fips:vX.Y.Z-fips];
M --> O[Image: tykio/tyk-pump-docker-pub:vX.Y.Z];
end
style E fill:#cce5ff,stroke:#333,stroke-width:2px
style H fill:#cce5ff,stroke:#333,stroke-width:2px
style J fill:#cce5ff,stroke:#333,stroke-width:2px
style L fill:#cce5ff,stroke:#333,stroke-width:2px
style N fill:#cce5ff,stroke:#333,stroke-width:2px
Diagram Explanation:
Powered by Visor from Probelabs Last updated: 2025-09-23T18:04:45.822Z | Triggered by: synchronize | Commit: 571a7c4 |
🔍 Code Analysis ResultsSecurity Issues (3)
Performance Issues (2)
Quality Issues (2)
Style Issues (2)
Powered by Visor from Probelabs Last updated: 2025-09-23T18:04:46.858Z | Triggered by: synchronize | Commit: 571a7c4 |
Description
Auto generated changes by gromit to add fips compliant docker images to releases. These changes are in response to a customer request for fips compliant docker images. These are provided by using our existing fips binaries in a distroless image. THESE ARE NOT FIPS VALIDATED IMAGES. see this ticket. Changes to FIPS documentation may be required.
Related Issue
There are also PRs with the same branch name on the following repos tyk tyk-sink tyk-analytics
Motivation and Context
These images were request to be included in regular releases by a client.
How This Has Been Tested
goreleaser was run locally, everything seems okay a fips image is built using the fips binary. More end to end testing is needed with the other fips components.
Types of changes
Checklist
fork, don't request your
master!masterbranch (left side). Also, you should startyour branch off our latest
master.go mod tidy && go mod vendorgo fmt -sgo vet