diff --git a/.github/workflows/build-assets.yml b/.github/workflows/build-assets.yml index f58de1595a2..8d1053da82c 100644 --- a/.github/workflows/build-assets.yml +++ b/.github/workflows/build-assets.yml @@ -426,33 +426,4 @@ jobs: path: ${{ needs.preamble.outputs.folder_build }}/**/*.log - run-package-manifest: - needs: [preamble, build-docker] - runs-on: ubuntu-22.04 - steps: - - name: Checkout repository - uses: actions/checkout@v2 - - - name: Login to Docker Hub - uses: docker/login-action@v3 - with: - username: ${{ secrets.DOCKER_USERNAME }} - password: ${{ secrets.DOCKER_PASSWORD }} - - - name: Pull Docker Image - run: docker pull ${{ github.repository_owner }}/package-manifest:latest - - name: Run Docker Container - run: docker run --name package-container ${{ github.repository_owner }}/package-manifest:latest - - - name: Fetch Output from Container - run: docker cp package-container:/app/output.json ${{ github.workspace }}/output.json - - - name: Upload output.json to GitHub Release - uses: ncipollo/release-action@v1.14.0 - with: - allowUpdates: true - generateReleaseNotes: false - prerelease: ${{ contains(github.ref, '-rc') }} - artifacts: ${{ github.workspace }}/output.json - token: ${{ secrets.GITHUB_TOKEN }} diff --git a/.github/workflows/build-vcpkg.yml b/.github/workflows/build-vcpkg.yml index 0cf26085f6a..94da5ca9431 100644 --- a/.github/workflows/build-vcpkg.yml +++ b/.github/workflows/build-vcpkg.yml @@ -212,3 +212,8 @@ jobs: cmake-configuration-ex: '-DUSE_CPPUNIT=OFF -DCLIENTTOOLS_ONLY=ON -DINCLUDE_PLUGINS=OFF -DUSE_AZURE=OFF -DUSE_CASSANDRA=OFF -DUSE_PARQUET=OFF -DSUPPRESS_CASSANDRAEMBED=ON -DUSE_JAVA=OFF -DUSE_OPENLDAP=OFF' secrets: inherit + run-package-manifest: + if: ${{ contains('workflow_dispatch', github.event_name) }} + needs: build-workflow-dispatch + uses: ./.github/workflows/package-manifests.yml + secrets: inherit diff --git a/.github/workflows/package-manifests.yml b/.github/workflows/package-manifests.yml new file mode 100644 index 00000000000..392ab3ec6aa --- /dev/null +++ b/.github/workflows/package-manifests.yml @@ -0,0 +1,55 @@ +name: Generate Package Manifest + +on: + workflow_call: + secrets: + DOCKER_USERNAME: + required: true + DOCKER_PASSWORD: + required: true + GITHUB_TOKEN: + required: true + +jobs: + run-package-manifest: + runs-on: ubuntu-22.04 + steps: + - name: Checkout repository + uses: actions/checkout@v2 + + - name: Login to Docker Hub + uses: docker/login-action@v3 + with: + username: ${{ secrets.DOCKER_USERNAME }} + password: ${{ secrets.DOCKER_PASSWORD }} + + - name: Determine Tag + id: determine_tag + run: | + if [ "${{ github.ref }}" == "refs/tags/"* ]; then + echo "TAG=${{ github.ref }}" | sed 's/refs\/tags\///' >> $GITHUB_ENV + else + echo "No tag found." + exit 1 + fi + + - name: Print determined tag + run: echo "Determined tag is ${{ env.TAG }}" + + - name: Pull Docker Image + run: docker pull ${{ secrets.DOCKER_USERNAME }}/package-manifest:latest + + - name: Run Docker Container + run: docker run --name package-container -e REPO_OWNER=${{ github.repository_owner }} -e REPO_NAME=HPCC-Platform -e TAG=${{ env.TAG }} ${{ secrets.DOCKER_USERNAME }}/package-manifest:latest + + - name: Fetch Output from Container + run: docker cp package-container:/app/output.json ${{ github.workspace }}/output.json + + - name: Upload output.json to GitHub Release + uses: ncipollo/release-action@v1.14.0 + with: + allowUpdates: true + generateReleaseNotes: false + prerelease: ${{ contains(github.ref, '-rc') }} + artifacts: ${{ github.workspace }}/output.json + token: ${{ secrets.GITHUB_TOKEN }}