Files
configure_nginx_manager/docs/en/RELEASE_GUIDE_EN.md

2.9 KiB

🎯 Quick Guide: Automatic Releases

For GitHub

1. Creating a Release

# Create tag
git tag -a v1.0.0 -m "Release version 1.0.0"

# Push tag
git push origin v1.0.0

2. What Happens Automatically

GitHub Actions will run .github/workflows/build-release.yml:

  1. Build Linux version (Ubuntu runner)
  2. Build Windows version (Windows runner)
  3. Create packages
  4. Generate SHA256 checksums
  5. Create GitHub Release
  6. Upload artifacts

3. Result

Release will appear at: https://github.com/USER/REPO/releases/tag/v1.0.0

Files:

  • letsencrypt-regru-linux-x86_64.tar.gz
  • letsencrypt-regru-linux-x86_64.tar.gz.sha256
  • letsencrypt-regru-windows-x86_64.zip
  • letsencrypt-regru-windows-x86_64.zip.sha256

For Gitea

1. Setup (one time)

Enable Actions in Gitea:

Edit app.ini:

[actions]
ENABLED = true
DEFAULT_ACTIONS_URL = https://gitea.com

Install Gitea Runner:

# Download
wget https://dl.gitea.com/act_runner/latest/act_runner-linux-amd64 -O act_runner
chmod +x act_runner

# Register
./act_runner register --no-interactive \
  --instance https://your-gitea.com \
  --token YOUR_RUNNER_TOKEN

# Run
./act_runner daemon

2. Creating a Release

# Create tag
git tag -a v1.0.0 -m "Release version 1.0.0"

# Push tag
git push origin v1.0.0

3. What Happens

Gitea Actions will run .gitea/workflows/release.yml:

  1. Build Linux version
  2. Build Windows version
  3. Create packages
  4. Generate SHA256 + MD5 checksums
  5. Create Gitea Release
  6. Detailed release notes

4. Result

Release will appear at: https://your-gitea.com/USER/REPO/releases/tag/v1.0.0


🔧 Pre-Release Checklist

# 1. Local build
make clean-build
make release

# 2. Testing
make test-build

# 3. Check files
ls -lh dist/

# 4. If all OK - create tag
git tag -a v1.0.0 -m "Release 1.0.0"
git push origin v1.0.0

📊 Monitoring

GitHub:

https://github.com/USER/REPO/actions

Gitea:

https://your-gitea.com/USER/REPO/actions


🐛 If Something Goes Wrong

Delete tag and release:

# Delete local tag
git tag -d v1.0.0

# Delete remote tag
git push --delete origin v1.0.0

# Delete release manually via web interface

Recreate release:

# Fix the issue
git commit -am "Fix build"

# Recreate tag
git tag -a v1.0.0 -m "Release 1.0.0" --force
git push origin v1.0.0 --force

📝 Semantic Versioning

# Major (breaking changes)
git tag v2.0.0

# Minor (new features)
git tag v1.1.0

# Patch (bug fixes)
git tag v1.0.1

# Pre-release
git tag v1.0.0-beta.1
git tag v1.0.0-rc.1

See also:


Author: Dmitry Fofanov
Last Updated: October 28, 2025