-
Notifications
You must be signed in to change notification settings - Fork 46
Commit 05b9bb1
authored
feat(tag_release): add advanced options and devops friendly features (#322)
## Description
- Add CLI argument parsing with short and long options
- Implement JSON output format for programmatic consumption
- Add dry-run mode for safe testing
- Include verbose and quiet logging modes
- Add namespace and module filtering capabilities
- Implement skip-push option for tag creation without remote push
- Add pre-flight checks for git repository validation
- Enhance error handling with structured logging
- Add exit codes for different operation states
- Include comprehensive help documentation with examples
```
Usage: ./scripts/tag_release.sh [OPTIONS]
OPTIONS:
-y, --auto-approve Skip confirmation prompt
-d, --dry-run Preview without creating tags
-v, --verbose Detailed output
-q, --quiet Minimal output
-f, --format=FORMAT Output format: 'plain' or 'json'
-n, --namespace=NAME Target specific namespace
-m, --module=NAME Target specific module
-s, --skip-push Create tags but don't push
-h, --help Show this help
EXAMPLES:
./scripts/tag_release.sh # Interactive mode
./scripts/tag_release.sh -y -q -f json # CI/CD automation
./scripts/tag_release.sh -d -v # Test with verbose output
./scripts/tag_release.sh -m code-server -d # Target specific module
./scripts/tag_release.sh -n coder -m code-server -d # Target module in namespace
Exit codes: 0=success, 1=error, 2=no action needed, 3=validation failed
```
## Type of Change
- [ ] New module
- [ ] Bug fix
- [X] Feature/enhancement
- [ ] Documentation
- [ ] Other
## Testing & Validation
- [X] Tests pass (`bun test`)
- [X] Code formatted (`bun run fmt`)
- [X] Changes tested locally
## Related Issues
<!-- Link related issues or write "None" if not applicable -->## Module
Information
None1 parent 45b72c7 commit 05b9bb1Copy full SHA for 05b9bb1
File tree
Expand file treeCollapse file tree
1 file changed
+487
-98
lines changedFilter options
- scripts
Expand file treeCollapse file tree
1 file changed
+487
-98
lines changed
0 commit comments