name: Altlinux build run-name: Deploy to ${{ inputs.deploy_target }} by @${{ github.actor }} 🚀 on: - push - workflow_dispatch if: ${{ github.ref }} == 'refs/head/master' jobs: build-alt: ## runs-on: alt-latest container: image: prj.zxalexis.ru/zx/alt-rpmbuild branches: - 'master' steps: - name: Checking environment continue-on-error: true run: printenv ## - name: Installing prerequisites - update apt ## run: apt-get update ## - name: Installing prerequisites - install nodejs for actions & git ## run: apt-get install -y git nodejs su ## - name: Installing build environment ## continue-on-error: true ## run: | ## apt-get install -y gcc rpm-build rpmlint make python gear hasher fakeroot patch rpmdevtools - name: Installing needed software run: apt-get install -y bison tcl - name: Adding build user run: useradd -d /builder -g users -m builder - name: Fetching sources uses: actions/checkout@v4 - name: Getting version info run: | echo "BFORCE_VER=$(cat ${{ env.GITHUB_WORKSPACE }}/source/.version)" >> $GITHUB_ENV - name: Compressing source to tar.gz archive run: | tar -cvzf ../bforce-${{ env.BFORCE_VER }}.tar.gz -C ${{ env.GITHUB_WORKSPACE }}/.. bforce cp -v ${{ env.GITHUB_WORKSPACE }}/rpm/bforce.spec /builder/ chown builder /builder/bforce.spec echo '-------------------------------------------------------' pwd ls /builder sed -i 's/^# %setup/%setup/' /builder/bforce.spec - name: Building buildtree run: | su - builder -c "cd /builder && mkdir -pv rpmbuild/{RPMS,SRPMS,SOURCES,BUILD,SPECS}" ls /builder -l mkdir -pv /builder/rpmbuild/SOURCES mv ${{ env.GITHUB_WORKSPACE }}/../bforce-${{ env.BFORCE_VER }}.tar.gz /builder/rpmbuild/SOURCES/ chown -R builder /builder/* - name: Building binary and source RPM run: | su - builder -c 'rpmbuild -bb /builder/bforce.spec --define "_topdir /builder/rpmbuild"' - name: Constructing artifact name and version run: | echo "BFORCE_VERLONG=$(cat ${{ env.GITHUB_WORKSPACE }}/source/.version)-$(date +%Y%M%d)" >> $GITHUB_ENV - name: Retrieving artifact files run: mkdir bforce && cp /builder/rpmbuild/RPMS/x86_64/bforce-*.rpm bforce - name: Try to upload artifacts bin uses: actions/upload-artifact@v3 with: name: bforce-${{ env.BFORCE_VERLONG }}-Alt path: /builder/rpmbuild/RPMS/x86_64 - name: Echo OK run: echo "All OK"