Skip to content

CNF-25916: Add TLS scanner CI jobs for PTP operator - #82254

Open
jzding wants to merge 1 commit into
openshift:mainfrom
jzding:tls-ptp
Open

CNF-25916: Add TLS scanner CI jobs for PTP operator#82254
jzding wants to merge 1 commit into
openshift:mainfrom
jzding:tls-ptp

Conversation

@jzding

@jzding jzding commented Jul 21, 2026

Copy link
Copy Markdown
Contributor

Summary

Add TLS compliance scanning to PTP operator CI per OCPSTRAT-2611.

Combined tls-scan test

A single test covers both TLS 1.3 adherence (StrictAllComponents) and PQC readiness (PQC_CHECK=true) in one cluster deploy:

  1. tls-13 — configures Modern TLS profile with StrictAllComponents adherence
  2. wait-ptp-tls-restart — waits for PTP operator to restart (the SecurityProfileWatcher detects the profile change and self-terminates for OLM to restart) and the daemonset to re-roll with updated kube-rbac-proxy TLS config
  3. tls-scanner-run — scans openshift-ptp namespace with PQC check enabled

Presubmit (on-demand)

  • tls-scan: always_run: false, optional: true
  • Scoped to openshift-ptp namespace, SCANNER_CPU=2

Periodic (daily 03:00 UTC, one branch per weekday)

Branch Schedule
4.22 Monday
4.23 Tuesday
5.0 Wednesday
5.1 Thursday
main Friday

Configuration

  • tls-scanner-tool base image from the official tls-scanner namespace
  • optional-operators-ci-aws workflow (PTP deploys from ci-index)
  • All branches have operator: section with bundleci.Dockerfile, so ci-index is available for all

Scan results analysis

Rehearsal results show PTP's own endpoints are compliant:

  • Webhook (9443): TLS 1.3 only, PQC capable (X25519MLKEM768)
  • kube-rbac-proxy (8443): TLS 1.3 only (when cert available)
  • Health/readiness (8080/8081): plaintext, expected for pod-internal probes

The scanner also reports 14 non-compliant kube-rbac-proxy ports (9001, 9103, 9105, 9108) that are false positives — these belong to other OCP components (node-exporter, machine-config-daemon, network operator) sharing the same host network, since the linuxptp-daemon DaemonSet uses hostNetwork: true. This is a known tls-scanner limitation tracked in openshift/tls-scanner#85.

Outstanding issues in tls-scanner

  • openshift/release#82522tls-scanner-run cleanup trap crashes with OWNS_NAMESPACE: unbound variable when the scanner exits with code 1. Also fixes Failed pod handling and fallback wait logic. Fix submitted.
  • openshift/tls-scanner#85 — scanner reports unrelated host-network ports as belonging to the scanned pod, causing false positive TLS compliance failures for operators using hostNetwork: true.

Changes

File Change
openshift-ptp-operator-release-4.22.yaml Add tls-scanner-tool base image + tls-scan + tls-scan-periodic with wait step
openshift-ptp-operator-release-4.23.yaml Same
openshift-ptp-operator-release-5.0.yaml Same
openshift-ptp-operator-release-5.1.yaml Same
openshift-ptp-operator-main.yaml Same

Test plan

  • CI config validation passes
  • Rehearsal: tls-scan ran successfully — PTP endpoints compliant, false positives from hostNetwork identified
  • Periodic jobs appear in job history after merge

🤖 Generated with Claude Code

@coderabbitai

coderabbitai Bot commented Jul 21, 2026

Copy link
Copy Markdown
Contributor

Note

Reviews paused

It looks like this branch is under active development. To avoid overwhelming you with review comments due to an influx of new commits, CodeRabbit has automatically paused this review. You can configure this behavior by changing the reviews.auto_review.auto_pause_after_reviewed_commits setting.

Use the following commands to manage reviews:

  • @coderabbitai resume to resume automatic reviews.
  • @coderabbitai review to trigger a single review.

Use the checkboxes below for quick actions:

  • ▶️ Resume reviews
  • 🔍 Trigger review

Walkthrough

The PTP release CI adds a TLS scanner image dependency, scan and TLS 1.3 settings, and scanner test references. The Telco5G PTP test script conditionally runs the scanner, publishes artifacts, records failures, and cleans up resources.

Changes

PTP TLS scanner integration

Layer / File(s) Summary
Scanner image and CI workflow wiring
ci-operator/config/openshift/ptp-operator/openshift-ptp-operator-release-5.0.yaml, ci-operator/step-registry/telco5g/ptp/tests/telco5g-ptp-tests-ref.yaml
Defines the tls-scanner-tool image, configures scan/PQC and strict TLS 1.3 adherence settings, adds tls-13 and tls-scanner-run, and wires the scanner dependency into the PTP test step.
Scanner execution and artifact collection
ci-operator/step-registry/telco5g/ptp/tests/telco5g-ptp-tests-commands.sh
Conditionally creates scanner resources, runs the scanner pod, copies scan outputs and JUnit XML into ARTIFACT_DIR, records failures, and cleans up resources.

Estimated code review effort: 3 (Moderate) | ~20 minutes

Sequence Diagram(s)

sequenceDiagram
  participant CI
  participant PTPTests
  participant OpenShift
  participant TLSScannerPod
  participant Artifacts
  CI->>PTPTests: run configured TLS scan workflow
  PTPTests->>OpenShift: create scanner namespace and resources
  PTPTests->>TLSScannerPod: start TLS scan
  TLSScannerPod-->>PTPTests: report completion status
  PTPTests->>Artifacts: copy scan outputs and JUnit XML
  PTPTests->>OpenShift: delete scanner resources
Loading

Possibly related PRs

Suggested reviewers: jkyros

🚥 Pre-merge checks | ✅ 15
✅ Passed checks (15 passed)
Check name Status Explanation
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 PASS: The PR only adds static CI/job labels (tls-scan, tls-13, tls-scanner-run) and shell/YAML config; no Ginkgo It/Describe/Context/When titles changed.
Test Structure And Quality ✅ Passed No Ginkgo tests were added or modified; the PR only touches CI YAML and shell steps, so the Ginkgo-specific checklist is not applicable.
Microshift Test Compatibility ✅ Passed No new Ginkgo e2e tests were added; the PR only changes CI YAML and shell step scripts, with no It/Describe/Context additions.
Single Node Openshift (Sno) Test Compatibility ✅ Passed No new Ginkgo specs were added; the tls-13/tls-scanner steps only patch cluster APIs or scan all pods and don’t assume multiple nodes.
Topology-Aware Scheduling Compatibility ✅ Passed Only CI YAML and a shell step were added; the new tls-scanner pod uses no nodeSelector/affinity/topology spread, and no topology-aware scheduling logic was introduced.
Ote Binary Stdout Contract ✅ Passed PASS: The PR only changes ci-operator YAML and a bash step script; no Go OTE entrypoints (main/TestMain/BeforeSuite) or stdout-to-JSON code were added.
Ipv6 And Disconnected Network Test Compatibility ✅ Passed The added operator-e2e flow uses cluster-scoped tls-13/tls-scanner steps and a release-payload scanner image; no hardcoded IPv4, public hosts, or IPv4-only parsing was added.
No-Weak-Crypto ✅ Passed Touched lines only add TLS-scanner config/RBAC; scans found no MD5/SHA1/DES/RC4/3DES/Blowfish/ECB, custom crypto, or secret comparisons.
Container-Privileges ✅ Passed The new TLS-scanner Pod has no privileged/host* settings or allowPrivilegeEscalation; no added lines in the patch match the forbidden flags.
No-Sensitive-Data-In-Logs ✅ Passed Added logs only mention namespace/version/status; no passwords, tokens, PII, or hostnames are emitted in the new TLS scanner paths.
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title accurately summarizes the main change: adding TLS scanner CI jobs for the PTP operator.
✨ 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 commented Jul 21, 2026

Copy link
Copy Markdown
Contributor

@jzding: GitHub didn't allow me to request PR reviews from the following users: openshift/telco-5g-ptp.

Note that only openshift members and repo collaborators can review this PR, and authors cannot review their own PRs.

Details

In response to this:

Summary

Add TLS compliance scanning to PTP operator CI per OCPSTRAT-2611:

  1. Presubmit (openshift-ptp-operator-release-5.0.yaml): Add tls-scanner-run as a second test step in the existing operator-e2e job. Runs after e2e validation while the operator is still deployed via OLM. Scoped to openshift-ptp namespace only.

  2. Nightly (telco5g-ptp-tests-commands.sh): Add inline TLS scanner execution after conformance tests complete and before make undeploy. Uses the PULL_SPEC_TLS_SCANNER_TOOL image (resolved from the tls-scanner-tool base image already in the nightly config). Guarded by env var check so configs without the base image are unaffected.

Changes

File Change
ci-operator/config/openshift/ptp-operator/openshift-ptp-operator-release-5.0.yaml Add tls-scanner-tool base image, add tls-scanner-run ref + SCAN_NAMESPACE to operator-e2e
ci-operator/step-registry/telco5g/ptp/tests/telco5g-ptp-tests-commands.sh Add inline TLS scanner block before make undeploy
ci-operator/step-registry/telco5g/ptp/tests/telco5g-ptp-tests-ref.yaml Add PULL_SPEC_TLS_SCANNER_TOOL dependency

Test plan

  • Presubmit: verify operator-e2e runs both e2e and tls-scanner steps
  • Nightly: verify TLS scan artifacts appear alongside PTP test results
  • Check junit_tls_scan.xml renders in Spyglass

/cc @openshift/telco-5g-ptp

🤖 Generated with Claude Code

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.

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 2

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In `@ci-operator/step-registry/telco5g/ptp/tests/telco5g-ptp-tests-commands.sh`:
- Around line 532-533: Replace the cluster-admin and privileged SCC grants on
the default service account in the telco5g PTP setup with a dedicated scanner
service account, granting only the validated permissions required by the
scanner. Add cleanup in the script’s EXIT trap to revoke any exceptional
SCC/RBAC grants before deleting ${TLS_NS}, ensuring recreated tls-scanner
workloads cannot retain cluster-wide access.
- Around line 528-585: Update the TLS scan block around the tls-scanner Pod
lifecycle to track failures from namespace setup, Pod creation/execution,
timeout, artifact collection, and JUnit generation instead of allowing them
through set +e or unconditional || true. Require junit_tls_scan.xml after
collection, register cleanup of TLS_NS via a trap, and exit non-zero after
cleanup when any scan step fails while preserving result collection.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Repository YAML (base), Central YAML (inherited)

Review profile: CHILL

Plan: Enterprise

Run ID: fcb500db-5c55-40f5-af10-2552bb102798

📥 Commits

Reviewing files that changed from the base of the PR and between a7dd925 and 68bb590.

📒 Files selected for processing (3)
  • ci-operator/config/openshift/ptp-operator/openshift-ptp-operator-release-5.0.yaml
  • ci-operator/step-registry/telco5g/ptp/tests/telco5g-ptp-tests-commands.sh
  • ci-operator/step-registry/telco5g/ptp/tests/telco5g-ptp-tests-ref.yaml

Comment thread ci-operator/step-registry/telco5g/ptp/tests/telco5g-ptp-tests-commands.sh Outdated
Comment thread ci-operator/step-registry/telco5g/ptp/tests/telco5g-ptp-tests-commands.sh Outdated
@openshift-ci openshift-ci Bot added the approved Indicates a PR has been approved by an approver from all required OWNERS files. label Jul 21, 2026
@jzding

jzding commented Jul 21, 2026

Copy link
Copy Markdown
Contributor Author

/pj-rehearse pull-ci-openshift-ptp-operator-release-5.0-operator-e2e

@openshift-merge-bot

Copy link
Copy Markdown
Contributor

@jzding: now processing your pj-rehearse request. Please allow up to 10 minutes for jobs to trigger or cancel.

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In `@ci-operator/step-registry/telco5g/ptp/tests/telco5g-ptp-tests-commands.sh`:
- Around line 525-526: Update the TLS scanner condition in the version-gating
block to require an explicit T5CI_VERSION matching 4.22 or newer, excluding
empty values and 4.0–4.9. Preserve the existing PULL_SPEC_TLS_SCANNER_TOOL
requirement and ensure unsupported versions cannot enable scanning.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Repository YAML (base), Central YAML (inherited)

Review profile: CHILL

Plan: Enterprise

Run ID: c89a5a39-1b1d-46d3-aca3-fae08e2c327c

📥 Commits

Reviewing files that changed from the base of the PR and between 68bb590 and 9970cb5.

📒 Files selected for processing (3)
  • ci-operator/config/openshift/ptp-operator/openshift-ptp-operator-release-5.0.yaml
  • ci-operator/step-registry/telco5g/ptp/tests/telco5g-ptp-tests-commands.sh
  • ci-operator/step-registry/telco5g/ptp/tests/telco5g-ptp-tests-ref.yaml
🚧 Files skipped from review as they are similar to previous changes (2)
  • ci-operator/step-registry/telco5g/ptp/tests/telco5g-ptp-tests-ref.yaml
  • ci-operator/config/openshift/ptp-operator/openshift-ptp-operator-release-5.0.yaml

Comment thread ci-operator/step-registry/telco5g/ptp/tests/telco5g-ptp-tests-commands.sh Outdated
@jzding
jzding force-pushed the tls-ptp branch 2 times, most recently from f42746a to 511ac4b Compare July 22, 2026 01:39

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In
`@ci-operator/config/openshift/ptp-operator/openshift-ptp-operator-release-5.0.yaml`:
- Around line 97-136: Run make update after adding the tls-pqc-readiness and
tls13-adherence test definitions, then include all regenerated Prow and CI
configuration outputs so both entries are registered consistently with the new
metadata.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Repository YAML (base), Central YAML (inherited)

Review profile: CHILL

Plan: Enterprise

Run ID: 54a9e52d-d831-4540-8ac3-d968e70ae73a

📥 Commits

Reviewing files that changed from the base of the PR and between 9970cb5 and f42746a.

📒 Files selected for processing (3)
  • ci-operator/config/openshift/ptp-operator/openshift-ptp-operator-release-5.0.yaml
  • ci-operator/step-registry/telco5g/ptp/tests/telco5g-ptp-tests-commands.sh
  • ci-operator/step-registry/telco5g/ptp/tests/telco5g-ptp-tests-ref.yaml
🚧 Files skipped from review as they are similar to previous changes (2)
  • ci-operator/step-registry/telco5g/ptp/tests/telco5g-ptp-tests-ref.yaml
  • ci-operator/step-registry/telco5g/ptp/tests/telco5g-ptp-tests-commands.sh

@jzding

jzding commented Jul 22, 2026

Copy link
Copy Markdown
Contributor Author

/pj-rehearse pull-ci-openshift-ptp-operator-release-5.0-tls-pqc-readiness

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In `@ci-operator/step-registry/telco5g/ptp/tests/telco5g-ptp-tests-commands.sh`:
- Around line 544-546: Update the provisioning flow around TLS_SCANNER_CRB to
bind the scanner service account to a scanner-specific least-privilege
ClusterRole instead of cluster-admin. Immediately after provisioning, register a
guarded EXIT trap that revokes the RBAC binding and cleans up the scanner
namespace on every exit path, while preserving safe behavior if resources were
not created.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Repository YAML (base), Central YAML (inherited)

Review profile: CHILL

Plan: Enterprise

Run ID: 4261c6d0-4ed0-43e4-b984-bfd1426971a0

📥 Commits

Reviewing files that changed from the base of the PR and between f42746a and f58e132.

⛔ Files ignored due to path filters (1)
  • ci-operator/jobs/openshift/ptp-operator/openshift-ptp-operator-release-5.0-presubmits.yaml is excluded by !ci-operator/jobs/**
📒 Files selected for processing (3)
  • ci-operator/config/openshift/ptp-operator/openshift-ptp-operator-release-5.0.yaml
  • ci-operator/step-registry/telco5g/ptp/tests/telco5g-ptp-tests-commands.sh
  • ci-operator/step-registry/telco5g/ptp/tests/telco5g-ptp-tests-ref.yaml
🚧 Files skipped from review as they are similar to previous changes (1)
  • ci-operator/step-registry/telco5g/ptp/tests/telco5g-ptp-tests-ref.yaml

Comment thread ci-operator/step-registry/telco5g/ptp/tests/telco5g-ptp-tests-commands.sh Outdated
@openshift-merge-bot

Copy link
Copy Markdown
Contributor

@jzding: your /pj-rehearse request was not processed because the request waited in queue for longer than 5 minutes. Please retry in a few minutes.

@jzding

jzding commented Jul 22, 2026

Copy link
Copy Markdown
Contributor Author

/test ci/prow/config

@jzding

jzding commented Jul 22, 2026

Copy link
Copy Markdown
Contributor Author

/test config

1 similar comment
@jzding

jzding commented Jul 22, 2026

Copy link
Copy Markdown
Contributor Author

/test config

@jzding

jzding commented Jul 22, 2026

Copy link
Copy Markdown
Contributor Author

/pj-rehearse pull-ci-openshift-ptp-operator-release-5.0-tls-pqc-readiness

@openshift-merge-bot

Copy link
Copy Markdown
Contributor

@jzding: now processing your pj-rehearse request. Please allow up to 10 minutes for jobs to trigger or cancel.

@jzding

jzding commented Jul 22, 2026

Copy link
Copy Markdown
Contributor Author

/pj-rehearse periodic-ci-openshift-release-main-nightly-4.22-e2e-telco5g-ptp

@openshift-merge-bot

Copy link
Copy Markdown
Contributor

@jzding: now processing your pj-rehearse request. Please allow up to 10 minutes for jobs to trigger or cancel.

@jzding
jzding force-pushed the tls-ptp branch 2 times, most recently from 37db75e to 980d9e7 Compare July 22, 2026 19:55
@jzding

jzding commented Jul 23, 2026

Copy link
Copy Markdown
Contributor Author

/test generated-config

@jzding

jzding commented Jul 23, 2026

Copy link
Copy Markdown
Contributor Author

/pj-rehearse pull-ci-openshift-ptp-operator-release-5.0-operator-e2e

@jzding

jzding commented Jul 27, 2026

Copy link
Copy Markdown
Contributor Author

/pj-rehearse periodic-ci-openshift-release-main-nightly-5.0-e2e-telco5g-ptp-tls-scan

@openshift-merge-bot

Copy link
Copy Markdown
Contributor

@jzding: now processing your pj-rehearse request. Please allow up to 10 minutes for jobs to trigger or cancel.

@jzding

jzding commented Jul 27, 2026

Copy link
Copy Markdown
Contributor Author

/pj-rehearse pull-ci-openshift-ptp-operator-release-5.0-tls-scan

@openshift-merge-bot

Copy link
Copy Markdown
Contributor

@jzding: now processing your pj-rehearse request. Please allow up to 10 minutes for jobs to trigger or cancel.

@openshift-merge-bot

Copy link
Copy Markdown
Contributor

@jzding: job(s): periodic-ci-openshift-release-main-nightly-5.0-e2e-telco5g-ptp-tls-scan either don't exist or were not found to be affected, and cannot be rehearsed

@jzding

jzding commented Jul 27, 2026

Copy link
Copy Markdown
Contributor Author

/pj-rehearse periodic-ci-openshift-ptp-operator-release-5.0-tls-scan-periodic

@openshift-merge-bot

Copy link
Copy Markdown
Contributor

@jzding: now processing your pj-rehearse request. Please allow up to 10 minutes for jobs to trigger or cancel.

@jzding jzding changed the title Add TLS scanner CI jobs for PTP operator CNF-25916: Add TLS scanner CI jobs for PTP operator Jul 28, 2026
@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 28, 2026
@openshift-ci-robot

openshift-ci-robot commented Jul 28, 2026

Copy link
Copy Markdown
Contributor

@jzding: This pull request references CNF-25916 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 story to target the "5.0.0" version, but no target version was set.

Details

In response to this:

Summary

Add TLS compliance scanning to PTP operator CI per OCPSTRAT-2611, following the patterns from OADP (PR #79196) and gcp-filestore (PR #81917).

Combined tls-scan test

A single test covers both TLS 1.3 adherence (StrictAllComponents) and PQC readiness (PQC_CHECK=true) in one cluster deploy. The tls-13 step configures Modern TLS profile with adherence, then tls-scanner-run scans with PQC check enabled.

Presubmit (on-demand)

  • tls-scan: always_run: false, optional: true
  • Deploys PTP operator via OLM (ci-index), runs tls-13tls-scanner-run
  • Scoped to openshift-ptp namespace, SCANNER_CPU=2

Periodic (every Saturday, staggered 3 hours)

Branch Schedule (UTC)
4.22 Saturday 00:00
4.23 Saturday 03:00
5.0 Saturday 06:00
5.1 Saturday 09:00
main Saturday 12:00

Configuration

  • tls-scanner-tool base image from the official tls-scanner namespace
  • optional-operators-ci-aws workflow (PTP deploys from ci-index — no standard catalog dependency)
  • All branches have operator: section with bundleci.Dockerfile, so ci-index is available for all

Changes

File Change
openshift-ptp-operator-release-4.22.yaml Add tls-scanner-tool base image + tls-scan + tls-scan-periodic
openshift-ptp-operator-release-4.23.yaml Same
openshift-ptp-operator-release-5.0.yaml Same
openshift-ptp-operator-release-5.1.yaml Same
openshift-ptp-operator-main.yaml Same

Test plan

  • CI config validation passes
  • Rehearsal: trigger tls-scan on a ptp-operator PR
  • Periodic jobs appear in job history after merge

🤖 Generated with Claude Code

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.

@jzding
jzding force-pushed the tls-ptp branch 3 times, most recently from dfe6f59 to 8fe7bb6 Compare July 28, 2026 02:18
@jzding

jzding commented Jul 28, 2026

Copy link
Copy Markdown
Contributor Author

/pj-rehearse periodic-ci-openshift-ptp-operator-release-5.0-tls-scan-periodic

@openshift-merge-bot

Copy link
Copy Markdown
Contributor

@jzding: now processing your pj-rehearse request. Please allow up to 10 minutes for jobs to trigger or cancel.

@jzding

jzding commented Jul 28, 2026

Copy link
Copy Markdown
Contributor Author

/pj-rehearse pull-ci-openshift-ptp-operator-release-5.0-tls-scan

@openshift-merge-bot

Copy link
Copy Markdown
Contributor

@jzding: now processing your pj-rehearse request. Please allow up to 10 minutes for jobs to trigger or cancel.

@jzding

jzding commented Jul 28, 2026

Copy link
Copy Markdown
Contributor Author

/pj-rehearse periodic-ci-openshift-ptp-operator-main-tls-scan-periodic

@openshift-merge-bot

Copy link
Copy Markdown
Contributor

@jzding: now processing your pj-rehearse request. Please allow up to 10 minutes for jobs to trigger or cancel.

@openshift-merge-bot

Copy link
Copy Markdown
Contributor

@jzding: pj-rehearse could not automatically process this event because the request waited in queue for longer than 5 minutes. Use /pj-rehearse to trigger rehearsals manually.

@openshift-ci openshift-ci Bot removed the approved Indicates a PR has been approved by an approver from all required OWNERS files. label Jul 28, 2026
@openshift-ci openshift-ci Bot added the approved Indicates a PR has been approved by an approver from all required OWNERS files. label Jul 28, 2026
Add TLS compliance scanning to PTP operator CI per OCPSTRAT-2611.

For each branch (4.22, 4.23, 5.0, 5.1, main), add a combined
tls-scan test that covers both TLS 1.3 adherence (StrictAllComponents)
and PQC readiness in a single cluster deploy:

Presubmit (on-demand):
- tls-scan: always_run false, optional true. Deploys PTP operator
  via ci-index, runs tls-13, waits for PTP operator to restart with
  the new TLS profile, then runs tls-scanner-run.

The wait-ptp-tls-restart step is needed because the PTP operator's
SecurityProfileWatcher detects the TLS profile change from the tls-13
step and self-terminates for OLM to restart it. The reconciler then
re-renders the kube-rbac-proxy daemonset template with the new TLS
min version and cipher suites. Without the wait, the scanner would
scan endpoints still running with the old TLS configuration.

Periodic (daily 03:00 UTC, one branch per weekday):
- 4.22 Monday, 4.23 Tuesday, 5.0 Wednesday,
  5.1 Thursday, main Friday.

All tests use optional-operators-ci-aws workflow, scoped to
openshift-ptp namespace, SCANNER_CPU=2, tls-scanner-tool from
the official tls-scanner namespace.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Signed-off-by: Jack Ding <jackding@gmail.com>
@openshift-ci

openshift-ci Bot commented Jul 28, 2026

Copy link
Copy Markdown
Contributor

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: jzding

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-merge-bot

Copy link
Copy Markdown
Contributor

[REHEARSALNOTIFIER]
@jzding: the pj-rehearse plugin accommodates running rehearsal tests for the changes in this PR. Expand 'Interacting with pj-rehearse' for usage details. The following rehearsable tests have been affected by this change:

Test name Repo Type Reason
pull-ci-openshift-ptp-operator-main-tls-scan openshift/ptp-operator presubmit Presubmit changed
pull-ci-openshift-ptp-operator-release-4.22-tls-scan openshift/ptp-operator presubmit Presubmit changed
pull-ci-openshift-ptp-operator-release-4.23-tls-scan openshift/ptp-operator presubmit Presubmit changed
pull-ci-openshift-ptp-operator-release-5.0-tls-scan openshift/ptp-operator presubmit Presubmit changed
pull-ci-openshift-ptp-operator-release-5.1-tls-scan openshift/ptp-operator presubmit Presubmit changed
pull-ci-openshift-ptp-operator-release-5.1-bundle-check openshift/ptp-operator presubmit Ci-operator config changed
pull-ci-openshift-ptp-operator-release-5.1-ci-index openshift/ptp-operator presubmit Ci-operator config changed
pull-ci-openshift-ptp-operator-release-5.1-e2e-aws-ovn openshift/ptp-operator presubmit Ci-operator config changed
pull-ci-openshift-ptp-operator-release-5.1-gofmt openshift/ptp-operator presubmit Ci-operator config changed
pull-ci-openshift-ptp-operator-release-5.1-govet openshift/ptp-operator presubmit Ci-operator config changed
pull-ci-openshift-ptp-operator-release-5.1-images openshift/ptp-operator presubmit Ci-operator config changed
pull-ci-openshift-ptp-operator-release-5.1-operator-e2e openshift/ptp-operator presubmit Ci-operator config changed
pull-ci-openshift-ptp-operator-release-5.1-security openshift/ptp-operator presubmit Ci-operator config changed
pull-ci-openshift-ptp-operator-release-5.1-verify-deps openshift/ptp-operator presubmit Ci-operator config changed
pull-ci-openshift-ptp-operator-release-4.22-bundle-check openshift/ptp-operator presubmit Ci-operator config changed
pull-ci-openshift-ptp-operator-release-4.22-ci-index openshift/ptp-operator presubmit Ci-operator config changed
pull-ci-openshift-ptp-operator-release-4.22-e2e-aws-ovn openshift/ptp-operator presubmit Ci-operator config changed
pull-ci-openshift-ptp-operator-release-4.22-gofmt openshift/ptp-operator presubmit Ci-operator config changed
pull-ci-openshift-ptp-operator-release-4.22-govet openshift/ptp-operator presubmit Ci-operator config changed
pull-ci-openshift-ptp-operator-release-4.22-images openshift/ptp-operator presubmit Ci-operator config changed
pull-ci-openshift-ptp-operator-release-4.22-operator-e2e openshift/ptp-operator presubmit Ci-operator config changed
pull-ci-openshift-ptp-operator-release-4.22-security openshift/ptp-operator presubmit Ci-operator config changed
pull-ci-openshift-ptp-operator-release-4.22-verify-deps openshift/ptp-operator presubmit Ci-operator config changed
pull-ci-openshift-ptp-operator-release-4.23-bundle-check openshift/ptp-operator presubmit Ci-operator config changed
pull-ci-openshift-ptp-operator-release-4.23-ci-index openshift/ptp-operator presubmit Ci-operator config changed

A total of 55 jobs have been affected by this change. The above listing is non-exhaustive and limited to 25 jobs.

A full list of affected jobs can be found here

Interacting with pj-rehearse

Comment: /pj-rehearse to run up to 5 rehearsals
Comment: /pj-rehearse skip to opt-out of rehearsals
Comment: /pj-rehearse {test-name}, with each test separated by a space, to run one or more specific rehearsals
Comment: /pj-rehearse more to run up to 10 rehearsals
Comment: /pj-rehearse max to run up to 25 rehearsals
Comment: /pj-rehearse auto-ack to run up to 5 rehearsals, and add the rehearsals-ack label on success
Comment: /pj-rehearse list to get an up-to-date list of affected jobs
Comment: /pj-rehearse abort to abort all active rehearsals
Comment: /pj-rehearse network-access-allowed to allow rehearsals of tests that have the restrict_network_access field set to false. This must be executed by an openshift org member who is not the PR author

Once you are satisfied with the results of the rehearsals, comment: /pj-rehearse ack to unblock merge. When the rehearsals-ack label is present on your PR, merge will no longer be blocked by rehearsals.
If you would like the rehearsals-ack label removed, comment: /pj-rehearse reject to re-block merging.

@openshift-ci

openshift-ci Bot commented Jul 28, 2026

Copy link
Copy Markdown
Contributor

@jzding: The following tests failed, say /retest to rerun all failed tests or /retest-required to rerun all mandatory failed tests:

Test name Commit Details Required Rerun command
ci/rehearse/periodic-ci-openshift-release-main-nightly-5.0-e2e-telco5g-ptp-tls-scan da12654 link unknown /pj-rehearse periodic-ci-openshift-release-main-nightly-5.0-e2e-telco5g-ptp-tls-scan
ci/rehearse/periodic-ci-openshift-release-main-nightly-4.22-e2e-telco5g-ptp 95c1991 link unknown /pj-rehearse periodic-ci-openshift-release-main-nightly-4.22-e2e-telco5g-ptp
ci/rehearse/openshift/ptp-operator/release-5.0/operator-e2e 95c1991 link unknown /pj-rehearse pull-ci-openshift-ptp-operator-release-5.0-operator-e2e
ci/rehearse/openshift/ptp-operator/release-5.0/tls-scan 8fe7bb6 link unknown /pj-rehearse pull-ci-openshift-ptp-operator-release-5.0-tls-scan
ci/rehearse/periodic-ci-openshift-ptp-operator-main-tls-scan-periodic 9e6a344 link unknown /pj-rehearse periodic-ci-openshift-ptp-operator-main-tls-scan-periodic
ci/rehearse/periodic-ci-openshift-ptp-operator-release-5.0-tls-scan-periodic 8fe7bb6 link unknown /pj-rehearse periodic-ci-openshift-ptp-operator-release-5.0-tls-scan-periodic

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