Repository navigation
Conversation
The Regenerate index.yaml workflow committed straight to main, which main stopped accepting: first branch protection required a pull request, then the required-ci ruleset required the "ci / Build and test" check. Every run since September failed, so index.yaml stopped following plugins/ and still lists the removed inventory plugin. The workflow now opens or refreshes a pull request on the regenerate-index branch and turns on auto-merge, so the index reaches main only after the required check passes. It uses the catalog's GitHub App token, because a pull request opened with GITHUB_TOKEN never triggers CI and the required check would never report. Committing index.yaml in each plugin pull request, guarded by a drift check, was rejected for now. The update-plugin-index action in datum-cloud/actions edits only plugins/<name>.yaml, and it refuses to reuse an open update pull request that touches any other file, so a drift check would fail every release pull request. scripts/sign-commit is dropped, since create-pull-request signs the commit and this workflow was its only caller. Fixes: #50 Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
The index regeneration workflow failed on every run for two months without anyone noticing, because a failed run on main alerts no one. The weekly catalog health check now also runs generate_index.py --check and opens its issue when index.yaml no longer matches plugins/. The regenerate pull request normally merges within minutes of a plugin change, so drift that survives to the weekly run means that workflow is broken. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Brings index.yaml in line with plugins/ using scripts/generate_index.py. This drops the removed inventory plugin and adds the billing, search and telemetry entries and the newer ipam release that never reached the index. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
0xmc
marked this pull request as draft
November 4, 2026 19:18
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
The plugin index that datumctl reads has not updated since September, because the workflow that regenerates it pushes straight to main, and main accepts changes only through a reviewed pull request with passing CI.
The workflow now opens a pull request with the regenerated index, using the catalog's GitHub App so CI runs on it, and sets that pull request to merge once checks pass. The weekly catalog health check now fails when the index drifts from the plugin manifests, and this pull request regenerates the index, which drops the removed inventory plugin.
Important
Each regenerate pull request still needs one approving review before it merges, so approve it after each plugin update lands.
Test plan
Fixes #50
🤖 Generated with Claude Code