Write the first policy¶
Begin with one reversible setting. A small policy makes the relationship between declared intent, observed GitHub state, and the resulting plan easy to inspect.
Create octoform.yml¶
Replace your-account with the login that owns the repositories. Octoform asks
GitHub whether that login represents a personal account or an organization;
the configuration does not duplicate that fact.
What this policy means¶
delete_branch_on_mergemust be enabled for selected managed repositories.- Every omitted setting is unmanaged.
- The file does not disable absent features, remove rulesets, replace topics, or infer organization defaults.
Omission is a safety boundary, not a default value. false explicitly asks
Octoform to keep a boolean setting disabled; omitting it asks Octoform to leave
the setting alone.
Keep the first selection narrow¶
The policy uses defaults, so it can describe every selected repository. The
first command will add --repo to restrict discovery and planning to one known
repository without changing the reusable policy.
Choose a repository where enabling automatic branch deletion after merge is acceptable. The repository can already match the policy; a no-change plan is a valid and useful result.
Configuration failures are read-only¶
plan loads imports, validates the configuration shape, resolves the owner,
and obtains GitHub state before producing changes. A syntax or validation error
stops that command before any mutation.