Skip to content

feat: add dependabot, scorecard, and CI timeout#72

Merged
mvle merged 3 commits intomainfrom
orchestrate/ci
Mar 19, 2026
Merged

feat: add dependabot, scorecard, and CI timeout#72
mvle merged 3 commits intomainfrom
orchestrate/ci

Conversation

@pdettori
Copy link
Copy Markdown
Collaborator

@pdettori pdettori commented Mar 13, 2026

Summary

Phase 4 of repo orchestration — completes the CI baseline. The repo already has strong ci.yaml and security-scans.yaml workflows; this PR fills the remaining gaps.

New files:

  • .github/dependabot.yml: weekly automated dependency updates for:

    • GitHub Actions (SHA pins stay current)
    • Python/pip — root pyproject.toml
    • Python/pip — plugins/examples/nemocheck/pyproject.toml
    • Docker — root Dockerfile base image
  • .github/workflows/scorecard.yml: OpenSSF Scorecard analysis

    • Triggers: push to main + weekly Monday schedule
    • Publishes results to GitHub Security tab and OpenSSF API (enables public badge)
    • All actions SHA-pinned

Modified:

  • .github/workflows/ci.yaml: add timeout-minutes: 15 to prevent hung CI jobs

What was already in place (not changed)

Workflow Coverage
ci.yaml lint (pre-commit/ruff), unit tests (server + nemocheck), Python 3.11/3.12 matrix
security-scans.yaml dependency review, shellcheck, yamllint, hadolint, bandit, trivy, codeql, action pinning
stale.yaml org reusable stale issue/PR workflow
self-assign.yml org reusable self-assign workflow

Test plan

  • Dependabot PRs appear within a week of merge
  • Scorecard workflow runs on merge to main (check Actions tab)
  • CI matrix still passes (timeout added, no other changes)

Complete CI baseline for the repo:

- .github/dependabot.yml: weekly updates for GitHub Actions, Python
  dependencies (root + nemocheck plugin), and Docker base image
- .github/workflows/scorecard.yml: OpenSSF Scorecard on push to main
  and weekly schedule; publishes results to GitHub Security tab
- .github/workflows/build.yml: multi-arch (amd64+arm64) container image
  build and push to ghcr.io on tag push or manual trigger; supports
  optional PLUGIN_DEPS build-arg for baking in specific plugins
- .github/workflows/ci.yaml: add timeout-minutes: 15 to prevent hung jobs

All actions SHA-pinned (no tag-only references).

Assisted-By: Claude (Anthropic AI) <noreply@anthropic.com>
Signed-off-by: Paolo Dettori <dettori@us.ibm.com>
Copy link
Copy Markdown
Contributor

@evaline-ju evaline-ju left a comment

Choose a reason for hiding this comment

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

The build is a bit complicated for this repo currently but the other additions lgtm - perhaps we could leave that off for now?

Comment thread .github/workflows/build.yml Outdated
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.

I'm currently testing a parallel of this (though not as generic) - image building here requires building some envoy protos which we've kept separately from the Dockerfile for now since the Python compilation was pretty messy

The multi-arch container build workflow is not needed at this stage.
Remove it per evaline-ju's suggestion in PR review.

Assisted-By: Claude (Anthropic AI) <noreply@anthropic.com>
Signed-off-by: Paolo Dettori <dettori@us.ibm.com>
Copy link
Copy Markdown
Collaborator Author

@pdettori pdettori left a comment

Choose a reason for hiding this comment

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

Good call — removed build.yml in the latest commit. The PR now only contains dependabot.yml, scorecard.yml, and the timeout-minutes addition to ci.yaml.

@evaline-ju
Copy link
Copy Markdown
Contributor

Good call — removed build.yml in the latest commit. The PR now only contains dependabot.yml, scorecard.yml, and the timeout-minutes addition to ci.yaml.

Thanks @pdettori! Would you mind updating the PR title + description to reflect this? I now have a separate PR for the image build in #75

Comment thread .github/dependabot.yml
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.

let's update the kagenti/maintainers reviewers with the new kagenti/plugin-adapters-maintainers group like in #73

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

Is this resolved? I don't think I have permissions to see group memembership.

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.

@julianstephen I see you in the expected group now

Address review feedback: use repo-specific team instead of org-wide
maintainers group, consistent with PR #73.

Assisted-By: Claude (Anthropic AI) <noreply@anthropic.com>
Signed-off-by: Paolo Dettori <dettori@us.ibm.com>
@pdettori pdettori changed the title feat: add dependabot, scorecard, container build CI, and CI timeout feat: add dependabot, scorecard, and CI timeout Mar 19, 2026
@pdettori pdettori requested a review from a team as a code owner March 19, 2026 16:29
@pdettori
Copy link
Copy Markdown
Collaborator Author

Addressed review feedback:

  1. PR title + description updated — removed "container build CI" references since build.yml was dropped (now handled separately in ci: Image build workflow #75)
  2. Dependabot reviewers updated — changed from kagenti/maintainers to kagenti/plugin-adapters-maintainers across all 4 package ecosystems, consistent with feat: add security governance (CODEOWNERS, SECURITY.md, .gitignore hardening) #73

@mvle mvle merged commit 4f0484d into main Mar 19, 2026
13 checks passed
@evaline-ju evaline-ju deleted the orchestrate/ci branch April 15, 2026 19:54
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.

4 participants