diff --git a/unity-command/action.yaml b/unity-command/action.yaml index b292b9b..357df61 100644 --- a/unity-command/action.yaml +++ b/unity-command/action.yaml @@ -42,13 +42,18 @@ runs: platform: ${{ inputs.platform }} - name: "Pull Unity container." run: | - CONTAINER=${{ steps.getContainer.outputs.container }} + CONTAINER="${{ steps.getContainer.outputs.container }}" - # Activate the license on build. - DOCKER_BUILDKIT=1 \ - SERIAL="${{ inputs.serial }}" USERNAME="${{ inputs.email }}" PASSWORD="${{ inputs.password }}" \ - docker build --secret id=SERIAL,env=SERIAL --secret id=USERNAME,env=USERNAME --secret id=PASSWORD,env=PASSWORD \ - -t ${{ inputs.imageTag }} --build-arg IMAGE=$CONTAINER ${{ github.action_path }} + CACHED_CONTAINER="$CONTAINER-activated" + if [[ -z "$(docker image ls | grep $CACHED_CONTAINER)" ]]; then + # Activate the license on build. + DOCKER_BUILDKIT=1 \ + SERIAL="${{ inputs.serial }}" USERNAME="${{ inputs.email }}" PASSWORD="${{ inputs.password }}" \ + docker build --secret id=SERIAL,env=SERIAL --secret id=USERNAME,env=USERNAME --secret id=PASSWORD,env=PASSWORD \ + -t $CACHED_CONTAINER --build-arg IMAGE=$CONTAINER ${{ github.action_path }} + fi + + docker tag $CACHED_CONTAINER ${{ inputs.imageTag }} shell: bash - name: "Run Unity command." uses: act/unity/unity@master