mirror of
https://github.com/actions/runner-images.git
synced 2025-12-13 12:48:18 +00:00
committed by
GitHub
parent
dafa292860
commit
df41637c07
21
images/ubuntu/scripts/build/install-docker-compose.sh
Normal file
21
images/ubuntu/scripts/build/install-docker-compose.sh
Normal file
@@ -0,0 +1,21 @@
|
|||||||
|
#!/bin/bash -e
|
||||||
|
################################################################################
|
||||||
|
## File: install-docker-compose.sh
|
||||||
|
## Desc: Install Docker Compose v1
|
||||||
|
## Supply chain security: Docker Compose v1 - checksum validation
|
||||||
|
################################################################################
|
||||||
|
|
||||||
|
# Source the helpers for use with the script
|
||||||
|
source $HELPER_SCRIPTS/install.sh
|
||||||
|
|
||||||
|
# Download docker-compose v1 from releases
|
||||||
|
binary_path=$(download_with_retry "https://github.com/docker/compose/releases/download/1.29.2/docker-compose-Linux-x86_64")
|
||||||
|
|
||||||
|
# Supply chain security - Docker Compose v1
|
||||||
|
external_hash="f3f10cf3dbb8107e9ba2ea5f23c1d2159ff7321d16f0a23051d68d8e2547b323"
|
||||||
|
use_checksum_comparison "${binary_path}" "${external_hash}"
|
||||||
|
|
||||||
|
# Install docker-compose v1
|
||||||
|
install "${binary_path}" "/usr/local/bin/docker-compose"
|
||||||
|
|
||||||
|
invoke_tests "Tools" "Docker-compose v1"
|
||||||
@@ -105,6 +105,7 @@ $tools.AddToolVersion("Buildah", $(Get-BuildahVersion))
|
|||||||
$tools.AddToolVersion("CMake", $(Get-CMakeVersion))
|
$tools.AddToolVersion("CMake", $(Get-CMakeVersion))
|
||||||
$tools.AddToolVersion("CodeQL Action Bundle", $(Get-CodeQLBundleVersion))
|
$tools.AddToolVersion("CodeQL Action Bundle", $(Get-CodeQLBundleVersion))
|
||||||
$tools.AddToolVersion("Docker Amazon ECR Credential Helper", $(Get-DockerAmazonECRCredHelperVersion))
|
$tools.AddToolVersion("Docker Amazon ECR Credential Helper", $(Get-DockerAmazonECRCredHelperVersion))
|
||||||
|
$tools.AddToolVersion("Docker Compose v1", $(Get-DockerComposeV1Version))
|
||||||
$tools.AddToolVersion("Docker Compose v2", $(Get-DockerComposeV2Version))
|
$tools.AddToolVersion("Docker Compose v2", $(Get-DockerComposeV2Version))
|
||||||
$tools.AddToolVersion("Docker-Buildx", $(Get-DockerBuildxVersion))
|
$tools.AddToolVersion("Docker-Buildx", $(Get-DockerBuildxVersion))
|
||||||
$tools.AddToolVersion("Docker Client", $(Get-DockerClientVersion))
|
$tools.AddToolVersion("Docker Client", $(Get-DockerClientVersion))
|
||||||
|
|||||||
@@ -58,6 +58,11 @@ function Get-CMakeVersion {
|
|||||||
return $cmakeVersion
|
return $cmakeVersion
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function Get-DockerComposeV1Version {
|
||||||
|
$composeVersion = docker-compose -v | Get-StringPart -Part 2 | Get-StringPart -Part 0 -Delimiter ","
|
||||||
|
return $composeVersion
|
||||||
|
}
|
||||||
|
|
||||||
function Get-DockerComposeV2Version {
|
function Get-DockerComposeV2Version {
|
||||||
$composeVersion = docker compose version | Get-StringPart -Part 3 | Get-StringPart -Part 0 -Delimiter "v"
|
$composeVersion = docker compose version | Get-StringPart -Part 3 | Get-StringPart -Part 0 -Delimiter "v"
|
||||||
return $composeVersion
|
return $composeVersion
|
||||||
|
|||||||
@@ -83,7 +83,7 @@ Describe "Docker" {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
It "Docker compose v2" {
|
It "docker compose v2" {
|
||||||
$version=(Get-ToolsetContent).docker.plugins | Where-Object { $_.plugin -eq 'compose' } | Select-Object -ExpandProperty version
|
$version=(Get-ToolsetContent).docker.plugins | Where-Object { $_.plugin -eq 'compose' } | Select-Object -ExpandProperty version
|
||||||
If ($version -ne "latest") {
|
If ($version -ne "latest") {
|
||||||
$(docker compose version --short) | Should -BeLike "*$version*"
|
$(docker compose version --short) | Should -BeLike "*$version*"
|
||||||
@@ -105,6 +105,12 @@ Describe "Docker images" {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Describe "Docker-compose v1" {
|
||||||
|
It "docker-compose" {
|
||||||
|
"docker-compose --version"| Should -ReturnZeroExitCode
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
Describe "Ansible" {
|
Describe "Ansible" {
|
||||||
It "Ansible" {
|
It "Ansible" {
|
||||||
"ansible --version" | Should -ReturnZeroExitCode
|
"ansible --version" | Should -ReturnZeroExitCode
|
||||||
|
|||||||
@@ -344,7 +344,7 @@ build {
|
|||||||
provisioner "shell" {
|
provisioner "shell" {
|
||||||
environment_vars = ["HELPER_SCRIPTS=${var.helper_script_folder}", "INSTALLER_SCRIPT_FOLDER=${var.installer_script_folder}", "DOCKERHUB_LOGIN=${var.dockerhub_login}", "DOCKERHUB_PASSWORD=${var.dockerhub_password}"]
|
environment_vars = ["HELPER_SCRIPTS=${var.helper_script_folder}", "INSTALLER_SCRIPT_FOLDER=${var.installer_script_folder}", "DOCKERHUB_LOGIN=${var.dockerhub_login}", "DOCKERHUB_PASSWORD=${var.dockerhub_password}"]
|
||||||
execute_command = "sudo sh -c '{{ .Vars }} {{ .Path }}'"
|
execute_command = "sudo sh -c '{{ .Vars }} {{ .Path }}'"
|
||||||
scripts = ["${path.root}/../scripts/build/install-docker.sh"]
|
scripts = ["${path.root}/../scripts/build/install-docker-compose.sh", "${path.root}/../scripts/build/install-docker.sh"]
|
||||||
}
|
}
|
||||||
|
|
||||||
provisioner "shell" {
|
provisioner "shell" {
|
||||||
|
|||||||
@@ -340,7 +340,7 @@ build {
|
|||||||
provisioner "shell" {
|
provisioner "shell" {
|
||||||
environment_vars = ["HELPER_SCRIPTS=${var.helper_script_folder}", "INSTALLER_SCRIPT_FOLDER=${var.installer_script_folder}", "DOCKERHUB_LOGIN=${var.dockerhub_login}", "DOCKERHUB_PASSWORD=${var.dockerhub_password}"]
|
environment_vars = ["HELPER_SCRIPTS=${var.helper_script_folder}", "INSTALLER_SCRIPT_FOLDER=${var.installer_script_folder}", "DOCKERHUB_LOGIN=${var.dockerhub_login}", "DOCKERHUB_PASSWORD=${var.dockerhub_password}"]
|
||||||
execute_command = "sudo sh -c '{{ .Vars }} {{ .Path }}'"
|
execute_command = "sudo sh -c '{{ .Vars }} {{ .Path }}'"
|
||||||
scripts = ["${path.root}/../scripts/build/install-docker.sh"]
|
scripts = ["${path.root}/../scripts/build/install-docker-compose.sh", "${path.root}/../scripts/build/install-docker.sh"]
|
||||||
}
|
}
|
||||||
|
|
||||||
provisioner "shell" {
|
provisioner "shell" {
|
||||||
|
|||||||
Reference in New Issue
Block a user