Skip to content

Commit e3edb1c

Browse files
author
Kristopher Turner
committed
docs: add repo-management setup and automation docs
Documents branch protection, labels, secrets, and every GitHub Actions workflow. Restructures repo-management/ to flat layout (setup.md, automation.md, scripts/) and moves existing content files to root.
1 parent 1980a6b commit e3edb1c

8 files changed

Lines changed: 112 additions & 13 deletions

File tree

repo-management/README.md

Lines changed: 7 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -1,25 +1,19 @@
11
# Repo Management
22

3-
This folder contains repo planning, governance, delivery tracking, and working artifacts.
3+
This folder documents how this repository is configured and how its automation works.
44

5-
## Standard Layout
5+
## Contents
66

7-
| Path | Purpose |
7+
| File | Purpose |
88
|------|---------|
9-
| `plans/` | Active implementation plans, design notes, and scoped work items |
10-
| `checklists/` | Audit lists, migration checklists, and operational gates |
11-
| `roadmaps/` | Milestones, release phases, and longer-horizon planning |
12-
| `reports/` | Discovery outputs, coverage reports, and analysis artifacts |
9+
| [`setup.md`](setup.md) | Branch protection, labels, secrets, CODEOWNERS, and replication guide |
10+
| [`automation.md`](automation.md) | Every GitHub Actions workflow — what it does, when it runs, secrets required |
11+
| [`training-buildout-plan.md`](training-buildout-plan.md) | Curriculum rebuild plan — legacy HCI content → Azure Local operator training |
1312
| `scripts/` | Repo-management helper scripts |
14-
| `working/` | Drafts, scratch notes, and temporary working material |
1513

1614
## Canonical References
1715

1816
- Label definitions: `azurelocal.github.io/.github/labels.yml`
1917
- Repository standard: `azurelocal.github.io/.github/repo-standard.md`
2018
- Standards source: `azurelocal.github.io/standards/`
21-
22-
## Notes
23-
24-
Use `repo-management/` for planning and coordination artifacts.
25-
Use `standards/` at the repo root for canonical standards.
19+
- Repository management model: `azurelocal.github.io/standards/repository-management.mdx`

repo-management/automation.md

Lines changed: 42 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,42 @@
1+
# Automation
2+
3+
Documents every GitHub Actions workflow in this repository.
4+
5+
---
6+
7+
## Workflow Summary
8+
9+
| File | Name | Trigger | Purpose |
10+
|------|------|---------|---------|
11+
| `deploy-docs.yml` | Deploy Documentation | Push to `main` touching `docs/**` or `mkdocs.yml` | Builds MkDocs site and deploys to GitHub Pages |
12+
| `release-please.yml` | Release Please | Push to `main` | Automates CHANGELOG and releases |
13+
14+
---
15+
16+
## deploy-docs.yml
17+
18+
**Trigger:** Push to `main` touching `docs/**` or `mkdocs.yml`
19+
**Permissions:** `contents: read`, `pages: write`, `id-token: write`
20+
**Concurrency group:** `pages` (cancel-in-progress: false)
21+
22+
Two-job pipeline:
23+
24+
**build:**
25+
1. Sets up Python 3.12
26+
2. Installs `mkdocs-material`
27+
3. `mkdocs build --strict` — fails on any warning
28+
4. Uploads `site/` as a pages artifact
29+
30+
**deploy:**
31+
1. Uses `actions/deploy-pages@v4` to publish to GitHub Pages
32+
33+
---
34+
35+
## release-please.yml
36+
37+
**Trigger:** Push to `main`
38+
**Permissions:** `contents: write`, `pull-requests: write`
39+
40+
Uses `googleapis/release-please-action@v4`. Maintains an automated release PR that updates `CHANGELOG.md` and bumps the version. Merging it creates the GitHub release and tag.
41+
42+
Configuration is in `release-please-config.json` at repo root.

repo-management/checklists/.gitkeep

Whitespace-only changes.

repo-management/reports/.gitkeep

Whitespace-only changes.

repo-management/roadmaps/.gitkeep

Whitespace-only changes.

repo-management/setup.md

Lines changed: 63 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,63 @@
1+
# Repository Setup
2+
3+
Documents how this repository is configured. Use this as the reference when setting up a new repo or auditing existing settings.
4+
5+
---
6+
7+
## Branch Protection
8+
9+
**Protected branch:** `main`
10+
11+
| Setting | Value |
12+
|---------|-------|
13+
| Require pull request before merging | Yes |
14+
| Required approvals | 1 |
15+
| Dismiss stale reviews on new commits | Yes |
16+
| Require status checks to pass | Yes |
17+
| Required checks | None beyond the standard PR checks |
18+
| Require branches to be up to date | Yes |
19+
| Restrict force pushes | Yes |
20+
| Allow admins to bypass | Yes |
21+
22+
---
23+
24+
## Labels
25+
26+
Labels are defined in `azurelocal.github.io/.github/labels.yml` — that is the source of truth for all repos. Labels are applied here when they change in the source repo or manually via `workflow_dispatch` on `sync-labels.yml` in `azurelocal.github.io`.
27+
28+
---
29+
30+
## Secrets
31+
32+
| Secret | Used By | Description |
33+
|--------|---------|-------------|
34+
| `GITHUB_TOKEN` | All workflows | Built-in GitHub token. |
35+
36+
This repo has no `ADD_TO_PROJECT_PAT` — it does not use the `add-to-project.yml` workflow.
37+
38+
---
39+
40+
## CODEOWNERS
41+
42+
Defined in `.github/CODEOWNERS`. Review and update if team membership changes.
43+
44+
---
45+
46+
## GitHub Pages
47+
48+
| Setting | Value |
49+
|---------|-------|
50+
| Source | GitHub Actions (uses `actions/deploy-pages`) |
51+
| Build tool | MkDocs Material |
52+
| Deploy trigger | Push to `main` touching `docs/**` or `mkdocs.yml` |
53+
54+
---
55+
56+
## Replication Checklist
57+
58+
- [ ] Enable branch protection on `main` per settings above
59+
- [ ] Add `.github/CODEOWNERS`
60+
- [ ] Add `.github/PULL_REQUEST_TEMPLATE.md`
61+
- [ ] Copy `release-please.yml` and `release-please-config.json`
62+
- [ ] Copy `deploy-docs.yml`
63+
- [ ] Enable GitHub Pages (Settings → Pages → Source: GitHub Actions)
File renamed without changes.

repo-management/working/.gitkeep

Whitespace-only changes.

0 commit comments

Comments
 (0)