Skip to content

CLID-686, CLID-688: Add integration tests for release signature failure handling and configmap generation - #1472

Open
adolfo-ab wants to merge 1 commit into
openshift:mainfrom
adolfo-ab:CLID-686
Open

CLID-686, CLID-688: Add integration tests for release signature failure handling and configmap generation #1472
adolfo-ab wants to merge 1 commit into
openshift:mainfrom
adolfo-ab:CLID-686

Conversation

@adolfo-ab

@adolfo-ab adolfo-ab commented Jul 13, 2026

Copy link
Copy Markdown
Contributor

Description

Automates OCP-77776 and OCP-76469

Github / Jira issue:

Type of change

Please delete options that are not relevant.

  • Bug fix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)
  • Breaking change (fix or feature that would cause existing functionality to not work as expected)
  • Code Improvements (Refactoring, Performance, CI upgrades, etc)
  • Internal repo assets (diagrams / docs on github repo)
  • This change requires a documentation update on openshift docs

Summary by CodeRabbit

New Features

  • Added validation for generated release signature configuration maps.
  • Added support for skipping release signature configuration maps with the --ignore-release-signature option.

Bug Fixes

  • Improved handling of unavailable release signatures during disk mirroring.
  • The operation now reports a clear error without crashing or producing an incomplete archive.

@openshift-merge-bot

Copy link
Copy Markdown
Contributor

Pipeline controller notification
This repo is configured to use the pipeline controller. Second-stage tests will be triggered either automatically or after lgtm label is added, depending on the repository configuration. The pipeline controller will automatically detect which contexts are required and will utilize /test Prow commands to trigger the second stage.

For optional jobs, comment /test ? to see a list of all defined jobs. To trigger manually all jobs from second stage use /pipeline required command.

This repository is configured in: LGTM mode

@openshift-ci-robot openshift-ci-robot added the jira/valid-reference Indicates that this PR references a valid Jira ticket of any type. label Jul 13, 2026
@openshift-ci-robot

openshift-ci-robot commented Jul 13, 2026

Copy link
Copy Markdown

@adolfo-ab: This pull request references CLID-686 which is a valid jira issue.

Details

In response to this:

Description

Automates OCP-77776

Github / Jira issue:

Type of change

Please delete options that are not relevant.

  • Bug fix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)
  • Breaking change (fix or feature that would cause existing functionality to not work as expected)
  • Code Improvements (Refactoring, Performance, CI upgrades, etc)
  • Internal repo assets (diagrams / docs on github repo)
  • This change requires a documentation update on openshift docs

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the openshift-eng/jira-lifecycle-plugin repository.

@coderabbitai

coderabbitai Bot commented Jul 13, 2026

Copy link
Copy Markdown

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Repository: openshift/coderabbit/.coderabbit.yaml

Review profile: CHILL

Plan: Pro Plus

Run ID: 1661db27-a745-4665-9162-3ef958d10822

📥 Commits

Reviewing files that changed from the base of the PR and between dca7478 and d25464a.

⛔ Files ignored due to path filters (1)
  • tests/integration/go.sum is excluded by !**/*.sum
📒 Files selected for processing (2)
  • tests/integration/go.mod
  • tests/integration/signature_test.go
🚧 Files skipped from review as they are similar to previous changes (2)
  • tests/integration/go.mod
  • tests/integration/signature_test.go

Walkthrough

Expands integration coverage for release signature retrieval failures, generated ConfigMap contents, cached signatures, and suppression with --ignore-release-signature.

Changes

Release signature integration coverage

Layer / File(s) Summary
Signature scenarios and ConfigMap validation
tests/integration/signature_test.go
Adds checks for generated JSON/YAML ConfigMaps and cached signatures. Tests unreachable signature endpoints and verifies that --ignore-release-signature prevents ConfigMap files.
Integration test dependencies
tests/integration/go.mod
Adds Kubernetes API and YAML packages as direct dependencies and updates the indirect dependency list.

Estimated code review effort: 2 (Simple) | ~10 minutes

Suggested reviewers: r4f4, aguidirh

🚥 Pre-merge checks | ✅ 13 | ❌ 2

❌ Failed checks (2 warnings)

Check name Status Explanation Resolution
Test Structure And Quality ⚠️ Warning Tests lack descriptive assertion messages at lines 105, 123, 162, 163, 172, 186, contrary to check requirement 4. Tests 2 and 3 test multiple unrelated behaviors (mirror, verification, delete, clea... Add messages to all Expect() statements at lines 105, 123, 162, 163, 172, 186. Split tests 2 and 3 into separate focused tests for mirroring, configmap generation, and deletion phases.
Ipv6 And Disconnected Network Test Compatibility ⚠️ Warning Test includes hardcoded IPv4 localhost address (127.0.0.1:1) at line 110. IPv6-only environments require [::1] instead. Additionally, tests reference quay.io image registries, requiring public inte... Replace http://127.0.0.1:1/ with net.JoinHostPort() for IPv6 compatibility. Use correctCIDRFamily() or dynamic IP family detection. Add [Skipped:Disconnected] tag if external registry access is required.
✅ Passed checks (13 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title clearly summarizes the added integration tests for release signature failure handling and ConfigMap generation.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
Stable And Deterministic Test Names ✅ Passed All Ginkgo titles in the changed test are static string literals; none includes runtime values, timestamps, generated identifiers, node or namespace names, IP addresses, or random data.
Microshift Test Compatibility ✅ Passed The added Ginkgo tests use core Kubernetes ConfigMap types and local filesystem/oc-mirror operations; they reference no unavailable OpenShift APIs, namespaces, or MicroShift-unsupported assumptions.
Single Node Openshift (Sno) Test Compatibility ✅ Passed The added Ginkgo tests exercise local oc-mirror files, an unreachable loopback URL, and a test registry; they do not assume multiple nodes, HA roles, scheduling, failover, or topology.
Topology-Aware Scheduling Compatibility ✅ Passed The pull request changes only integration tests and Go dependencies; it adds no deployment manifests, operators, controllers, or scheduling constraints.
Ote Binary Stdout Contract ✅ Passed The pull request adds test code within Ginkgo test blocks and helper functions with no process-level stdout writes. No fmt.Print, log.Print, klog, or os.Stdout calls were found in the modified files.
No-Weak-Crypto ✅ Passed No weak cryptographic algorithms (MD5, SHA1, DES, RC4, 3DES, Blowfish, ECB), custom implementations, or non-constant-time secret comparisons detected in modified files.
Container-Privileges ✅ Passed The PR changes only Go integration tests and dependencies; added lines contain no privileged, hostPID/Network/IPC, SYS_ADMIN, allowPrivilegeEscalation, or root settings.
No-Sensitive-Data-In-Logs ✅ Passed The new test adds no credential logging; diagnostics expose only fixed loopback URL, temporary paths, digests, filenames, and public release signatures.
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests

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.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@openshift-ci
openshift-ci Bot requested review from aguidirh and r4f4 July 13, 2026 10:19
@openshift-ci

openshift-ci Bot commented Jul 13, 2026

Copy link
Copy Markdown

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: adolfo-ab

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

@openshift-ci openshift-ci Bot added the approved Indicates a PR has been approved by an approver from all required OWNERS files. label Jul 13, 2026
@adolfo-ab adolfo-ab changed the title CLID-686: Verify we fail gracefully when failing to retrieve release signatures CLID-686, CLID-688: Add integration tests for release signature failure handling and configmap generation Jul 13, 2026
@openshift-ci-robot

openshift-ci-robot commented Jul 13, 2026

Copy link
Copy Markdown

@adolfo-ab: This pull request references CLID-686 which is a valid jira issue.

This pull request references CLID-688 which is a valid jira issue.

Details

In response to this:

Description

Automates OCP-77776

Github / Jira issue:

Type of change

Please delete options that are not relevant.

  • Bug fix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)
  • Breaking change (fix or feature that would cause existing functionality to not work as expected)
  • Code Improvements (Refactoring, Performance, CI upgrades, etc)
  • Internal repo assets (diagrams / docs on github repo)
  • This change requires a documentation update on openshift docs

Summary by CodeRabbit

  • Bug Fixes
  • Improved handling of release signature retrieval failures during disk mirroring.
  • The operation now reports a clear error without crashing or producing an incomplete archive.

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the openshift-eng/jira-lifecycle-plugin repository.

@openshift-ci-robot

openshift-ci-robot commented Aug 4, 2026

Copy link
Copy Markdown

@adolfo-ab: This pull request references CLID-686 which is a valid jira issue.

Warning: The referenced jira issue has an invalid target version for the target branch this PR targets: expected the task to target either version "5.0." or "openshift-5.0.", but it targets "openshift-5.1" instead.

This pull request references CLID-688 which is a valid jira issue.

Warning: The referenced jira issue has an invalid target version for the target branch this PR targets: expected the task to target either version "5.0." or "openshift-5.0.", but it targets "openshift-5.1" instead.

Details

In response to this:

Description

Automates OCP-77776 and OCP-76469

Github / Jira issue:

Type of change

Please delete options that are not relevant.

  • Bug fix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)
  • Breaking change (fix or feature that would cause existing functionality to not work as expected)
  • Code Improvements (Refactoring, Performance, CI upgrades, etc)
  • Internal repo assets (diagrams / docs on github repo)
  • This change requires a documentation update on openshift docs

Summary by CodeRabbit

New Features

  • Added validation for generated release signature configuration maps.
  • Added support for skipping release signature configuration maps with the --ignore-release-signature option.

Bug Fixes

  • Improved handling of unavailable release signatures during disk mirroring.
  • The operation now reports a clear error without crashing or producing an incomplete archive.

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the openshift-eng/jira-lifecycle-plugin repository.

@openshift-ci

openshift-ci Bot commented Aug 4, 2026

Copy link
Copy Markdown

@adolfo-ab: all tests passed!

Full PR test history. Your PR dashboard.

Details

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository. I understand the commands that are listed here.

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. jira/valid-reference Indicates that this PR references a valid Jira ticket of any type.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants