-
Notifications
You must be signed in to change notification settings - Fork 2
Expand file tree
/
Copy pathTaskfile.yml
More file actions
107 lines (87 loc) · 2.74 KB
/
Taskfile.yml
File metadata and controls
107 lines (87 loc) · 2.74 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
# yaml-language-server: $schema=https://taskfile.dev/schema.json
version: "3"
vars:
UV: uv run
YAML_TARGETS: >-
Taskfile.yml .pre-commit-config.yaml .yamllint.yaml .github/workflows/*.yml
.agents/skills/ub-governance/references/high-risk-paths.yaml
.agents/skills/ub-workflow/assets/initiative-template/exceptions/exception-template.yaml
tasks:
sync:
desc: Install or update local Python tooling via uv
cmd: uv sync
py:
desc: Run repository Python through uv (pass args after --)
cmd: "{{.UV}} python {{.CLI_ARGS}}"
lint-py:
desc: Run Ruff
cmd: "{{.UV}} ruff check ."
lint-yaml:
desc: Run yamllint in strict mode
cmd: "{{.UV}} yamllint --strict {{.YAML_TARGETS}}"
lint:
desc: Run all local lint checks
deps:
- lint-py
- lint-yaml
test-repo-catalog:
desc: Run repository catalog integrity check
cmd: "{{.UV}} python scripts/repo-maintenance/check_repo_catalog.py"
test-package-metadata:
desc: Run package metadata integrity check
cmd: "{{.UV}} python scripts/repo-maintenance/check_package_metadata.py"
test-repo-paths:
desc: Run repository path and case integrity check
cmd: "{{.UV}} python scripts/repo-maintenance/check_repo_paths.py"
test-skill-schema:
desc: Run skill frontmatter and local-reference integrity check
cmd: "{{.UV}} python scripts/repo-maintenance/check_skill_schema.py"
test-governance-integrity:
desc: Run governance-surface repo-maintenance checks
cmd: "{{.UV}} python scripts/repo-maintenance/check_skill_integrity.py"
test-integrity:
desc: Run repository integrity baseline checks
deps:
[
test-repo-catalog,
test-package-metadata,
test-repo-paths,
test-skill-schema,
test-governance-integrity,
]
test-governance:
desc: Run governance script regression tests
cmd: >
{{.UV}} python -m unittest discover -s tests/skills/ub-governance -p
'test_*.py' -v
test-repo-maintenance:
desc: Run repo-maintenance script regression tests
cmd: >
{{.UV}} python -m unittest discover -s tests/repo_maintenance -p
'test_*.py' -v
test-workflow:
desc: Run workflow scaffold regression tests
cmd: >
{{.UV}} python -m unittest discover -s tests/skills/ub-workflow -p
'test_*.py' -v
test:
desc: Run local test checks
deps:
- test-integrity
- test-governance
- test-repo-maintenance
- test-workflow
check:
desc: Run lint + test (closest local CI parity)
deps:
- lint
- test
ci:
desc: Alias for check
deps:
- check
setup:
desc: One-time project setup (install deps + enable pre-commit hooks)
cmds:
- uv sync
- uv run pre-commit install