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 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"