Skip to content

Fix gcloud SDK permission error in edge-tooling CI monitor step - #83044

Open
redhat-chai-bot wants to merge 1 commit into
openshift:mainfrom
redhat-chai-bot:fix/gcloud-config-permission
Open

Fix gcloud SDK permission error in edge-tooling CI monitor step#83044
redhat-chai-bot wants to merge 1 commit into
openshift:mainfrom
redhat-chai-bot:fix/gcloud-config-permission

Conversation

@redhat-chai-bot

@redhat-chai-bot redhat-chai-bot commented Aug 6, 2026

Copy link
Copy Markdown
Contributor

Summary

Fix the periodic-ci-openshift-eng-edge-tooling-main-ocp-ci-monitor periodic job failure caused by a gcloud SDK PermissionError during installation.

Details

The CI monitor step installs the gcloud CLI, but the default gcloud config directory (/home/claude/.config/gcloud/) is not writable in CI pods. This causes install.sh to crash with:

PermissionError: [Errno 13] Permission denied: '/home/claude/.config/gcloud/config_sentinel'

The fix sets CLOUDSDK_CONFIG to a writable location (/tmp/gcloud-config) before running install.sh, so gcloud writes its config and logs there instead.

Changes

  • ci-operator/step-registry/openshift/edge-tooling/ci-monitor/openshift-edge-tooling-ci-monitor-commands.sh: export CLOUDSDK_CONFIG=/tmp/gcloud-config and mkdir -p the directory before the gcloud install step (+4 lines)

AI-generated. Review for accuracy.

@vimauro requested in Slack thread

Summary by CodeRabbit

The OpenShift Edge Tooling CI Monitor job now stores gcloud configuration and logs in the writable /tmp/gcloud-config directory during SDK installation. This prevents permission errors caused by the unwritable /home/claude/.config/gcloud/ path.

The gcloud install.sh tries to write configuration to
/home/claude/.config/gcloud/config_sentinel which is not writable
in CI pods. Set CLOUDSDK_CONFIG to redirect config writes to
/tmp/gcloud-config/.

This fixes the 3-day failure streak (Aug 4-6) on
periodic-ci-openshift-eng-edge-tooling-main-ocp-ci-monitor.
@coderabbitai

coderabbitai Bot commented Aug 6, 2026

Copy link
Copy Markdown
Contributor

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

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

Review profile: CHILL

Plan: Pro Plus

Run ID: f2b31095-f3e4-4a09-a2c5-d63a7bfcc4a1

📥 Commits

Reviewing files that changed from the base of the PR and between d3c6320 and 5f1e55c.

📒 Files selected for processing (1)
  • ci-operator/step-registry/openshift/edge-tooling/ci-monitor/openshift-edge-tooling-ci-monitor-commands.sh

Walkthrough

The CI monitor script now creates /tmp/gcloud-config and sets CLOUDSDK_CONFIG before running the gcloud installer.

Changes

CI monitor gcloud setup

Layer / File(s) Summary
Configure writable gcloud storage
ci-operator/step-registry/openshift/edge-tooling/ci-monitor/openshift-edge-tooling-ci-monitor-commands.sh
The script creates a temporary gcloud configuration directory and exports CLOUDSDK_CONFIG before gcloud installation.

Estimated code review effort: 1 (Trivial) | ~2 minutes

🚥 Pre-merge checks | ✅ 15
✅ Passed checks (15 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title clearly and concisely describes the gcloud SDK permission fix in the edge-tooling CI monitor step.
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 The patch changes only a Bash script to set CLOUDSDK_CONFIG and create a directory; it adds no Ginkgo tests or test titles.
Test Structure And Quality ✅ Passed Not applicable: the PR changes only one shell script and adds no Ginkgo tests or test constructs to review.
Microshift Test Compatibility ✅ Passed The PR changes only a shell script to set CLOUDSDK_CONFIG; it adds no Ginkgo e2e tests or MicroShift-incompatible API references.
Single Node Openshift (Sno) Test Compatibility ✅ Passed Not applicable: the commit changes only one shell script to set CLOUDSDK_CONFIG; it adds no Ginkgo e2e tests or multi-node assumptions.
Topology-Aware Scheduling Compatibility ✅ Passed The PR modifies only a CI shell script to set CLOUDSDK_CONFIG and create /tmp/gcloud-config; it adds no deployment, operator, controller, or scheduling changes.
Ote Binary Stdout Contract ✅ Passed The PR changes only a Bash CI step; it adds CLOUDSDK_CONFIG and mkdir before gcloud install, with no OTE binary or process-level Go stdout code.
Ipv6 And Disconnected Network Test Compatibility ✅ Passed The PR changes only a shell script to set CLOUDSDK_CONFIG; it adds no Ginkgo e2e tests, IPv4 assumptions, or test connectivity requirements.
No-Weak-Crypto ✅ Passed The patch adds only CLOUDSDK_CONFIG and mkdir commands; the changed lines contain no weak crypto, custom crypto, or secret comparison.
Container-Privileges ✅ Passed The commit changes only a shell script to set CLOUDSDK_CONFIG and create /tmp/gcloud-config; no privileged, host namespace, SYS_ADMIN, root, or allowPrivilegeEscalation settings are added.
No-Sensitive-Data-In-Logs ✅ Passed The PR only sets CLOUDSDK_CONFIG and creates /tmp/gcloud-config; it adds no logging, and secret handling remains under set +x with values never echoed.
✨ 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 eggfoobar and mmakwana30 August 6, 2026 14:24
@fonta-rh

fonta-rh commented Aug 6, 2026

Copy link
Copy Markdown
Contributor

/approve

@fonta-rh

fonta-rh commented Aug 6, 2026

Copy link
Copy Markdown
Contributor

/lgtm

@openshift-ci openshift-ci Bot added the lgtm Indicates that a PR is ready to be merged. label Aug 6, 2026
@openshift-merge-bot

Copy link
Copy Markdown
Contributor

@redhat-chai-bot: 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 commented Aug 6, 2026

Copy link
Copy Markdown
Contributor

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: fonta-rh, redhat-chai-bot

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 Aug 6, 2026
@openshift-ci

openshift-ci Bot commented Aug 6, 2026

Copy link
Copy Markdown
Contributor

@redhat-chai-bot: 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. lgtm Indicates that a PR is ready to be merged.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants