diff --git a/.github/workflows/docker-build-push.yml b/.github/workflows/docker-build-push.yml index de7c635..657a4d3 100644 --- a/.github/workflows/docker-build-push.yml +++ b/.github/workflows/docker-build-push.yml @@ -14,7 +14,6 @@ jobs: outputs: FLYWAY_VERSION: ${{ steps.step1.outputs.CURRENT_FLYWAY_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 @@ -40,20 +39,15 @@ jobs: { Write-Host "We need to upgrade the flyway container to $latestFlywayVersion" - 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." @@ -106,37 +100,7 @@ jobs: - name: Push the ubuntu.2204 latest image run: docker push octopuslabs/flyway-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: - FLYWAY_VERSION_TO_BUILD: ${{ needs.get-version-number.outputs.FLYWAY_VERSION }} - run: docker build ./windows-2019 --tag octopuslabs/flyway-workertools:${env:FLYWAY_VERSION_TO_BUILD}-windows.2019 --tag octopuslabs/flyway-workertools:latest-windows.2019 --build-arg FLYWAY_VERSION=${env:FLYWAY_VERSION_TO_BUILD} - if: ${{ needs.get-version-number.outputs.CONTINUE == 'Yes' }} - - - name: Push the win2019 version-specific image - env: - FLYWAY_VERSION_TO_BUILD: ${{ needs.get-version-number.outputs.FLYWAY_VERSION }} - run: docker push octopuslabs/flyway-workertools:${env:FLYWAY_VERSION_TO_BUILD}-windows.2019 - if: ${{ needs.get-version-number.outputs.CONTINUE == 'Yes' }} - - - name: Push the win2019 latest image - run: docker push octopuslabs/flyway-workertools:latest-windows.2019 - if: ${{ needs.get-version-number.outputs.CONTINUE == 'Yes' }} - + build-win-2022: needs: [get-version-number] runs-on: windows-2022 @@ -168,7 +132,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: @@ -180,15 +144,13 @@ jobs: if: ${{ needs.get-version-number.outputs.CONTINUE == 'Yes' }} - name: Create docker manifest for latest tag - run: docker manifest create octopuslabs/flyway-workertools:latest octopuslabs/flyway-workertools:latest-windows.2019 octopuslabs/flyway-workertools:latest-windows.2022 octopuslabs/flyway-workertools:latest-ubuntu.2204 + run: docker manifest create octopuslabs/flyway-workertools:latest octopuslabs/flyway-workertools:latest-windows.2022 octopuslabs/flyway-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/flyway-workertools:latest" "octopuslabs/flyway-workertools:latest-windows.2019" && \ docker manifest annotate --os "windows" --os-version "$WIN2022_VERSION" --arch "amd64" "octopuslabs/flyway-workertools:latest" "octopuslabs/flyway-workertools:latest-windows.2022" if: ${{ needs.get-version-number.outputs.CONTINUE == 'Yes' }} @@ -199,16 +161,14 @@ jobs: - name: Create docker manifest for version-specific tag env: FLYWAY_VERSION_TO_BUILD: ${{ needs.get-version-number.outputs.FLYWAY_VERSION }} - run: docker manifest create octopuslabs/flyway-workertools:$FLYWAY_VERSION_TO_BUILD octopuslabs/flyway-workertools:$FLYWAY_VERSION_TO_BUILD-windows.2019 octopuslabs/flyway-workertools:$FLYWAY_VERSION_TO_BUILD-windows.2022 octopuslabs/flyway-workertools:$FLYWAY_VERSION_TO_BUILD-ubuntu.2204 + run: docker manifest create octopuslabs/flyway-workertools:$FLYWAY_VERSION_TO_BUILD octopuslabs/flyway-workertools:$FLYWAY_VERSION_TO_BUILD-windows.2022 octopuslabs/flyway-workertools:$FLYWAY_VERSION_TO_BUILD-ubuntu.2204 if: ${{ needs.get-version-number.outputs.CONTINUE == 'Yes' }} - name: Annotate docker manifest for version-specific tag env: FLYWAY_VERSION_TO_BUILD: ${{ needs.get-version-number.outputs.FLYWAY_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/flyway-workertools:$FLYWAY_VERSION_TO_BUILD" "octopuslabs/flyway-workertools:$FLYWAY_VERSION_TO_BUILD-windows.2019" && \ docker manifest annotate --os "windows" --os-version "$WIN2022_VERSION" --arch "amd64" "octopuslabs/flyway-workertools:$FLYWAY_VERSION_TO_BUILD" "octopuslabs/flyway-workertools:$FLYWAY_VERSION_TO_BUILD-windows.2022" if: ${{ needs.get-version-number.outputs.CONTINUE == 'Yes' }} diff --git a/README.md b/README.md index 53a7b5c..97abd33 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 flyway is created. The version numbers will be based on the version of the Flyway tool. diff --git a/windows-2019/Dockerfile b/windows-2019/Dockerfile deleted file mode 100644 index 6d7348c..0000000 --- a/windows-2019/Dockerfile +++ /dev/null @@ -1,23 +0,0 @@ -# escape=` - -FROM octopuslabs/workertools:latest-windows.2019 -SHELL ["powershell", "-Command"] - -ARG FLYWAY_VERSION=7.7.1 - -# Get SQL Fluff for Flyway Check Command -RUN pip3 install sqlfluff==1.2.1 - -# # Install Flyway -RUN Invoke-WebRequest "https://download.red-gate.com/maven/release/org/flywaydb/enterprise/flyway-commandline/${env:FLYWAY_VERSION}/flyway-commandline-${env:FLYWAY_VERSION}-windows-x64.zip" -OutFile flyway-cli.zip; ` - & '.\Program Files\7-Zip\7z.exe' x .\flyway-cli.zip; ` - rm .\flyway-cli.zip; - -RUN $old = (Get-ItemProperty -Path 'Registry::HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Session Manager\Environment' -Name path).path; ` - Write-Host $old; ` - $flywayPath = ';C:\flyway-' + ${env:FLYWAY_VERSION}; ` - $new = $old + $flywayPath; ` - 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