From 10fa7f175fdcb3c6e74c6d3477eb7d4fdd0fe07e Mon Sep 17 00:00:00 2001 From: Nick Gasson Date: Fri, 11 Aug 2023 10:12:30 +0100 Subject: [PATCH] Split Ubuntu package build into separate workflow step --- .github/workflows/build-test.yml | 46 +++++++++++++++++++++----------- 1 file changed, 30 insertions(+), 16 deletions(-) diff --git a/.github/workflows/build-test.yml b/.github/workflows/build-test.yml index b5e4d5348..cdd4fad63 100644 --- a/.github/workflows/build-test.yml +++ b/.github/workflows/build-test.yml @@ -61,18 +61,6 @@ jobs: with: github-token: ${{ secrets.GITHUB_TOKEN }} path-to-lcov: ./build/coverage/nvc.info - - name: Build Debian package - run: | - ln -s contrib/debian debian - sed -i 's/nvc (.*)/nvc (${{ env.VERSION }}-1)/' debian/changelog - sudo apt-get build-dep . - dpkg-buildpackage -uc -us -b - mv ../*.deb . - - name: 'Upload artifact' - uses: actions/upload-artifact@v3 - with: - name: 'Ubuntu package' - path: nvc_${{ env.VERSION }}-1_amd64.deb build-mac: name: Mac OS @@ -176,9 +164,35 @@ jobs: name: 'MSYS2 mingw64 package' path: contrib/msys2/${{ env.MSYS2_PKG }} + build-package: + name: Ubuntu 20.04 + runs-on: ubuntu-20.04 + steps: + - uses: actions/checkout@v3 + with: + fetch-depth: 1 + - name: Get version + id: version + run: | + vers=$(sed -n '1s/AC_INIT(\[.*\], \[\([0-9\.]*\).*\].*/\1/p' configure.ac) + full=$(git log --date=format:%Y%m%d --pretty=$vers~git%cd.%h -1) + echo "VERSION=$full" >> $GITHUB_ENV + - name: Build Debian package + run: | + ln -s contrib/debian debian + sed -i 's/nvc (.*)/nvc (${{ env.VERSION }}-1)/' debian/changelog + sudo apt-get build-dep . + dpkg-buildpackage -uc -us -b + mv ../*.deb . + - name: 'Upload artifact' + uses: actions/upload-artifact@v3 + with: + name: 'Ubuntu package' + path: nvc_${{ env.VERSION }}-1_amd64.deb + vests: name: VESTs - needs: [ build-ubuntu ] + needs: [ build-package ] runs-on: ubuntu-20.04 steps: - uses: actions/checkout@v3 @@ -208,7 +222,7 @@ jobs: projects: name: External Projects - needs: [ build-ubuntu ] + needs: [ build-package ] runs-on: ubuntu-20.04 timeout-minutes: 15 steps: @@ -268,7 +282,7 @@ jobs: vunit: name: VUnit - needs: [ build-ubuntu ] + needs: [ build-package ] runs-on: ubuntu-20.04 steps: - uses: actions/checkout@v3 @@ -340,7 +354,7 @@ jobs: osvvm: if: ${{ false }} # Takes too long for now name: OSVVM - needs: [ build-ubuntu ] + needs: [ build-package ] runs-on: ubuntu-20.04 steps: - uses: actions/checkout@v3