feat(astrolabe): add Nextcloud App Store deployment automation

Add complete CI/CD pipeline for automated Astrolabe app releases:
- GitHub Actions workflow for build, sign, and publish
- Makefile for app store package creation
- Version synchronization between info.xml and package.json
- CHANGELOG.md with v0.1.0 release notes

feat: configure commitizen monorepo with independent versioning

Enable independent versioning for three components using scope-based commits:
- MCP Server (feat(mcp) or unscoped): v* tags, updates pyproject.toml + Chart.yaml:appVersion
- Helm Chart (feat(helm)): nextcloud-mcp-server-* tags, updates Chart.yaml:version
- Astrolabe App (feat(astrolabe)): astrolabe-v* tags, updates info.xml + package.json

Changes:
- Add .cz.toml configs for Astrolabe and Helm chart
- Update root pyproject.toml with scope filtering and tag ignores
- Create bump helper scripts (bump-mcp.sh, bump-helm.sh, bump-astrolabe.sh)
- Add CONTRIBUTING.md with version management documentation
- Create component-specific changelogs
- Configure appVersion/version separation for Helm chart

This allows each component to release independently while maintaining
proper version tracking and changelog generation.
This commit is contained in:
Chris Coutinho
2025-12-19 18:06:39 +01:00
parent 46b260641f
commit 4a42b947bc
14 changed files with 429 additions and 8 deletions
+14
View File
@@ -0,0 +1,14 @@
#!/bin/bash
# Bump Astrolabe app version
set -e
cd third_party/astrolabe
echo "Bumping Astrolabe version..."
uv run cz --config .cz.toml bump --yes
echo "✓ Astrolabe version bumped"
echo " - Updated: appinfo/info.xml, package.json"
echo " - Tag format: astrolabe-v\${version}"
cd ../..
+15
View File
@@ -0,0 +1,15 @@
#!/bin/bash
# Bump Helm chart version
set -e
cd charts/nextcloud-mcp-server
echo "Bumping Helm chart version..."
uv run cz --config .cz.toml bump --yes
echo "✓ Helm chart version bumped"
echo " - Updated: Chart.yaml:version"
echo " - Tag format: nextcloud-mcp-server-\${version}"
echo " - Note: appVersion stays at MCP server version"
cd ../..
+10
View File
@@ -0,0 +1,10 @@
#!/bin/bash
# Bump MCP server version
set -e
echo "Bumping MCP server version..."
uv run cz bump --yes
echo "✓ MCP server version bumped"
echo " - Updated: pyproject.toml, Chart.yaml:appVersion"
echo " - Tag format: v\${version}"