diff --git a/.github/workflows/build-push.yml b/.github/workflows/build-push.yml index 4683cb1..a55f7a3 100644 --- a/.github/workflows/build-push.yml +++ b/.github/workflows/build-push.yml @@ -124,10 +124,39 @@ jobs: echo "::set-output name=version::$VERSION" outputs: iutVersion: ${{ steps.image.outputs.version }} + build_executionspace: + if: ${{ github.event_name == 'workflow_dispatch' || github.event.pull_request.merged == true }} + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v3 + - name: Build app image + run: docker build . -f deploy/etos-executionspace/Dockerfile --tag image + + - name: Log into registry + run: echo "${{ secrets.REGISTRYPASSWORD }}" | docker login registry.nordix.org -u ${{ secrets.REGISTRYUSERNAME }} --password-stdin + + - name: Push app image + id: image + run: | + IMAGE_ID=registry.nordix.org/eiffel/etos-executionspace + # Strip git ref prefix from version + VERSION=$(echo "${{ github.ref }}" | sed -e 's,.*/\(.*\),\1,') + # Strip "v" prefix from tag name + [[ "${{ github.ref }}" == "refs/tags/"* ]] && VERSION=$(echo $VERSION | sed -e 's/^v//') + # Use Docker `latest` tag convention + [ "$VERSION" == "main" ] && VERSION=$(echo ${{ github.sha }} | cut -c1-8) + echo IMAGE_ID=$IMAGE_ID + echo VERSION=$VERSION + docker tag image $IMAGE_ID:$VERSION + docker push $IMAGE_ID:$VERSION + echo $IMAGE_ID:$VERSION + echo "::set-output name=version::$VERSION" + outputs: + executionSpaceVersion: ${{ steps.image.outputs.version }} update_manifests: if: ${{ github.event_name == 'workflow_dispatch' || github.event.pull_request.merged == true }} runs-on: ubuntu-latest - needs: [build_api, build_sse, build_logarea, build_iut] + needs: [build_api, build_sse, build_logarea, build_iut, build_executionspace] steps: - uses: actions/checkout@v3 - name: Update manifests @@ -146,8 +175,17 @@ jobs: }, "manifests/base/iut/deployment.yaml": { "spec.template.spec.containers[0].image": "registry.nordix.org/eiffel/etos-iut:${{ needs.build_iut.outputs.iutVersion }}" + }, + "manifests/base/executionspace/deployment.yaml": { + "spec.template.spec.containers[0].image": "registry.nordix.org/eiffel/etos-executionspace:${{ needs.build_executionspace.outputs.executionSpaceVersion }}" } } branch: main commitChange: true - message: Updating SSE image to ${{ needs.build_sse.outputs.sseVersion }}, LogArea image to ${{ needs.build_logarea.outputs.logAreaVersion }}, IUT image to ${{ needs.build_iut.outputs.iutVersion }} and API image to ${{ needs.build_api.outputs.apiVersion }} + message: | + Updating ETOS images: + - SSE: ${{ needs.build_sse.outputs.sseVersion }} + - LogArea: ${{ needs.build_logarea.outputs.logAreaVersion }} + - IUT: ${{ needs.build_iut.outputs.iutVersion }} + - Execution Space: ${{ needs.build_executionspace.outputs.executionSpaceVersion }} + - API: ${{ needs.build_api.outputs.apiVersion }}