# 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 . 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: actions/setup-go@v5 with: go-version: '1.24' - name: Get Changes between Tags id: changes uses: simbo/changes-between-tags-action@v1 - 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 ( cd out && tar -czvf ../alr-${{ env.VERSION }}-linux-x86_64.tar.gz * ) - name: Release uses: akkuman/gitea-release-action@v1 with: body: ${{ steps.changes.outputs.changes }} files: |- alr-${{ env.VERSION }}-linux-x86_64.tar.gz - name: Setup working directory run: mkdir -p /tmp/alr-default - name: Clone alr-default repository run: | git clone https://gitea:${{ secrets.GITEAPUBLIC }}@gitea.plemya-x.ru/Plemya-x/alr-default.git alr-default - name: Update version in alr-bin run: | # Замените значения в файле с конфигурацией sed -i "s/version='[0-9]\+\.[0-9]\+\.[0-9]\+'/version='${{ env.VERSION }}'/g" ./alr-bin/alr.sh sed -i "s/release='[0-9]\+'/release='1'/g" ./alr-bin/alr.sh - name: Commit changes run: | cd alr-default git config user.name "gitea" git config user.email "admin@plemya-x.ru" git add . git commit -m "Обновление версии до ${{ env.VERSION }}" git push origin master - name: Build packages run: | SCRIPT_PATH=alr-default/alr-bin/alr.sh ALR_DISTRO=altlinux ALR_PKG_FORMAT=rpm alr build -s "$SCRIPT_PATH" ALR_PKG_FORMAT=rpm alr build -s "$SCRIPT_PATH" ALR_PKG_FORMAT=deb alr build -s "$SCRIPT_PATH" ALR_PKG_FORMAT=archlinux alr build -s "$SCRIPT_PATH" - name: Upload assets uses: akkuman/gitea-release-action@v1 with: body: ${{ steps.changes.outputs.changes }} files: |- alr-bin+alr-default_${{ env.VERSION }}-1.red80_amd64.deb \ alr-bin+alr-default-${{ env.VERSION }}-1-x86_64.pkg.tar.zst \ alr-bin+alr-default-${{ env.VERSION }}-1.red80.x86_64.rpm \ alr-bin+alr-default-${{ env.VERSION }}-alt1.x86_64.rpm