From e4d58452f4d4fc085b24c7be9bb6d57a3ba4d3ec Mon Sep 17 00:00:00 2001 From: Mikhail Koliada <88318005+mikhailkoliada@users.noreply.github.com> Date: Fri, 20 May 2022 15:40:31 +0200 Subject: [PATCH] [Ubuntu] Rework podman and tools installation (#5580) --- .../SoftwareReport/SoftwareReport.Generator.ps1 | 8 ++++++-- .../SoftwareReport/SoftwareReport.Tools.psm1 | 9 +++------ images/linux/scripts/installers/containers.sh | 16 +--------------- images/linux/scripts/tests/Tools.Tests.ps1 | 9 ++++----- images/linux/ubuntu1804.json | 1 - images/linux/ubuntu2004.json | 1 - images/linux/ubuntu2204.pkr.hcl | 1 + 7 files changed, 15 insertions(+), 30 deletions(-) diff --git a/images/linux/scripts/SoftwareReport/SoftwareReport.Generator.ps1 b/images/linux/scripts/SoftwareReport/SoftwareReport.Generator.ps1 index d17c07d5..96faa990 100644 --- a/images/linux/scripts/SoftwareReport/SoftwareReport.Generator.ps1 +++ b/images/linux/scripts/SoftwareReport/SoftwareReport.Generator.ps1 @@ -149,10 +149,14 @@ $toolsList = @( if ((Test-IsUbuntu18) -or (Test-IsUbuntu20)) { $toolsList += @( - (Get-BuildahVersion), (Get-PhantomJSVersion), (Get-LeiningenVersion), - (Get-HHVMVersion), + (Get-HHVMVersion) + ) +} +if (Test-IsUbuntu22) { + $toolsList += @( + (Get-BuildahVersion), (Get-PodManVersion), (Get-SkopeoVersion) ) diff --git a/images/linux/scripts/SoftwareReport/SoftwareReport.Tools.psm1 b/images/linux/scripts/SoftwareReport/SoftwareReport.Tools.psm1 index 7eeb9e30..383c113a 100644 --- a/images/linux/scripts/SoftwareReport/SoftwareReport.Tools.psm1 +++ b/images/linux/scripts/SoftwareReport/SoftwareReport.Tools.psm1 @@ -42,20 +42,17 @@ function Get-CodeQLBundleVersion { function Get-PodManVersion { $podmanVersion = podman --version | Take-OutputPart -Part 2 - $aptSourceRepo = Get-AptSourceRepository -PackageName "containers" - return "Podman $podmanVersion (apt source repository: $aptSourceRepo)" + return "Podman $podmanVersion" } function Get-BuildahVersion { $buildahVersion = buildah --version | Take-OutputPart -Part 2 - $aptSourceRepo = Get-AptSourceRepository -PackageName "containers" - return "Buildah $buildahVersion (apt source repository: $aptSourceRepo)" + return "Buildah $buildahVersion" } function Get-SkopeoVersion { $skopeoVersion = skopeo --version | Take-OutputPart -Part 2 - $aptSourceRepo = Get-AptSourceRepository -PackageName "containers" - return "Skopeo $skopeoVersion (apt source repository: $aptSourceRepo)" + return "Skopeo $skopeoVersion" } function Get-CMakeVersion { diff --git a/images/linux/scripts/installers/containers.sh b/images/linux/scripts/installers/containers.sh index edeb0f78..ebd42cab 100644 --- a/images/linux/scripts/installers/containers.sh +++ b/images/linux/scripts/installers/containers.sh @@ -4,25 +4,11 @@ ## Desc: Installs container tools: podman, buildah and skopeo onto the image ################################################################################ -source $HELPER_SCRIPTS/os.sh - install_packages=(podman buildah skopeo) -REPO_URL="https://download.opensuse.org/repositories/devel:/kubic:/libcontainers:/stable" -# Install podman, buildah, scopeo container's tools (on Ubuntu20 these tools can be installed without adding new repository) -source /etc/os-release -sh -c "echo 'deb ${REPO_URL}/x${NAME}_${VERSION_ID}/ /' > /etc/apt/sources.list.d/devel:kubic:libcontainers:stable.list" -wget -qnv https://download.opensuse.org/repositories/devel:kubic:libcontainers:stable/x${NAME}_${VERSION_ID}/Release.key -O Release.key -apt-key add Release.key -apt-get update -qq +# Install podman, buildah, scopeo container's tools apt-get -qq -y install ${install_packages[@]} mkdir -p /etc/containers echo -e "[registries.search]\nregistries = ['docker.io', 'quay.io']" | tee /etc/containers/registries.conf -# Remove source repo -rm /etc/apt/sources.list.d/devel:kubic:libcontainers:stable.list - -# Document source repo -echo "containers $REPO_URL" >> $HELPER_SCRIPTS/apt-sources.txt - invoke_tests "Tools" "Containers" diff --git a/images/linux/scripts/tests/Tools.Tests.ps1 b/images/linux/scripts/tests/Tools.Tests.ps1 index 7f22857a..178eac1e 100644 --- a/images/linux/scripts/tests/Tools.Tests.ps1 +++ b/images/linux/scripts/tests/Tools.Tests.ps1 @@ -20,8 +20,7 @@ Describe "Rust" { $env:RUSTUP_HOME = "/etc/skel/.rustup" $env:CARGO_HOME = "/etc/skel/.cargo" } - - + It "Rustup is installed" { "rustup --version" | Should -ReturnZeroExitCode } @@ -121,7 +120,7 @@ Describe "clang" { "clang-$ClangVersion --version" | Should -ReturnZeroExitCode "clang++-$ClangVersion --version" | Should -ReturnZeroExitCode - } + } } Describe "Cmake" { @@ -336,7 +335,7 @@ Describe "GraalVM" -Skip:(Test-IsUbuntu18) { } } -Describe "Containers" -Skip:(Test-IsUbuntu22) { +Describe "Containers" -Skip:(-not (Test-IsUbuntu22)) { $testCases = @("podman", "buildah", "skopeo") | ForEach-Object { @{ContainerCommand = $_} } It "" -TestCases $testCases { @@ -345,7 +344,7 @@ Describe "Containers" -Skip:(Test-IsUbuntu22) { ) "$ContainerCommand -v" | Should -ReturnZeroExitCode - } + } } Describe "nvm" { diff --git a/images/linux/ubuntu1804.json b/images/linux/ubuntu1804.json index bdd5847a..8b8a0a16 100644 --- a/images/linux/ubuntu1804.json +++ b/images/linux/ubuntu1804.json @@ -199,7 +199,6 @@ "{{template_dir}}/scripts/installers/swift.sh", "{{template_dir}}/scripts/installers/cmake.sh", "{{template_dir}}/scripts/installers/codeql-bundle.sh", - "{{template_dir}}/scripts/installers/containers.sh", "{{template_dir}}/scripts/installers/dotnetcore-sdk.sh", "{{template_dir}}/scripts/installers/erlang.sh", "{{template_dir}}/scripts/installers/firefox.sh", diff --git a/images/linux/ubuntu2004.json b/images/linux/ubuntu2004.json index ee9fb00f..1b1b1d70 100644 --- a/images/linux/ubuntu2004.json +++ b/images/linux/ubuntu2004.json @@ -200,7 +200,6 @@ "{{template_dir}}/scripts/installers/swift.sh", "{{template_dir}}/scripts/installers/cmake.sh", "{{template_dir}}/scripts/installers/codeql-bundle.sh", - "{{template_dir}}/scripts/installers/containers.sh", "{{template_dir}}/scripts/installers/dotnetcore-sdk.sh", "{{template_dir}}/scripts/installers/erlang.sh", "{{template_dir}}/scripts/installers/firefox.sh", diff --git a/images/linux/ubuntu2204.pkr.hcl b/images/linux/ubuntu2204.pkr.hcl index b443dd0c..7c50638e 100644 --- a/images/linux/ubuntu2204.pkr.hcl +++ b/images/linux/ubuntu2204.pkr.hcl @@ -276,6 +276,7 @@ build { "${path.root}/scripts/installers/clang.sh", "${path.root}/scripts/installers/cmake.sh", "${path.root}/scripts/installers/codeql-bundle.sh", + "${path.root}/scripts/installers/containers.sh", "${path.root}/scripts/installers/dotnetcore-sdk.sh", "${path.root}/scripts/installers/gcc.sh", "${path.root}/scripts/installers/gfortran.sh",