7404f768d3
- close_issue.sh: add set -euo pipefail, argument validation, confirmation output - mark_issue.sh: track previously untracked claim/release script - create_pr.sh: remove hardcoded one-off (use create_pr.py instead) - README.md: reflect current toolset with usage examples - .gitignore: ignore venv/ and __pycache__/
49 lines
1.7 KiB
Markdown
49 lines
1.7 KiB
Markdown
# Gitea Tools
|
|
|
|
A collection of Python and Bash scripts to automate interactions with Gitea instances.
|
|
|
|
## Supported Instances
|
|
|
|
| Remote | Host | Org / Repo |
|
|
|----------------|----------------------------|-------------------------------------|
|
|
| `dadeschools` | `gitea.dadeschools.net` | `Contractor / Timesheet` |
|
|
| `prgs` | `gitea.prgs.cc` | `Scaled-Tech-Consulting / Timesheet`|
|
|
|
|
## Authentication
|
|
|
|
These scripts securely extract tokens from the macOS keychain to avoid hardcoding secrets.
|
|
|
|
Credentials are retrieved via `git credential fill` for the target host. Ensure you have
|
|
logged in via Git over HTTPS at least once so the keychain caches your credentials.
|
|
|
|
## Available Scripts
|
|
|
|
| Script | Description |
|
|
|---------------------|-----------------------------------------------------|
|
|
| `create_issue.py` | Create an issue (`--remote`, `--title`, `--body`) |
|
|
| `create_pr.py` | Open a Pull Request (`--remote`, `--title`, `--head`, `--base`) |
|
|
| `close_issue.sh` | Close a specific issue (dadeschools only) |
|
|
| `mark_issue.sh` | Claim/release an issue via `status:in-progress` label |
|
|
| `manage_labels.py` | Create label set and apply label mappings (`--dry` to preview) |
|
|
|
|
### Quick Examples
|
|
|
|
```bash
|
|
# Create an issue
|
|
./create_issue.py --title "Fix PDF output" --body "Blank on Safari"
|
|
|
|
# Create a PR
|
|
./create_pr.py --title "feat: add validation" --head feat/validation --body "Closes #12"
|
|
|
|
# Close issue #5
|
|
./close_issue.sh 5
|
|
|
|
# Claim an issue before working on it
|
|
./mark_issue.sh 10 start
|
|
|
|
# Release when done
|
|
./mark_issue.sh 10 done
|
|
```
|
|
|
|
Use `--help` on any Python script for full usage details.
|