Move distributed bug fixing app from core/cli internal/bugseti/ and cmd/bugseti/ into its own module. Library code at package root, app entry point in cmd/, design docs in docs/. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
134 lines
3.9 KiB
YAML
134 lines
3.9 KiB
YAML
version: '3'
|
|
|
|
includes:
|
|
common: ./build/Taskfile.yml
|
|
windows: ./build/windows/Taskfile.yml
|
|
darwin: ./build/darwin/Taskfile.yml
|
|
linux: ./build/linux/Taskfile.yml
|
|
|
|
vars:
|
|
APP_NAME: "bugseti"
|
|
BIN_DIR: "bin"
|
|
VITE_PORT: '{{.WAILS_VITE_PORT | default 9246}}'
|
|
|
|
tasks:
|
|
build:
|
|
summary: Builds the application
|
|
cmds:
|
|
- task: "{{OS}}:build"
|
|
|
|
package:
|
|
summary: Packages a production build of the application
|
|
cmds:
|
|
- task: "{{OS}}:package"
|
|
|
|
run:
|
|
summary: Runs the application
|
|
cmds:
|
|
- task: "{{OS}}:run"
|
|
|
|
dev:
|
|
summary: Runs the application in development mode
|
|
cmds:
|
|
- wails3 dev -config ./build/config.yml -port {{.VITE_PORT}}
|
|
|
|
build:all:
|
|
summary: Builds for all platforms
|
|
cmds:
|
|
- task: darwin:build
|
|
vars:
|
|
PRODUCTION: "true"
|
|
- task: linux:build
|
|
vars:
|
|
PRODUCTION: "true"
|
|
- task: windows:build
|
|
vars:
|
|
PRODUCTION: "true"
|
|
|
|
package:all:
|
|
summary: Packages for all platforms
|
|
cmds:
|
|
- task: darwin:package
|
|
- task: linux:package
|
|
- task: windows:package
|
|
|
|
clean:
|
|
summary: Cleans build artifacts
|
|
cmds:
|
|
- rm -rf bin/
|
|
- rm -rf frontend/dist/
|
|
- rm -rf frontend/node_modules/
|
|
|
|
# Release targets
|
|
release:stable:
|
|
summary: Creates a stable release tag
|
|
desc: |
|
|
Creates a stable release tag (bugseti-vX.Y.Z).
|
|
Usage: task release:stable VERSION=1.0.0
|
|
preconditions:
|
|
- sh: '[ -n "{{.VERSION}}" ]'
|
|
msg: "VERSION is required. Usage: task release:stable VERSION=1.0.0"
|
|
cmds:
|
|
- git tag -a "bugseti-v{{.VERSION}}" -m "BugSETI v{{.VERSION}} stable release"
|
|
- echo "Created tag bugseti-v{{.VERSION}}"
|
|
- echo "To push: git push origin bugseti-v{{.VERSION}}"
|
|
|
|
release:beta:
|
|
summary: Creates a beta release tag
|
|
desc: |
|
|
Creates a beta release tag (bugseti-vX.Y.Z-beta.N).
|
|
Usage: task release:beta VERSION=1.0.0 BETA=1
|
|
preconditions:
|
|
- sh: '[ -n "{{.VERSION}}" ]'
|
|
msg: "VERSION is required. Usage: task release:beta VERSION=1.0.0 BETA=1"
|
|
- sh: '[ -n "{{.BETA}}" ]'
|
|
msg: "BETA number is required. Usage: task release:beta VERSION=1.0.0 BETA=1"
|
|
cmds:
|
|
- git tag -a "bugseti-v{{.VERSION}}-beta.{{.BETA}}" -m "BugSETI v{{.VERSION}} beta {{.BETA}}"
|
|
- echo "Created tag bugseti-v{{.VERSION}}-beta.{{.BETA}}"
|
|
- echo "To push: git push origin bugseti-v{{.VERSION}}-beta.{{.BETA}}"
|
|
|
|
release:nightly:
|
|
summary: Creates a nightly release tag
|
|
desc: Creates a nightly release tag (bugseti-nightly-YYYYMMDD)
|
|
vars:
|
|
DATE:
|
|
sh: date -u +%Y%m%d
|
|
cmds:
|
|
- git tag -a "bugseti-nightly-{{.DATE}}" -m "BugSETI nightly build {{.DATE}}"
|
|
- echo "Created tag bugseti-nightly-{{.DATE}}"
|
|
- echo "To push: git push origin bugseti-nightly-{{.DATE}}"
|
|
|
|
release:push:
|
|
summary: Pushes the latest release tag
|
|
desc: |
|
|
Pushes the most recent bugseti-* tag to origin.
|
|
Usage: task release:push
|
|
vars:
|
|
TAG:
|
|
sh: git tag -l 'bugseti-*' | sort -V | tail -1
|
|
preconditions:
|
|
- sh: '[ -n "{{.TAG}}" ]'
|
|
msg: "No bugseti-* tags found"
|
|
cmds:
|
|
- echo "Pushing tag {{.TAG}}..."
|
|
- git push origin {{.TAG}}
|
|
- echo "Tag {{.TAG}} pushed. GitHub Actions will build and release."
|
|
|
|
release:list:
|
|
summary: Lists all BugSETI release tags
|
|
cmds:
|
|
- echo "=== BugSETI Release Tags ==="
|
|
- git tag -l 'bugseti-*' | sort -V
|
|
|
|
version:
|
|
summary: Shows current version info
|
|
cmds:
|
|
- |
|
|
echo "=== BugSETI Version Info ==="
|
|
echo "Latest stable tag:"
|
|
git tag -l 'bugseti-v*' | grep -v beta | sort -V | tail -1 || echo " (none)"
|
|
echo "Latest beta tag:"
|
|
git tag -l 'bugseti-v*-beta.*' | sort -V | tail -1 || echo " (none)"
|
|
echo "Latest nightly tag:"
|
|
git tag -l 'bugseti-nightly-*' | sort -V | tail -1 || echo " (none)"
|