bootstrap recert over konflux#182
bootstrap recert over konflux#182openshift-merge-bot[bot] merged 1 commit intorh-ecosystem-edge:mainfrom rauhersu:main.konflux.pipelines
Conversation
|
[APPROVALNOTIFIER] This PR is APPROVED This pull-request has been approved by: rauhersu The full list of commands accepted by this bot can be found here. The pull request process is described here DetailsNeeds approval from an approver in each of these files:
Approvers can indicate their approval by writing |
WalkthroughThe changes update the Dockerfile to refine subscription-manager handling during both build and runtime stages by adjusting repository enablement and adding unregistration steps. In addition, two new Tekton PipelineRun configuration files have been introduced—one for pull-request events and one for push events—to automate container image builds with tasks for initializing the environment, cloning repositories, prefetching dependencies, building images, and running various checks. Changes
Sequence Diagram(s)sequenceDiagram
participant T as Trigger (PR Event)
participant P as PipelineRun
participant I as Init Task
participant C as Clone Task
participant D as Dependency Task
participant B as Build Task
participant V as Validation Task
T->>P: Start Pipeline (PR)
P->>I: Initialize build environment
I->>C: Clone repository
C->>D: Prefetch dependencies
D->>B: Build container image
B->>V: Run security & image checks
V->>P: Return build results
sequenceDiagram
participant T as Trigger (Push Event)
participant P as PipelineRun
participant I as Init Task
participant C as Clone Task
participant D as Dependency Task
participant B as Build Task
participant S as Scan & Tag Task
participant PU as Push Task
T->>P: Start Pipeline (Push)
P->>I: Initialize build environment
I->>C: Clone repository
C->>D: Prefetch dependencies
D->>B: Build container image
B->>S: Execute scans and tagging
S->>PU: Conditional push of artifacts
PU->>P: Complete pipeline execution
Possibly related PRs
Suggested reviewers
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. 🪧 TipsChatThere are 3 ways to chat with CodeRabbit:
Note: Be mindful of the bot's finite context window. It's strongly recommended to break down tasks such as reading entire modules into smaller chunks. For a focused discussion, use review comments to chat about specific files and their changes, instead of using the PR comments. CodeRabbit Commands (Invoked using PR comments)
Other keywords and placeholders
CodeRabbit Configuration File (
|
There was a problem hiding this comment.
Actionable comments posted: 0
🧹 Nitpick comments (3)
.tekton/recert-4-19-pull-request.yaml (2)
1-12: Annotation Configuration and Multiline Expression
The metadata annotations (lines 4–12) correctly use substitution variables (e.g.{{revision}},{{pull_request_number}}) to dynamically inject values. However, thepipelinesascode.tekton.dev/on-cel-expressionis split over two lines (lines 11–12). To ensure YAML correctly treats this as a single string, consider either joining the expression into one line or using a YAML folded scalar (for example, using the>indicator).
596-614: Workspace and Volume Claim Configuration
The workspace section (lines 596–614) is well defined with a volume claim template requesting 1Gi of storage. This allows tasks to share data effectively. As the pipeline evolves, consider monitoring storage needs to ensure that resource allocation remains optimal..tekton/recert-4-19-push.yaml (1)
600-614: Workspace and Volume Claim Template Consistency
The workspace configuration at the end of the file (lines 600–614) properly defines workspaces and includes a volume claim template to allocate persistent storage. This is essential for sharing data among tasks in the pipeline. Keep an eye on storage requirements as the pipeline’s complexity increases.
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro
📒 Files selected for processing (3)
.konflux/Dockerfile(1 hunks).tekton/recert-4-19-pull-request.yaml(1 hunks).tekton/recert-4-19-push.yaml(1 hunks)
⏰ Context from checks skipped due to timeout of 90000ms (2)
- GitHub Check: Red Hat Konflux / recert-4-19-on-pull-request
- GitHub Check: build
🔇 Additional comments (5)
.tekton/recert-4-19-pull-request.yaml (1)
21-37: Pipeline Parameters and Initial Task Setup
The pipeline parameters (lines 21–31) and the initial portion of the task definitions are comprehensive and clearly defined. The substitution variables (such as{{source_url}},{{revision}}, etc.) appear consistent across the configuration. Please verify that all referenced values propagate correctly throughout the tasks and that task dependencies match the intended execution order..konflux/Dockerfile (2)
6-16: Build Stage Subscription-Manager Handling
In the build stage, the updated commands (lines 6–11) now register the subscription manager, refresh its state, and selectively enable the necessary repositories before installing build-time packages. Following the installation ofrust-toolsetandprotobuf-compiler(lines 13–16), the subscription manager is unregistered to ensure clean-up. This flow improves repository management and minimizes potential side effects from lingering registrations.
23-32: Runtime Stage Repository Management
The runtime stage (lines 23–32) mirrors the improvements made in the build stage. The image now installssubscription-manager, performs registration and repository refresh, and enables only the base OS repository required for runtime operations (line 27). The subsequent installation ofopenssh-clientsis immediately followed by a clean-up and unregistration step, which is a good practice..tekton/recert-4-19-push.yaml (2)
1-12: Push Pipeline Metadata and Expression Formatting
The metadata annotations in this push pipeline (lines 1–12) are similar to those in the pull-request configuration with appropriate adjustments (such as settingpipelinesascode.tekton.dev/cancel-in-progressto"false"). As with the pull-request file, note that theon-cel-expressionspans two lines. Combining the condition into a single line or using a multiline scalar format will help ensure proper YAML parsing.
20-120: Comprehensive Task and Parameter Configuration
The pipeline’s parameter definitions and task list (lines 20–120 and beyond) are extensive and appear to cover all necessary build, test, and scanning operations for a push-triggered event. The use ofwhenconditions, task-specific parameters, and dependency ordering demonstrates a thoughtful design. Please verify that all referenced task bundles and resolvers (e.g.buildah,task-clair-scan, etc.) are up-to-date and available in the execution environment.
|
/lgtm |
fd11399
into
rh-ecosystem-edge:main
Summary by CodeRabbit