diff --git a/.github/workflows/PublishDockerImage.yml b/.github/workflows/PublishDockerImage.yml index 23533353b..f7b466aa9 100644 --- a/.github/workflows/PublishDockerImage.yml +++ b/.github/workflows/PublishDockerImage.yml @@ -1,6 +1,12 @@ name: Publishing docker images for mxbuild on: + workflow_dispatch: + inputs: + mendix_version: + description: "Mendix version to build (leave empty to read from mendix-versions.json)" + required: false + default: "" push: branches: [main] paths: @@ -24,42 +30,27 @@ jobs: - name: Getting variables id: variables run: | - echo "mx9=$(sed -n 's/.*"latest": "\([^"]*\)",/\1/p' $JSON_PATH)" >> ${{ runner.os == 'Windows' && '$env:GITHUB_OUTPUT' || '$GITHUB_OUTPUT' }} - echo "mx8=$(sed -n 's/.*"8": "\([^"]*\)"/\1/p' $JSON_PATH)" >> ${{ runner.os == 'Windows' && '$env:GITHUB_OUTPUT' || '$GITHUB_OUTPUT' }} - - - name: Building Mx Build 8 docker image - run: docker build . --file $PWT_PATH/scripts/mxbuild.Dockerfile --build-arg MENDIX_VERSION=${{steps.variables.outputs.mx8}} --tag $MXBUILD:${{steps.variables.outputs.mx8}} --label "runnumber=${GITHUB_RUN_ID}" + if [[ -n "${{ github.event.inputs.mendix_version }}" ]]; then + echo "mx9=${{ github.event.inputs.mendix_version }}" >> $GITHUB_OUTPUT + else + echo "mx9=$(sed -n 's/.*"latest": "\([^"]*\)".*/\1/p' $JSON_PATH)" >> $GITHUB_OUTPUT + fi - name: Building Mx Build 9 docker image run: docker build . --file $PWT_PATH/scripts/mxbuild.Dockerfile --build-arg MENDIX_VERSION=${{steps.variables.outputs.mx9}} --tag $MXBUILD:${{steps.variables.outputs.mx9}} --label "runnumber=${GITHUB_RUN_ID}" - - name: Building Mx Runtime 8 docker image - run: docker build . --file $PWT_PATH/scripts/runtime.Dockerfile --build-arg MENDIX_VERSION=${{steps.variables.outputs.mx8}} --tag $RUNTIME:${{steps.variables.outputs.mx8}} --label "runnumber=${GITHUB_RUN_ID}" - - name: Building MX Runtime 9 docker image run: docker build . --file $PWT_PATH/scripts/runtime.Dockerfile --build-arg MENDIX_VERSION=${{steps.variables.outputs.mx9}} --tag $RUNTIME:${{steps.variables.outputs.mx9}} --label "runnumber=${GITHUB_RUN_ID}" - name: Log in to Container Registry run: echo "${{ secrets.GITHUB_TOKEN }}" | docker login ghcr.io -u ${{ github.actor }} --password-stdin - - name: Push Mx Build 8 Docker Image - run: | - MXBUILD_MX8=ghcr.io/${{ github.repository }}/$MXBUILD:${{steps.variables.outputs.mx8}} - docker tag $MXBUILD:${{steps.variables.outputs.mx8}} $MXBUILD_MX8 - if [[ $(docker manifest inspect $MXBUILD_MX8 > /dev/null ; echo $?) = 0 ]] ; then echo 'Docker image already exists'; else docker push $MXBUILD_MX8 ; fi - - name: Push Mx Build 9 Docker Image run: | MXBUILD_MX9=ghcr.io/${{ github.repository }}/$MXBUILD:${{steps.variables.outputs.mx9}} docker tag $MXBUILD:${{steps.variables.outputs.mx9}} $MXBUILD_MX9 if [[ $(docker manifest inspect $MXBUILD_MX9 > /dev/null ; echo $?) = 0 ]] ; then echo 'Docker image already exists'; else docker push $MXBUILD_MX9 ; fi - - name: Push Mx Runtime 8 Docker Image - run: | - RUNTIME_MX8=ghcr.io/${{ github.repository }}/$RUNTIME:${{steps.variables.outputs.mx8}} - docker tag $RUNTIME:${{steps.variables.outputs.mx8}} $RUNTIME_MX8 - if [[ $(docker manifest inspect $RUNTIME_MX8 > /dev/null ; echo $?) = 0 ]] ; then echo 'Docker image already exists'; else docker push $RUNTIME_MX8 ; fi - - name: Push Mx Runtime 9 Docker Image run: | RUNTIME_MX9=ghcr.io/${{ github.repository }}/$RUNTIME:${{steps.variables.outputs.mx9}}