ROSAENG-61950 | chore: codecov configuration#82027
Conversation
|
[APPROVALNOTIFIER] This PR is APPROVED This pull-request has been approved by: gdbranco 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 |
|
Note Reviews pausedIt 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 Use the following commands to manage reviews:
Use the checkboxes below for quick actions:
WalkthroughUpdates ROSA service log test secret/config wiring and adds ChangesROSA service log CI
Estimated code review effort: 2 (Simple) | ~10 minutes Possibly related PRs
Suggested reviewers: 🚥 Pre-merge checks | ✅ 15✅ Passed checks (15 passed)
✨ Finishing Touches🧪 Generate unit tests (beta)
Comment |
|
/pj-rehearse pull-ci-openshift-online-rosa-service-log-master-coverage |
|
@gdbranco: now processing your pj-rehearse request. Please allow up to 10 minutes for jobs to trigger or cancel. |
733ea3b to
3ed1ba2
Compare
|
/pj-rehearse pull-ci-openshift-online-rosa-service-log-master-coverage |
|
@gdbranco: now processing your pj-rehearse request. Please allow up to 10 minutes for jobs to trigger or cancel. |
3ed1ba2 to
b5cbbbf
Compare
There was a problem hiding this comment.
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-online/rosa-service-log/openshift-online-rosa-service-log-master.yaml`:
- Around line 136-140: Remove the rosa-service-log-codecov secret mount from the
presubmit coverage job configuration near the secrets list, while retaining it
only for the publish-coverage job. Update the coverage job invoked by the
PR-controlled Makefile to use a non-publishing coverage target that does not
require Codecov credentials.
🪄 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: c5d38f52-cf43-4e03-926a-8ba0a5fcda10
⛔ Files ignored due to path filters (2)
ci-operator/jobs/openshift-online/rosa-service-log/openshift-online-rosa-service-log-master-postsubmits.yamlis excluded by!ci-operator/jobs/**ci-operator/jobs/openshift-online/rosa-service-log/openshift-online-rosa-service-log-master-presubmits.yamlis excluded by!ci-operator/jobs/**
📒 Files selected for processing (1)
ci-operator/config/openshift-online/rosa-service-log/openshift-online-rosa-service-log-master.yaml
|
/pj-rehearse pull-ci-openshift-online-rosa-service-log-master-coverage, pull-ci-openshift-online-rosa-service-log-master-integration, pull-ci-openshift-online-rosa-service-log-master-unit |
|
/pj-rehearse pull-ci-openshift-online-rosa-service-log-master-coverage |
|
@gdbranco: now processing your pj-rehearse request. Please allow up to 10 minutes for jobs to trigger or cancel. |
|
/pj-rehearse pull-ci-openshift-online-rosa-service-log-master-integration |
|
@gdbranco: now processing your pj-rehearse request. Please allow up to 10 minutes for jobs to trigger or cancel. |
|
/pj-rehearse pull-ci-openshift-online-rosa-service-log-master-unit |
|
@gdbranco: now processing your pj-rehearse request. Please allow up to 10 minutes for jobs to trigger or cancel. |
b5cbbbf to
f86cb34
Compare
|
/pj-rehearse pull-ci-openshift-online-rosa-service-log-master-unit |
|
@gdbranco: now processing your pj-rehearse request. Please allow up to 10 minutes for jobs to trigger or cancel. |
There was a problem hiding this comment.
♻️ Duplicate comments (1)
ci-operator/config/openshift-online/rosa-service-log/openshift-online-rosa-service-log-master.yaml (1)
133-143: 🔒 Security & Privacy | 🔴 Critical | ⚡ Quick winCodecov secret still mounted in the presubmit
coveragejob — exfiltration risk unresolved.This job has no
postsubmitfield (defaults to presubmit), so it runs on every PR and executesmake codecovfrom PR-controlled code (Line 136) whilerosa-service-log-codecovis mounted at/var/run/codecov-secret(Lines 142-143). A malicious PR's Makefile/tooling can read and exfiltrate the token. This mirrors a previously raised concern: keep the Codecov secret only onpublish-coverage, and makecoveragerun a non-publishing target without the secret.🔒 Proposed fix
- as: coverage commands: | unset GOFLAGS export GOPATH=/go export PATH="/usr/local/go/bin:/go/bin:${PATH}" export HOME=/tmp export GOCACHE=$(mktemp -d) export GOMODCACHE=$(mktemp -d) export GOTOOLCHAIN=go1.25.10 echo "Go Version: $(go version)" mkdir -p /opt/app-root/src/rosa-service-log/secrets cp /opt/app-root/osl-secrets/* /opt/app-root/src/rosa-service-log/secrets/ ln -sfn /opt/app-root/src/rosa-service-log/secrets /opt/app-root/src/rosa-service-log/pkg/services/secrets - make codecov + make codecov-report # non-publishing target, no Codecov token required container: from: golang-plus secrets: - mount_path: /opt/app-root/osl-secrets name: openshift-online-osl-secrets - - mount_path: /var/run/codecov-secret - name: rosa-service-log-codecov🤖 Prompt for 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. In `@ci-operator/config/openshift-online/rosa-service-log/openshift-online-rosa-service-log-master.yaml` around lines 133 - 143, Remove the rosa-service-log-codecov secret mount from the presubmit coverage job and replace make codecov with the non-publishing coverage target. Keep the Codecov secret available only to the publish-coverage job, while preserving the existing secret setup required by the coverage job.
🤖 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.
Duplicate comments:
In
`@ci-operator/config/openshift-online/rosa-service-log/openshift-online-rosa-service-log-master.yaml`:
- Around line 133-143: Remove the rosa-service-log-codecov secret mount from the
presubmit coverage job and replace make codecov with the non-publishing coverage
target. Keep the Codecov secret available only to the publish-coverage job,
while preserving the existing secret setup required by the coverage job.
ℹ️ Review info
⚙️ Run configuration
Configuration used: Repository YAML (base), Central YAML (inherited)
Review profile: CHILL
Plan: Enterprise
Run ID: 40176bf8-5f7f-444d-b5d1-4cb997ad2350
⛔ Files ignored due to path filters (2)
ci-operator/jobs/openshift-online/rosa-service-log/openshift-online-rosa-service-log-master-postsubmits.yamlis excluded by!ci-operator/jobs/**ci-operator/jobs/openshift-online/rosa-service-log/openshift-online-rosa-service-log-master-presubmits.yamlis excluded by!ci-operator/jobs/**
📒 Files selected for processing (1)
ci-operator/config/openshift-online/rosa-service-log/openshift-online-rosa-service-log-master.yaml
f86cb34 to
db2c31c
Compare
|
/pj-rehearse pull-ci-openshift-online-rosa-service-log-master-unit |
|
@gdbranco: now processing your pj-rehearse request. Please allow up to 10 minutes for jobs to trigger or cancel. |
|
/pj-rehearse pull-ci-openshift-online-rosa-service-log-master-coverage |
|
@gdbranco: now processing your pj-rehearse request. Please allow up to 10 minutes for jobs to trigger or cancel. |
|
/pj-rehearse pull-ci-openshift-online-rosa-service-log-master-integration |
|
@gdbranco: now processing your pj-rehearse request. Please allow up to 10 minutes for jobs to trigger or cancel. |
|
/pj-rehearse pull-ci-openshift-online-rosa-service-log-master-unit |
|
@gdbranco: now processing your pj-rehearse request. Please allow up to 10 minutes for jobs to trigger or cancel. |
db2c31c to
5b8ada3
Compare
|
/pj-rehearse pull-ci-openshift-online-rosa-service-log-master-unit |
|
@gdbranco: now processing your pj-rehearse request. Please allow up to 10 minutes for jobs to trigger or cancel. |
|
/pj-rehearse pull-ci-openshift-online-rosa-service-log-master-coverage |
|
@gdbranco: now processing your pj-rehearse request. Please allow up to 10 minutes for jobs to trigger or cancel. |
|
/pj-rehearse pull-ci-openshift-online-rosa-service-log-master-integration |
|
@gdbranco: now processing your pj-rehearse request. Please allow up to 10 minutes for jobs to trigger or cancel. |
|
@gdbranco: The following tests failed, say
Full PR test history. Your PR dashboard. DetailsInstructions 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. |
|
/retest |
|
/pj-rehearse pull-ci-openshift-online-rosa-service-log-master-unit |
Summary by CodeRabbit
rosa-service-logCI workflow (ci-operator/config/openshift-online/rosa-service-log/openshift-online-rosa-service-log-master.yaml) to simplify how secrets/config are staged forunitandintegration, and to add Codecov reporting for newcoverage(presubmit) andpublish-coverage(postsubmit) jobs.unit,integration,coverage, andpublish-coverage, the workflow now creates/opt/app-root/src/rosa-service-log/secrets, copies/opt/app-root/osl-secrets/*into it, and symlinks bothsecretsandconfigintocmd/ocm-service-log,pkg/services, andtest/integrationbefore running the respective make targets (make test/make test-integration/make codecov).coverageandpublish-coveragejobs (both ingolang-plus) that setGOTOOLCHAIN=go1.25.10, stage secrets/config via the same symlink approach as above, and runmake codecovwithopenshift-online-osl-secretsplus the Codecov token secret (rosa-service-log-codecovmounted at/var/run/codecov-secret);publish-coverageis markedpostsubmit: true.pull-ci-openshift-online-rosa-service-log-master-coverage) was requested four times: once for a combined rehearsal of coverage+integration+unit, followed by separate rehearsals for the integration job and unit job (with the unit job requested twice).