forked from Plemya-x/ALR
		
	ci: add release workflow
This commit is contained in:
		
							
								
								
									
										70
									
								
								.gitea/workflows/release.yaml
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										70
									
								
								.gitea/workflows/release.yaml
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,70 @@ | |||||||
|  | # ALR - Any Linux Repository | ||||||
|  | # Copyright (C) 2025 The ALR Authors | ||||||
|  | # | ||||||
|  | # This program is free software: you can redistribute it and/or modify | ||||||
|  | # it under the terms of the GNU General Public License as published by | ||||||
|  | # the Free Software Foundation, either version 3 of the License, or | ||||||
|  | # (at your option) any later version. | ||||||
|  | # | ||||||
|  | # This program is distributed in the hope that it will be useful, | ||||||
|  | # but WITHOUT ANY WARRANTY; without even the implied warranty of | ||||||
|  | # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the | ||||||
|  | # GNU General Public License for more details. | ||||||
|  | # | ||||||
|  | # You should have received a copy of the GNU General Public License | ||||||
|  | # along with this program.  If not, see <http://www.gnu.org/licenses/>. | ||||||
|  |  | ||||||
|  | name: Create Release | ||||||
|  |  | ||||||
|  | on: | ||||||
|  |   push: | ||||||
|  |     tags: | ||||||
|  |       - 'v[0-9]+.[0-9]+.[0-9]+' | ||||||
|  |  | ||||||
|  | jobs: | ||||||
|  |   changelog: | ||||||
|  |     runs-on: ubuntu-latest | ||||||
|  |     steps: | ||||||
|  |       - name: Checkout this repository | ||||||
|  |         uses: actions/checkout@v4 | ||||||
|  |         with: | ||||||
|  |           fetch-depth: 0 | ||||||
|  |  | ||||||
|  |       - name: Set up Go | ||||||
|  |         uses: https://github.com/actions/setup-go@v5 | ||||||
|  |         with: | ||||||
|  |           go-version: '1.24' | ||||||
|  |  | ||||||
|  |       - name: Generate changelog | ||||||
|  |         run: | | ||||||
|  |           echo "Changes: " > changelog.txt | ||||||
|  |           echo "```" >> changelog.txt | ||||||
|  |           git log $(git describe --tags --abbrev=0)..HEAD --oneline >> changelog.txt | ||||||
|  |           echo "```" >> changelog.txt | ||||||
|  |  | ||||||
|  |       - name: Set version | ||||||
|  |         run: | | ||||||
|  |           version=$(echo "${GITHUB_REF##*/}" | sed 's/^v//') | ||||||
|  |           echo "Version - $version" | ||||||
|  |           echo "VERSION=$version" >> $GITHUB_ENV | ||||||
|  |  | ||||||
|  |       - name: Build alr binary | ||||||
|  |         run: | | ||||||
|  |           CGO_ENABLED=0 go build -ldflags "-X gitea.plemya-x.ru/Plemya-x/ALR/internal/config.Version=${{ env.VERSION }}" -o alr | ||||||
|  |  | ||||||
|  |       - name: Create tar.gz | ||||||
|  |         run: | | ||||||
|  |           mkdir -p ./out/completion | ||||||
|  |           cp alr ./out | ||||||
|  |           cp scripts/completion/bash ./out/completion/alr | ||||||
|  |           cp scripts/completion/zsh ./out/completion/_alr | ||||||
|  |  | ||||||
|  |           tar -czvf alr-${{ env.VERSION }}-linux-x86_64.tar.gz -С out . | ||||||
|  |  | ||||||
|  |       - name: Release | ||||||
|  |         uses: actions/gitea-release-action@v1 | ||||||
|  |         with: | ||||||
|  |           body_path: changelog.txt | ||||||
|  |           files: |- | ||||||
|  |             alr-${{ env.VERSION }}-linux-x86_64.tar.gz | ||||||
|  |              | ||||||
		Reference in New Issue
	
	Block a user