edouard@80: name: Build windows installer in Docker edouard@46: edouard@46: on: edouard@68: workflow_dispatch: edouard@68: # push: edouard@68: # branches: [ default ] edouard@46: edouard@46: jobs: edouard@68: sources: edouard@75: uses: ./.github/workflows/prep_sources.yml edouard@46: edouard@46: build: edouard@78: needs: sources edouard@46: runs-on: ubuntu-latest edouard@46: edouard@46: steps: edouard@77: - uses: actions/checkout@v3 edouard@77: with: edouard@77: path: beremiz_public_dist edouard@77: edouard@77: - name: Download source artifact edouard@77: uses: actions/download-artifact@v3 edouard@77: with: edouard@77: name: source_package edouard@77: edouard@55: - name: Cache docker image edouard@55: id: cache-docker edouard@55: uses: actions/cache@v3 edouard@55: env: edouard@55: cache-name: cache-docker edouard@55: with: edouard@55: path: /tmp/latest.tar edouard@55: key: ${{ runner.os }}-build-${{ env.cache-name }}-${{ hashFiles('beremiz_public_dist/Dockerfile', 'beremiz_public_dist/*.sh') }} edouard@55: edouard@55: - if: ${{ steps.cache-docker.outputs.cache-hit == false }} edouard@55: name: Create docker image edouard@46: run: | edouard@46: cd beremiz_public_dist edouard@46: ./build_docker_image.sh edouard@55: docker image save --output="/tmp/latest.tar" beremiz_public_builder edouard@55: edouard@55: - if: ${{ steps.cache-docker.outputs.cache-hit != false }} edouard@55: name: Re-use docker image edouard@55: run: | edouard@55: docker image load --input="/tmp/latest.tar" edouard@46: edouard@46: - name: Create docker container edouard@46: run: | edouard@46: cd beremiz_public_dist edouard@46: ./create_docker_container.sh ${{ github.workspace }}/build edouard@46: edouard@48: - name: Run build in docker edouard@46: run: | edouard@46: cd beremiz_public_dist edouard@68: # override HG revision IDs in Makefile edouard@59: ./build_in_docker.sh \ edouard@68: beremiz_revisionid=${{ needs.sources.outputs.beremiz_revisionid }} \ edouard@68: matiec_revisionid=${{ needs.sources.outputs.matiec_revisionid }} \ edouard@84: canfestival_revisionid=${{ needs.sources.outputs.canfestival_revisionid }} \ edouard@84: Modbus_revisionid=${{ needs.sources.outputs.Modbus_revisionid }} \ edouard@84: open62541_revisionid=${{ needs.sources.outputs.open62541_revisionid }} edouard@46: edouard@46: - name: Upload built artifact edouard@46: uses: actions/upload-artifact@v3 edouard@46: with: edouard@46: name: windows_bundles edouard@46: path: | edouard@46: ${{ github.workspace }}/build/Beremiz-*.exe edouard@46: ${{ github.workspace }}/build/Beremiz-*.zip edouard@46: retention-days: 5 edouard@46: