This guide explains how to build and test aurvt locally before creating releases.
# Build with development version
./dev-build.sh
# Or use make
make dev# Build with specific version
./build.sh "1.0.0-test" "abc123" "test"
# Or use make
make test-build# Bump patch version and test
./bump-version.sh patch
# Bump minor version and test
./bump-version.sh minor
# Bump major version and test
./bump-version.sh major
# Use custom version
./bump-version.sh patch "2.0.0-beta"make build- Build with version from git tagmake dev- Development build with custom versionmake test-build- Test build with specific versionmake quick- Quick build without version injection./dev-build.sh- Development build with testing./bump-version.sh [type] [version]- Version bump and test
make test-package- Test on sample packagemake test-multiple- Test on multiple packages./aurvt version- Show version information./aurvt [package-directory]- Test on specific package
make clean- Remove build artifactsmake install- Install to systemmake uninstall- Remove from systemmake test- Run Go testsmake help- Show all available commands
Edit the code in main.go or other files.
# Build and test with development version
./dev-build.sh
# Or test specific version
./bump-version.sh patchmake test-multiplegit add .
git commit -m "feat: add new feature"
git push origin masterThe semantic-release setup will automatically:
- Analyze commits
- Generate changelog
- Create GitHub release
- Tag the release
The current version is managed in package.json and used by semantic-release.
patch- Bug fixes (0.0.1)minor- New features (0.1.0)major- Breaking changes (1.0.0)
You can specify custom versions for testing:
./bump-version.sh patch "2.0.0-beta"
./build.sh "1.0.0-rc1" "abc123" "release"The following packages are used for testing:
../aur-pkgbuilds/python-conda-libmamba-solver- Standard package../aur-pkgbuilds/rot8-git- Git package../aur-pkgbuilds/openmohaa-git- Git package with variables
# Test single package
./aurvt ../aur-pkgbuilds/python-conda-libmamba-solver
# Test multiple packages
make test-multiple
# Test specific package
./aurvt ../aur-pkgbuilds/rot8-gitMain build script with version injection:
./build.sh [version] [commit] [build-type]Development build with automatic testing:
./dev-build.sh [version] [commit] [build-type]Version bump with testing:
./bump-version.sh [patch|minor|major] [custom-version]- Ensure Go is installed and in PATH
- Check that all dependencies are available
- Verify git repository is properly initialized
- Ensure aur-pkgbuilds directory exists
- Check that sample packages are available
- Verify GitHub API access for version checking
- Check package.json for current version
- Ensure git tags are properly set
- Verify semantic-release configuration
The build process uses these environment variables:
VERSION- Version string (default: from git tag)COMMIT- Commit hash (default: from git)DATE- Build date (auto-generated)BUILD_TYPE- Build type (dev, test, release)
The semantic-release setup automatically:
- Analyzes commit messages
- Determines version bump type
- Generates changelog
- Creates GitHub release
- Tags the release
For local testing before release, use the development build commands above.