Skip to content

ci: add shared security scanning workflow#1900

Merged
breedx-splk merged 4 commits into
open-telemetry:mainfrom
opentelemetrybot:zizmor-rollout/pilot-20260715
Jul 16, 2026
Merged

ci: add shared security scanning workflow#1900
breedx-splk merged 4 commits into
open-telemetry:mainfrom
opentelemetrybot:zizmor-rollout/pilot-20260715

Conversation

@opentelemetrybot

@opentelemetrybot opentelemetrybot commented Jul 15, 2026

Copy link
Copy Markdown
Contributor

Tracked in open-telemetry/sig-security#293.

Adds zizmor scanning through the OpenTelemetry shared workflow.

The workflow:

  • runs the regular persona on pull requests, pushes to main, release/*, and a randomized weekly schedule;
  • uploads results to GitHub code scanning;
  • uses the shared workflow pinned to an immutable commit.

Zizmor remediation

This change also resolves findings from these zizmor rules:

After merge

  1. Confirm the Zizmor workflow succeeds on the merged default-branch commit and its code-scanning analysis has no findings.
  2. Mark the corresponding admin PR ready for review and merge it to require zizmor code scanning.
  3. On the next repository pull request, confirm GitHub reports a required zizmor code-scanning result.

If enforcement unexpectedly blocks a valid change, restore require_zizmor = false in open-telemetry/admin while leaving scanning enabled.

@opentelemetrybot
opentelemetrybot requested a review from a team as a code owner July 15, 2026 16:43
Copilot AI review requested due to automatic review settings July 15, 2026 16:43
@github-advanced-security

Copy link
Copy Markdown

You are seeing this message because GitHub Code Scanning has recently been set up for this repository, or this pull request contains the workflow file for the Code Scanning tool.

What Enabling Code Scanning Means:

  • The 'Security' tab will display more code scanning analysis results (e.g., for the default branch).
  • Depending on your configuration and choice of analysis tool, future pull requests will be annotated with code scanning analysis results.
  • You will be able to see the analysis results for the pull request's branch on this overview once the scans have completed and the checks have passed.

For more information about GitHub Code Scanning, check out the documentation.

Copilot AI 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.

Pull request overview

Adds Zizmor GitHub Actions security scanning to this repository by wiring in the OpenTelemetry shared reusable workflow (pinned to an immutable commit), and hardens multiple existing workflows by ensuring actions/checkout does not persist credentials by default.

Changes:

  • Add a new .github/workflows/zizmor.yml workflow that runs Zizmor on PRs, pushes to main/release/*, and a weekly schedule, uploading SARIF to GitHub code scanning.
  • Update multiple workflows to set actions/checkout persist-credentials: false to reduce risk of unintended credential reuse in subsequent steps.
  • Adjust release-branch preparation workflows to explicitly keep credentials where required for git push, and request PR permissions for the GitHub App token used to open PRs.

PR Merge Tier: Tier 3 (build/CI infrastructure change)

Reviewed changes

Copilot reviewed 11 out of 11 changed files in this pull request and generated 2 comments.

Show a summary per file
File Description
.github/workflows/zizmor.yml Adds reusable Zizmor code scanning workflow invocation pinned to a shared-workflows commit.
.github/workflows/reusable-workflow-notification.yml Disables persisted checkout credentials in reusable notification workflow.
.github/workflows/reusable-link-check.yml Disables persisted checkout credentials in reusable link-check workflow.
.github/workflows/remove-needs-author-feedback.yaml Disables persisted checkout credentials in issue label management workflow.
.github/workflows/release.yml Disables persisted checkout credentials across multiple checkouts in the release workflow.
.github/workflows/prepare-release-branch.yml Disables persisted credentials where not needed; retains them where pushes occur; adjusts GitHub App token permissions for PR creation.
.github/workflows/pr-check.yaml Disables persisted checkout credentials in PR build workflow.
.github/workflows/gradle-wrapper-validation.yml Disables persisted checkout credentials in wrapper validation workflow.
.github/workflows/fossa.yml Disables persisted checkout credentials in FOSSA workflow.
.github/workflows/draft-change-log-entries.yaml Attempts to disable persisted checkout credentials (currently has a YAML issue with duplicate with:).
.github/workflows/build.yaml Disables persisted checkout credentials in build and publish-snapshot jobs.

Comment thread .github/workflows/draft-change-log-entries.yaml
Comment thread .github/workflows/zizmor.yml

@LikeTheSalad LikeTheSalad 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.

Thank you!

@fractalwrench fractalwrench left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

LGTM

@breedx-splk
breedx-splk merged commit c47c893 into open-telemetry:main Jul 16, 2026
6 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

7 participants