Addresses remaining high-priority code review feedback: VERSIONING SCHEME FIXES: - Helm chart: Changed from pep440 to semver (correct for Helm) - Astrolabe: Changed from pep440 to semver (correct for Nextcloud apps) - MCP server: Remains pep440 (correct for Python packages) Helm charts must use semantic versioning per Helm specification. Nextcloud apps use semantic versioning in info.xml and package.json. ENHANCED ERROR HANDLING IN BUMP SCRIPTS: All three bump scripts now include: - Comprehensive validation checks * Tool availability (uv) * Directory structure (must run from repo root) * Required files exist (Chart.yaml, info.xml, package.json) - Better error messages * Stderr output for errors * Captured commitizen output on failure * Common failure causes listed - Success confirmation * Clear indication of what was updated * Next steps guidance (git push --follow-tags) - Robust shell options (set -euo pipefail) Scripts now provide helpful guidance when: - No conventional commits found - No commits with required scope - Git working directory not clean - Required dependencies missing
26 lines
772 B
TOML
26 lines
772 B
TOML
[tool.commitizen]
|
|
name = "cz_conventional_commits"
|
|
version = "0.1.0"
|
|
tag_format = "astrolabe-v$version"
|
|
version_scheme = "semver"
|
|
update_changelog_on_bump = true
|
|
major_version_zero = true
|
|
|
|
# Update Astrolabe-specific files only
|
|
version_files = [
|
|
"appinfo/info.xml:version",
|
|
"package.json:version"
|
|
]
|
|
|
|
# Ignore tags from other components
|
|
ignored_tag_formats = [
|
|
"v*", # MCP server tags
|
|
"nextcloud-mcp-server-*", # Helm chart tags
|
|
]
|
|
|
|
# Filter commits by scope
|
|
[tool.commitizen.customize]
|
|
changelog_pattern = "^(feat|fix|docs|refactor|perf|test|build|ci|chore)\\(astrolabe\\)(!)?:"
|
|
schema_pattern = "^(feat|fix|docs|refactor|perf|test|build|ci|chore)\\(astrolabe\\)(!)?:\\s.+"
|
|
message_template = "{{change_type}}(astrolabe): {{message}}"
|