diff --git a/.github/workflows/docker-build-push.yml b/.github/workflows/docker-build-push.yml index 9e7636c..2083caa 100644 --- a/.github/workflows/docker-build-push.yml +++ b/.github/workflows/docker-build-push.yml @@ -14,7 +14,6 @@ jobs: outputs: VERSION: ${{ steps.step1.outputs.VERSION }} CONTINUE: ${{ steps.step1.outputs.Continue }} - WIN2019_VERSION: ${{ steps.step1.outputs.WIN2019_VERSION }} WIN2022_VERSION: ${{ steps.step1.outputs.WIN2022_VERSION }} steps: - uses: actions/checkout@v3 @@ -69,20 +68,15 @@ jobs: { Write-Output "We need to upgrade the container to $versionToCompare" - Write-Host "Getting OS versions for windows 2022 and 2019" - $win2019_manifest = (docker manifest inspect --verbose "octopuslabs/workertools:latest-windows.2019" | ConvertFrom-Json) - $WIN2019_VERSION = $win2019_manifest.Descriptor.Platform.'os.version' - Write-Host "WIN2019_VERSION: $WIN2019_VERSION" - + Write-Host "Getting OS versions for windows 2022" $win2022_manifest = (docker manifest inspect --verbose "octopuslabs/workertools:latest-windows.2022" | ConvertFrom-Json) $WIN2022_VERSION = $win2022_manifest.Descriptor.Platform.'os.version' Write-Host "WIN2022_VERSION: $WIN2022_VERSION" - if([string]::IsNullOrWhiteSpace($WIN2019_VERSION) -or [string]::IsNullOrWhiteSpace($WIN2022_VERSION)) { - throw "Could not establish OS versions for windows 2022 and 2019 needed for docker manifest" + if([string]::IsNullOrWhiteSpace($WIN2022_VERSION)) { + throw "Could not establish OS versions for windows 2022 needed for docker manifest" } - echo "WIN2019_VERSION=$WIN2019_VERSION" >> $env:GITHUB_OUTPUT echo "WIN2022_VERSION=$WIN2022_VERSION" >> $env:GITHUB_OUTPUT Write-Host "We have everything we need, continuing." @@ -138,37 +132,6 @@ jobs: run: docker push octopuslabs/gcp-workertools:latest-ubuntu.2204 if: ${{ needs.get-version-number.outputs.CONTINUE == 'Yes' }} - build-win-2019: - needs: [get-version-number] - runs-on: windows-2019 - - steps: - - uses: actions/checkout@v3 - - - name: DockerHub Login - env: - USERNAME: ${{ secrets.DOCKER_HUB_USER }} - PASSWORD: ${{ secrets.DOCKER_HUB_PAT }} - run: docker login --username ${env:USERNAME} --password "${env:PASSWORD}" - if: ${{ needs.get-version-number.outputs.CONTINUE == 'Yes' }} - - - name: Build the win2019 image - env: - VERSION_NUMBER: ${{ needs.get-version-number.outputs.VERSION }} - GOOGLE_CLOUD_CLI_VERSION: ${{ needs.get-version-number.outputs.VERSION }} - run: docker build ./windows-2019 --build-arg GOOGLE_CLOUD_CLI_VERSION=${env:GOOGLE_CLOUD_CLI_VERSION} --tag octopuslabs/gcp-workertools:${env:VERSION_NUMBER}-windows.2019 --tag octopuslabs/gcp-workertools:latest-windows.2019 - if: ${{ needs.get-version-number.outputs.CONTINUE == 'Yes' }} - - - name: Push the win2019 version-specific image - env: - VERSION_NUMBER: ${{ needs.get-version-number.outputs.VERSION }} - run: docker push octopuslabs/gcp-workertools:${env:VERSION_NUMBER}-windows.2019 - if: ${{ needs.get-version-number.outputs.CONTINUE == 'Yes' }} - - - name: Push the win2019 latest image - run: docker push octopuslabs/gcp-workertools:latest-windows.2019 - if: ${{ needs.get-version-number.outputs.CONTINUE == 'Yes' }} - build-win-2022: needs: [get-version-number] runs-on: windows-2022 @@ -201,7 +164,7 @@ jobs: if: ${{ needs.get-version-number.outputs.CONTINUE == 'Yes' }} build-docker-manifest: - needs: [get-version-number, build-ubuntu, build-win-2019, build-win-2022] + needs: [get-version-number, build-ubuntu, build-win-2022] runs-on: ubuntu-latest steps: @@ -213,15 +176,13 @@ jobs: if: ${{ needs.get-version-number.outputs.CONTINUE == 'Yes' }} - name: Create docker manifest for latest tag - run: docker manifest create octopuslabs/gcp-workertools:latest octopuslabs/gcp-workertools:latest-windows.2019 octopuslabs/gcp-workertools:latest-windows.2022 octopuslabs/gcp-workertools:latest-ubuntu.2204 + run: docker manifest create octopuslabs/gcp-workertools:latest octopuslabs/gcp-workertools:latest-windows.2022 octopuslabs/gcp-workertools:latest-ubuntu.2204 if: ${{ needs.get-version-number.outputs.CONTINUE == 'Yes' }} - name: Annotate docker manifest for latest tag env: - WIN2019_VERSION: ${{ needs.get-version-number.outputs.WIN2019_VERSION }} WIN2022_VERSION: ${{ needs.get-version-number.outputs.WIN2022_VERSION }} run: | - docker manifest annotate --os "windows" --os-version "$WIN2019_VERSION" --arch "amd64" "octopuslabs/gcp-workertools:latest" "octopuslabs/gcp-workertools:latest-windows.2019" && \ docker manifest annotate --os "windows" --os-version "$WIN2022_VERSION" --arch "amd64" "octopuslabs/gcp-workertools:latest" "octopuslabs/gcp-workertools:latest-windows.2022" if: ${{ needs.get-version-number.outputs.CONTINUE == 'Yes' }} @@ -232,16 +193,14 @@ jobs: - name: Create docker manifest for version-specific tag env: VERSION_NUMBER: ${{ needs.get-version-number.outputs.VERSION }} - run: docker manifest create octopuslabs/gcp-workertools:$VERSION_NUMBER octopuslabs/gcp-workertools:$VERSION_NUMBER-windows.2019 octopuslabs/gcp-workertools:$VERSION_NUMBER-windows.2022 octopuslabs/gcp-workertools:$VERSION_NUMBER-ubuntu.2204 + run: docker manifest create octopuslabs/gcp-workertools:$VERSION_NUMBER octopuslabs/gcp-workertools:$VERSION_NUMBER-windows.2022 octopuslabs/gcp-workertools:$VERSION_NUMBER-ubuntu.2204 if: ${{ needs.get-version-number.outputs.CONTINUE == 'Yes' }} - name: Annotate docker manifest for version-specific tag env: VERSION_NUMBER: ${{ needs.get-version-number.outputs.VERSION }} - WIN2019_VERSION: ${{ needs.get-version-number.outputs.WIN2019_VERSION }} WIN2022_VERSION: ${{ needs.get-version-number.outputs.WIN2022_VERSION }} run: | - docker manifest annotate --os "windows" --os-version "$WIN2019_VERSION" --arch "amd64" "octopuslabs/gcp-workertools:$VERSION_NUMBER" "octopuslabs/gcp-workertools:$VERSION_NUMBER-windows.2019" && \ docker manifest annotate --os "windows" --os-version "$WIN2022_VERSION" --arch "amd64" "octopuslabs/gcp-workertools:$VERSION_NUMBER" "octopuslabs/gcp-workertools:$VERSION_NUMBER-windows.2022" if: ${{ needs.get-version-number.outputs.CONTINUE == 'Yes' }} diff --git a/README.md b/README.md index f5d55c0..90ac2bc 100644 --- a/README.md +++ b/README.md @@ -10,7 +10,6 @@ The following images are built in this repo: - Ubuntu 22.04 - Ubuntu 20.04 - Windows 2022 -- Windows 2019 A new image will be built each time a new version of the GCloud CLI is released. The version numbers will be based on the version of the GCloud CLI. diff --git a/windows-2019/Dockerfile b/windows-2019/Dockerfile deleted file mode 100644 index 25f5bb9..0000000 --- a/windows-2019/Dockerfile +++ /dev/null @@ -1,28 +0,0 @@ -# escape=` - -FROM octopuslabs/workertools:latest-windows.2019 -SHELL ["powershell", "-Command"] - -ARG GOOGLE_CLOUD_CLI_VERSION=433.0.0 - -# Install Terraform -RUN choco install terraform -y --no-progress - -# Install gcloud -RUN $GCLOUD_VERSION = $env:GOOGLE_CLOUD_CLI_VERSION; ` - Write-Host "GCLOUD_VERSION: ${env:GOOGLE_CLOUD_CLI_VERSION}"; ` - Write-Host "https://dl.google.com/dl/cloudsdk/channels/rapid/downloads/google-cloud-sdk-${env:GOOGLE_CLOUD_CLI_VERSION}-windows-x86_64.zip"; ` - Invoke-WebRequest "https://dl.google.com/dl/cloudsdk/channels/rapid/downloads/google-cloud-sdk-${env:GOOGLE_CLOUD_CLI_VERSION}-windows-x86_64.zip" -OutFile google-cloud-sdk-$env:GOOGLE_CLOUD_CLI_VERSION-windows-x86_64.zip; ` - & '.\Program Files\7-Zip\7z.exe' x .\google-cloud-sdk-$env:GOOGLE_CLOUD_CLI_VERSION-windows-x86_64.zip; ` - .\google-cloud-sdk\install.bat --quiet; ` - rm .\google-cloud-sdk-$env:GOOGLE_CLOUD_CLI_VERSION-windows-x86_64.zip - -# Update Path -RUN $old = (Get-ItemProperty -Path 'Registry::HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Session Manager\Environment' -Name path).path; ` - Write-Host $old; ` - $gcloudPath = ';C:\google-cloud-sdk\bin'; ` - $new = $old + $gcloudPath; ` - Write-Host $new; ` - Set-ItemProperty -Path 'Registry::HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Session Manager\Environment' -Name path -Value $new; ` - Import-Module $env:ChocolateyInstall\helpers\chocolateyProfile.psm1; ` - refreshenv \ No newline at end of file