diff --git a/ubuntu.22.04/Dockerfile b/ubuntu.22.04/Dockerfile index 1ef9dfe..e3bdfae 100644 --- a/ubuntu.22.04/Dockerfile +++ b/ubuntu.22.04/Dockerfile @@ -2,30 +2,28 @@ FROM ubuntu:22.04 ENV DEBIAN_FRONTEND=noninteractive -ARG Argocd_Version=2.13.3 -ARG Aws_Cli_Version=2.24.10 -ARG Aws_Iam_Authenticator_Version=0.6.29 -ARG Aws_Powershell_Version=4.1.734 -ARG Azure_Cli_Version=2.67.0-1~jammy -ARG Azure_Powershell_Version=13.0.0 +ARG Argocd_Version=3.2.3 +ARG Aws_Cli_Version=2.32.28 +ARG Aws_Iam_Authenticator_Version=0.7.10 +ARG Aws_Powershell_Version=5.0.128 +ARG Azure_Cli_Version=2.80.0-1~jammy +ARG Azure_Powershell_Version=15.1.0 ARG Dotnet_Sdk_Version=8.0 ARG Ecs_Cli_Version=1.21.0 -ARG Eks_Cli_Version=v0.200.0 -ARG Google_Cloud_Cli_Version=505.0.0-0 -ARG Google_Cloud_Gke_Cloud_Auth_Plugin_Version=505.0.0-0 -ARG Helm_Version=v3.16.4 -ARG Java_Jdk_Version=21 -ARG Kubectl_Version=1.32 -ARG Kubelogin_Version=v0.1.6 -ARG NodeJs_Version=22 +ARG Eks_Cli_Version=v0.221.0 +ARG Google_Cloud_Cli_Version=550.0.0-0 +ARG Google_Cloud_Gke_Cloud_Auth_Plugin_Version=550.0.0-0 +ARG Helm_Version=v3.19.0 +ARG Java_Jdk_Version=25 +ARG Kubectl_Version=1.35 +ARG Kubelogin_Version=v0.2.13 +ARG NodeJs_Version=24 ARG Octopus_Cli_Legacy_Version=9.1.7 ARG Octopus_Cli_Version=2.20.1 -ARG Octopus_Client_Version=14.3.1789 -ARG Powershell_Version=7.4.6-1.deb +ARG Octopus_Client_Version=20.3.2503 +ARG Powershell_Version=7.5.4-1.deb ARG Python2_Version=2.7.18-3 -ARG Terraform_Version=1.10.4 - - +ARG Terraform_Version=1.14.3 # Install common tools RUN apt-get update && \ diff --git a/ubuntu.22.04/README.md b/ubuntu.22.04/README.md index de01911..67c2cd6 100644 --- a/ubuntu.22.04/README.md +++ b/ubuntu.22.04/README.md @@ -24,27 +24,27 @@ ## Installed Software -- Argo CD CLI 2.10.2 -- Aws CLI 2.15.26 -- Aws Iam Authenticator 0.6.14 -- Aws Powershell 4.1.532 -- Azure CLI 2.58.0 -- Azure Powershell 11.3.0 +- Argo CD CLI 3.2.3 +- Aws CLI 2.32.28 +- Aws Iam Authenticator 0.7.10 +- Aws Powershell 5.0.128 +- Azure CLI 2.81.0 +- Azure Powershell 15.1.0 - Dotnet Sdk 8.0 - Ecs CLI 1.21.0 -- Eksctl 0.173.0 -- Google Cloud CLI 445.0.0 -- Google Cloud GKE auth plugin 467.0.0 -- Helm v3.14.2 -- Java Jdk 21 (Distro latest) -- Kubectl 1.29 -- Kubelogin v0.1.1 -- NodeJS 20 - Latest +- Eksctl 0.221.0 +- Google Cloud CLI 550.0.0 +- Google Cloud GKE auth plugin 550.0.0 +- Helm v3.19.0 +- Java Jdk 25 (Distro latest) +- Kubectl 1.35 +- Kubelogin v0.2.13 +- NodeJS 24 - Latest - Octopus CLI 2.20.1 - Octopus CLI Legacy 9.1.7 -- Octopus Client 14.3.1248 -- Powershell 7.4.1 -- Terraform 1.7.4 +- Octopus Client 20.3.2503 +- Powershell 7.5.4 +- Terraform 1.14.3 - Umoci 0.4.7 - wget - Latest - unzip - Latest @@ -64,4 +64,4 @@ - rsync - Latest - git - Latest - augeas-tools - Latest -- xxd - Latest +- xxd - Latest \ No newline at end of file diff --git a/ubuntu.22.04/spec/ubuntu.22.04.tests.ps1 b/ubuntu.22.04/spec/ubuntu.22.04.tests.ps1 index a63cbf0..bc0be76 100644 --- a/ubuntu.22.04/spec/ubuntu.22.04.tests.ps1 +++ b/ubuntu.22.04/spec/ubuntu.22.04.tests.ps1 @@ -5,7 +5,7 @@ Write-Host 'Running tests with Pester v'+$($pesterModules[0].Version) Describe 'installed dependencies' { It 'has Octopus.Client installed ' { - $expectedVersion = "14.3.1789" + $expectedVersion = "20.3.2503" [Reflection.AssemblyName]::GetAssemblyName("/Octopus.Client.dll").Version.ToString() | Should -match "$expectedVersion.0" } @@ -15,51 +15,51 @@ Describe 'installed dependencies' { } It 'has java installed' { - java --version | Should -beLike "* 21.0.*" + java --version | Should -beLike "* 25.0.*" $LASTEXITCODE | Should -be 0 } It 'has aws powershell module installed' { - (Get-Module AWSPowerShell.NetCore -ListAvailable).Version.ToString() | should -be '4.1.734' + (Get-Module AWSPowerShell.NetCore -ListAvailable).Version.ToString() | should -be '5.0.128' } It 'has az installed' { $output = (& az version) | convertfrom-json - $output.'azure-cli' | Should -be '2.67.0' + $output.'azure-cli' | Should -be '2.80.0' $LASTEXITCODE | Should -be 0 } It 'has az powershell module installed' { - (Get-Module Az -ListAvailable).Version.ToString() | should -be '13.0.0' + (Get-Module Az -ListAvailable).Version.ToString() | should -be '15.1.0' } It 'has aws cli installed' { - aws --version 2>&1 | Should -match '2.24.10' + aws --version 2>&1 | Should -match '2.32.28' } It 'has node installed' { - node --version | Should -match '22.\d+.\d+' + node --version | Should -match '24.\d+.\d+' $LASTEXITCODE | Should -be 0 } It 'has kubectl installed' { - kubectl version --client | Select-Object -First 1 | Should -match '1.32.\d+' + kubectl version --client | Select-Object -First 1 | Should -match '1.35.\d+' $LASTEXITCODE | Should -be 0 } It 'has kubelogin installed' { - kubelogin --version | Select-Object -First 1 -Skip 1 | Should -match 'v0.1.6' + kubelogin --version | Select-Object -First 1 -Skip 1 | Should -match 'v0.2.13' $LASTEXITCODE | Should -be 0 } It 'has helm installed' { - helm version | Should -match '3.16.4' + helm version | Should -match '3.19.0' $LASTEXITCODE | Should -be 0 } # If the terraform version is not the latest, then `terraform version` returns multiple lines and a non-zero return code It 'has terraform installed' { - terraform version | Select-Object -First 1 | Should -match '1.10.4' + terraform version | Select-Object -First 1 | Should -match '1.14.3' } It 'has python3 installed' { @@ -74,13 +74,13 @@ Describe 'installed dependencies' { } It 'has gcloud installed' { - gcloud --version | Select -First 1 | Should -be 'Google Cloud SDK 505.0.0' + gcloud --version | Select -First 1 | Should -be 'Google Cloud SDK 550.0.0' $LASTEXITCODE | Should -be 0 } It 'has gke-gcloud-auth-plugin installed' { #We use belike here as the hash after the 'alpha+' changes and isn't that important - gke-gcloud-auth-plugin --version | Select -First 1 | Should -beLike 'Kubernetes v1.28.2-alpha+*' + gke-gcloud-auth-plugin --version | Select -First 1 | Should -beLike 'Kubernetes v1.30.0+*' $LASTEXITCODE | Should -be 0 } @@ -95,7 +95,7 @@ Describe 'installed dependencies' { } It 'has eksctl installed' { - eksctl version | Should -match '0.200.0' + eksctl version | Should -match '0.221.0' $LASTEXITCODE | Should -be 0 } @@ -132,12 +132,12 @@ Describe 'installed dependencies' { It 'should have installed powershell core' { $output = & pwsh --version $LASTEXITCODE | Should -be 0 - $output | Should -match '^PowerShell 7\.4\.6*' + $output | Should -match '^PowerShell 7\.5\.4*' } It 'should have installed argo cli' { $output = (& argocd version --client) -join "`n" $LASTEXITCODE | Should -be 0 - $output | Should -Match '2.13.3' + $output | Should -Match '3.2.3' } } diff --git a/windows.ltsc2022/Dockerfile b/windows.ltsc2022/Dockerfile index f73bd17..ef32d68 100644 --- a/windows.ltsc2022/Dockerfile +++ b/windows.ltsc2022/Dockerfile @@ -3,28 +3,28 @@ FROM mcr.microsoft.com/dotnet/framework/runtime:4.8.1-20230808-windowsservercore-ltsc2022 SHELL ["powershell", "-Command"] -ARG 7Zip_Version=24.9.0 -ARG Argo_Cli_Version=2.13.3 -ARG Aws_Cli_Version=2.24.10 -ARG Aws_Iam_Authenticator_Version=0.6.29 -ARG Aws_Powershell_Version=4.1.734 -ARG Azure_Cli_Version=2.67.0 -ARG Azure_Powershell_Version=13.0.0 -ARG Eks_Cli_Version=0.200.0 -ARG Git_Version=2.47.1 -ARG Google_Cloud_Cli_Version=505.0.0 -ARG Helm_Version=3.16.4 -ARG Java_Jdk_Version=21.0.2 -ARG Kubectl_Version=1.32.0 -ARG Kubelogin_Version=0.1.6 -ARG Node_Version=22.11.0 +ARG 7Zip_Version=25.1.0 +ARG Argo_Cli_Version=3.2.3 +ARG Aws_Cli_Version=2.32.28 +ARG Aws_Iam_Authenticator_Version=0.7.10 +ARG Aws_Powershell_Version=5.0.128 +ARG Azure_Cli_Version=2.81.0 +ARG Azure_Powershell_Version=15.1.0 +ARG Eks_Cli_Version=0.221.0 +ARG Git_Version=2.52.0 +ARG Google_Cloud_Cli_Version=550.0.0 +ARG Helm_Version=3.19.0 +ARG Java_Jdk_Version=25.0.0.1 +ARG Kubectl_Version=1.35.0 +ARG Kubelogin_Version=0.2.13 +ARG Node_Version=24.12.0 ARG Octopus_Cli_Legacy_Version=9.1.7 -ARG Octopus_Cli_Version=2.14.0 -ARG Octopus_Client_Version=14.3.1789 -ARG Powershell_Version=7.4.6 -ARG Python_Version=3.13.1 +ARG Octopus_Cli_Version=2.20.1 +ARG Octopus_Client_Version=20.3.2503 +ARG Powershell_Version=7.5.4 +ARG Python_Version=3.14.2 ARG ScriptCs_Version=0.17.1 -ARG Terraform_Version=1.10.4 +ARG Terraform_Version=1.14.3 # Install Choco RUN $ProgressPreference = 'SilentlyContinue'; ` @@ -90,11 +90,10 @@ RUN choco install -y python3 --version $Env:Python_Version --no-progress; ` RUN choco install 7zip -y --version $Env:7Zip_Version --no-progress # Install gcloud -RUN 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; ` - # # UNZIP AND INSTALL gcloud - & '.\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 +RUN choco install gcloudsdk -y --version $Env:Google_Cloud_Cli_Version --no-progress + +# Install gcloud kubectl auth +RUN gcloud components install gke-gcloud-auth-plugin --quiet # Install ScriptCS RUN choco install scriptcs -y --version $Env:ScriptCs_Version --no-progress @@ -122,8 +121,4 @@ RUN choco install argocd-cli --yes --version $Env:Argo_Cli_Version --no-progress # Update path for new tools ADD .\scripts\update_path.cmd C:\update_path.cmd -RUN .\update_path.cmd; - -# gcloud requires python on path, update_path.cmd adds python to path. Delete any backup files that exist (~1gb) -RUN gcloud components install gke-gcloud-auth-plugin --quiet; ` - if (Test-Path C:\google-cloud-sdk\.install\.backup) {Remove-Item -Path C:\google-cloud-sdk\.install\.backup -Force -Recurse} +RUN .\update_path.cmd; \ No newline at end of file diff --git a/windows.ltsc2022/README.md b/windows.ltsc2022/README.md index b5f9662..11267ff 100644 --- a/windows.ltsc2022/README.md +++ b/windows.ltsc2022/README.md @@ -24,27 +24,27 @@ ## Installed Software -- Argo CD CLI 2.10.2 -- Aws CLI 2.15.26 -- Aws Iam Authenticator 0.5.9 -- Aws PowerShell Modules 4.1.532 -- Azure CLI 2.58.0 +- Argo CD CLI 3.2.3 +- Aws CLI 2.32.28 +- Aws Iam Authenticator 0.7.10 +- Aws PowerShell Modules 5.0.128 +- Azure CLI 2.81.0 - Azure PowerShell 4.5.0 -- Azure PowerShell Modules 11.3.0 -- Eksctl 0.173.0 -- Google Cloud CLI 467.0.0 -- Google Cloud GKE auth plugin 467.0.0-0 / 0.5.8 -- Helm 3.14.1 -- Java Jdk 21.0.2 -- Kubectl 1.29.1 -- Kubelogin (azure-kubelogin) 0.1.0 -- Node 20.11.1 +- Azure PowerShell Modules 15.1.0 +- Eksctl 0.221.0 +- Google Cloud CLI 550.0.0 +- Google Cloud GKE auth plugin 550.0.0-0 +- Helm 3.19.0 +- Java Jdk 25.0.0.1 +- Kubectl 1.35.0 +- Kubelogin (azure-kubelogin) 0.2.13 +- Node 24.12.0 - Octopus CLI Legacy 9.1.7 -- Octopus CLI 2.1.0 -- Octopus Client 14.3.1248 -- Powershell 7.4.1 -- Python 3.12.2 +- Octopus CLI 2.20.1 +- Octopus Client 20.3.2503 +- Powershell 7.5.4 +- Python 3.14.2 - ScriptCs 0.17.1 -- Terraform 1.7.4 -- 7Zip 23.1 +- Terraform 1.14.3 +- 7Zip 25.1 - Chocolatey - Latest \ No newline at end of file diff --git a/windows.ltsc2022/scripts/update_path.cmd b/windows.ltsc2022/scripts/update_path.cmd index 0dcf5b6..177fcb4 100644 --- a/windows.ltsc2022/scripts/update_path.cmd +++ b/windows.ltsc2022/scripts/update_path.cmd @@ -1,2 +1,2 @@ -setx /M path "%PATH%;C:\google-cloud-sdk\bin;C:\Users\ContainerAdministrator\AppData\Local\Microsoft\dotnet;C:\Program Files\PackageManagement\NuGet\Packages\Octopus.Client.14.3.1248\lib\net462\Octopus.Client.dll" +setx /M path "%PATH%;C:\Users\ContainerAdministrator\AppData\Local\Microsoft\dotnet;C:\Program Files\PackageManagement\NuGet\Packages\Octopus.Client.20.3.2503\lib\net462\Octopus.Client.dll" diff --git a/windows.ltsc2022/spec/windows.ltsc2022.tests.ps1 b/windows.ltsc2022/spec/windows.ltsc2022.tests.ps1 index c9ec11b..b42af29 100644 --- a/windows.ltsc2022/spec/windows.ltsc2022.tests.ps1 +++ b/windows.ltsc2022/spec/windows.ltsc2022.tests.ps1 @@ -11,7 +11,7 @@ Describe 'installed dependencies' { } It 'has Octopus.Client installed ' { - $expectedVersion = "14.3.1789" + $expectedVersion = "20.3.2503" Test-Path "C:\Program Files\PackageManagement\NuGet\Packages\Octopus.Client.$expectedVersion\lib\net462\Octopus.Client.dll" | Should -Be $true [Reflection.AssemblyName]::GetAssemblyName("C:\Program Files\PackageManagement\NuGet\Packages\Octopus.Client.$expectedVersion\lib\net462\Octopus.Client.dll").Version.ToString() | Should -Match "$expectedVersion.0" } @@ -22,27 +22,27 @@ Describe 'installed dependencies' { } It 'has java installed' { - java -version 2>&1 | Select-String -Pattern '21\.0\.2' | Should -BeLike "*21.0.2*" + java -version 2>&1 | Select-String -Pattern '25' | Should -BeLike "*25*" $LASTEXITCODE | Should -be 0 } It 'has az installed' { $output = (& az version) | convertfrom-json - $output.'azure-cli' | Should -Be '2.67.0' + $output.'azure-cli' | Should -Be '2.81.0' $LASTEXITCODE | Should -be 0 } It 'has az powershell module installed' { - (Get-Module Az -ListAvailable).Version.ToString() | should -be '13.0.0' + (Get-Module Az -ListAvailable).Version.ToString() | should -be '15.1.0' } It 'has aws cli installed' { - aws --version 2>&1 | Should -Match '2.24.10' + aws --version 2>&1 | Should -Match '2.32.28' } It 'has aws powershell installed' { Import-Module AWSPowerShell.NetCore - Get-AWSPowerShellVersion | Should -Match '4.1.734' + Get-AWSPowerShellVersion | Should -Match '5.0.128' } # There is no version command for aws-iam-authenticator, so we just check for the installed version. @@ -51,47 +51,47 @@ Describe 'installed dependencies' { } It 'has node installed' { - node --version | Should -Match '22.11.0' + node --version | Should -Match '24.12.0' $LASTEXITCODE | Should -be 0 } It 'has kubectl installed' { - kubectl version --client | Select-String -Pattern "1.32.0" | Should -BeLike "Client Version: v1.32.0" + kubectl version --client | Select-String -Pattern "1.35.0" | Should -BeLike "Client Version: v1.35.0" $LASTEXITCODE | Should -be 0 } It 'has kubelogin installed' { - kubelogin --version | Select-Object -First 1 -Skip 1 | Should -match 'v0.1.6' + kubelogin --version | Select-Object -First 1 -Skip 1 | Should -match 'v0.2.13' $LASTEXITCODE | Should -be 0 } It 'has helm installed' { - helm version | Should -Match '3.16.4' + helm version | Should -Match '3.19.0' $LASTEXITCODE | Should -be 0 } # If the terraform version is not the latest, then `terraform version` returns multiple lines and a non-zero return code It 'has terraform installed' { - terraform version | Select-Object -First 1 | Should -Match '1.10.4' + terraform version | Select-Object -First 1 | Should -Match '1.14.3' } It 'has python installed' { - python --version | Should -Match '3.13.1' + python --version | Should -Match '3.14.2' $LASTEXITCODE | Should -be 0 } It 'has gcloud installed' { - gcloud --version | Select-String -Pattern "505.0.0" | Should -BeLike "Google Cloud SDK 505.0.0" + gcloud --version | Select-String -Pattern "550.0.0" | Should -BeLike "Google Cloud SDK 550.0.0" $LASTEXITCODE | Should -be 0 } It 'has gke-gcloud-auth-plugin installed' { - gcloud --version | Select-String -Pattern "0.5.9" | Should -BeLike "gke-gcloud-auth-plugin 0.5.9" + gke-gcloud-auth-plugin --version | Select -First 1 | Should -BeLike "Kubernetes v1.30.0*" $LASTEXITCODE | Should -be 0 } It 'has octopus cli installed' { - octopus version | Should -Match '2.14.0' + octopus version | Should -Match '2.20.1' $LASTEXITCODE | Should -be 0 } @@ -101,31 +101,31 @@ Describe 'installed dependencies' { } It 'has eksctl installed' { - eksctl version | Should -Match '0.200.0' + eksctl version | Should -Match '0.221.0' $LASTEXITCODE | Should -be 0 } It 'has 7zip installed' { $output = (& "C:\Program Files\7-Zip\7z.exe" --help) -join "`n" - $output | Should -Match '7-Zip 24.09' + $output | Should -Match '7-Zip 25.01' $LASTEXITCODE | Should -be 0 } It 'should have installed powershell core' { $output = & pwsh --version $LASTEXITCODE | Should -be 0 - $output | Should -Match '^PowerShell 7\.4\.6*' + $output | Should -Match '^PowerShell 7\.5\.4*' } It 'should have installed git' { $output = & git --version $LASTEXITCODE | Should -be 0 - $output | Should -Match '2.47.1' + $output | Should -Match '2.52.0' } It 'should have installed argo cli' { $output = (& argocd version --client) -join "`n" $LASTEXITCODE | Should -be 0 - $output | Should -Match '2.13.3' + $output | Should -Match '3.2.3' } }