mirror of
https://github.com/actions/runner-images.git
synced 2025-12-14 13:17:54 +00:00
Fix kubectl installation (#799)
* Fix kubectl installation * Fix kubectl installation * Add --client flag * Fix for ubuntu 16.04 * Move kubectl apt packages installation to basic.sh * Combined separated scripts for kubectl installation to one * Minor fix * Remove apt-transport-https package from basic.sh * Delete helm init
This commit is contained in:
committed by
GitHub
parent
ead5b53355
commit
8491d71a0b
@@ -40,7 +40,7 @@ apt-fast install -y --no-install-recommends \
|
|||||||
zip \
|
zip \
|
||||||
zstd
|
zstd
|
||||||
|
|
||||||
# Electron / VSCode / GitHub Desktop prereqs
|
# Electron / VSCode / GitHub Desktop / kubectl prereqs
|
||||||
apt-fast install -y --no-install-recommends \
|
apt-fast install -y --no-install-recommends \
|
||||||
libxkbfile-dev \
|
libxkbfile-dev \
|
||||||
pkg-config \
|
pkg-config \
|
||||||
@@ -57,7 +57,8 @@ apt-fast install -y --no-install-recommends \
|
|||||||
rpm \
|
rpm \
|
||||||
xz-utils \
|
xz-utils \
|
||||||
xorriso \
|
xorriso \
|
||||||
zsync
|
zsync \
|
||||||
|
gnupg2
|
||||||
|
|
||||||
# Run tests to determine that the software installed as expected
|
# Run tests to determine that the software installed as expected
|
||||||
echo "Testing to make sure that script performed as expected, and basic scenarios work"
|
echo "Testing to make sure that script performed as expected, and basic scenarios work"
|
||||||
@@ -99,3 +100,4 @@ DocumentInstalledItemIndent "upx"
|
|||||||
DocumentInstalledItemIndent "wget"
|
DocumentInstalledItemIndent "wget"
|
||||||
DocumentInstalledItemIndent "zip"
|
DocumentInstalledItemIndent "zip"
|
||||||
DocumentInstalledItemIndent "zstd"
|
DocumentInstalledItemIndent "zstd"
|
||||||
|
DocumentInstalledItemIndent "gnupg2"
|
||||||
|
|||||||
@@ -1,40 +0,0 @@
|
|||||||
#!/bin/bash
|
|
||||||
################################################################################
|
|
||||||
## File: kubernetes-tools.sh
|
|
||||||
## Desc: Installs kubectl, helm
|
|
||||||
################################################################################
|
|
||||||
|
|
||||||
# Source the helpers for use with the script
|
|
||||||
source $HELPER_SCRIPTS/document.sh
|
|
||||||
source $HELPER_SCRIPTS/apt.sh
|
|
||||||
|
|
||||||
## Install kubectl
|
|
||||||
apt-get install -y apt-transport-https
|
|
||||||
curl -s https://packages.cloud.google.com/apt/doc/apt-key.gpg | apt-key add -
|
|
||||||
touch /etc/apt/sources.list.d/kubernetes.list
|
|
||||||
echo "deb http://apt.kubernetes.io/ kubernetes-$(lsb_release -cs) main" | tee -a /etc/apt/sources.list.d/kubernetes.list
|
|
||||||
apt-get update
|
|
||||||
apt-get install -y kubectl
|
|
||||||
|
|
||||||
# Install Helm
|
|
||||||
curl https://raw.githubusercontent.com/helm/helm/master/scripts/get-helm-3 | bash
|
|
||||||
|
|
||||||
# Run tests to determine that the software installed as expected
|
|
||||||
echo "Testing to make sure that script performed as expected, and basic scenarios work"
|
|
||||||
if ! command -v kubectl; then
|
|
||||||
echo "kubectl was not installed"
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
if ! command -v helm; then
|
|
||||||
echo "helm was not installed"
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
echo "Initializing helm"
|
|
||||||
helm init --client-only
|
|
||||||
|
|
||||||
# Document what was added to the image
|
|
||||||
echo "Lastly, documenting what we added to the metadata file"
|
|
||||||
DocumentInstalledItem "kubectl ($(kubectl version --short |& head -n 1))"
|
|
||||||
DocumentInstalledItem "helm ($(helm version --short |& head -n 1))"
|
|
||||||
@@ -130,6 +130,9 @@ apt-get install -y --no-install-recommends curl
|
|||||||
echo "Install parallel"
|
echo "Install parallel"
|
||||||
apt-get install -y --no-install-recommends parallel
|
apt-get install -y --no-install-recommends parallel
|
||||||
|
|
||||||
|
echo "Install gnupg2"
|
||||||
|
apt-get install -y --no-install-recommends gnupg2
|
||||||
|
|
||||||
# Run tests to determine that the software installed as expected
|
# Run tests to determine that the software installed as expected
|
||||||
echo "Testing to make sure that script performed as expected, and basic scenarios work"
|
echo "Testing to make sure that script performed as expected, and basic scenarios work"
|
||||||
for cmd in curl file ftp jq netcat ssh parallel rsync shellcheck sudo telnet time unzip wget zip; do
|
for cmd in curl file ftp jq netcat ssh parallel rsync shellcheck sudo telnet time unzip wget zip; do
|
||||||
@@ -168,3 +171,4 @@ DocumentInstalledItemIndent "upx"
|
|||||||
DocumentInstalledItemIndent "wget"
|
DocumentInstalledItemIndent "wget"
|
||||||
DocumentInstalledItemIndent "zip"
|
DocumentInstalledItemIndent "zip"
|
||||||
DocumentInstalledItemIndent "zstd"
|
DocumentInstalledItemIndent "zstd"
|
||||||
|
DocumentInstalledItemIndent "gnupg2"
|
||||||
|
|||||||
@@ -9,12 +9,11 @@ source $HELPER_SCRIPTS/document.sh
|
|||||||
source $HELPER_SCRIPTS/apt.sh
|
source $HELPER_SCRIPTS/apt.sh
|
||||||
|
|
||||||
## Install kubectl
|
## Install kubectl
|
||||||
apt-get install -y apt-transport-https
|
|
||||||
curl -s https://packages.cloud.google.com/apt/doc/apt-key.gpg | apt-key add -
|
curl -s https://packages.cloud.google.com/apt/doc/apt-key.gpg | apt-key add -
|
||||||
touch /etc/apt/sources.list.d/kubernetes.list
|
touch /etc/apt/sources.list.d/kubernetes.list
|
||||||
|
|
||||||
# Based on https://kubernetes.io/docs/tasks/tools/install-kubectl/, package is still called xenial
|
# Based on https://kubernetes.io/docs/tasks/tools/install-kubectl/, package is xenial for both OS versions.
|
||||||
echo "deb http://apt.kubernetes.io/ kubernetes-xenial main" | tee -a /etc/apt/sources.list.d/kubernetes.list
|
echo "deb https://apt.kubernetes.io/ kubernetes-xenial main" | tee -a /etc/apt/sources.list.d/kubernetes.list
|
||||||
apt-get update
|
apt-get update
|
||||||
apt-get install -y kubectl
|
apt-get install -y kubectl
|
||||||
|
|
||||||
@@ -33,10 +32,7 @@ if ! command -v helm; then
|
|||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
echo "Initializing helm"
|
|
||||||
helm init --client-only
|
|
||||||
|
|
||||||
# Document what was added to the image
|
# Document what was added to the image
|
||||||
echo "Lastly, documenting what we added to the metadata file"
|
echo "Lastly, documenting what we added to the metadata file"
|
||||||
DocumentInstalledItem "kubectl ($(kubectl version --short |& head -n 1))"
|
DocumentInstalledItem "kubectl ($(kubectl version --client --short |& head -n 1))"
|
||||||
DocumentInstalledItem "helm ($(helm version --short |& head -n 1))"
|
DocumentInstalledItem "helm ($(helm version --short |& head -n 1))"
|
||||||
@@ -204,7 +204,7 @@
|
|||||||
"{{template_dir}}/scripts/installers/image-magick.sh",
|
"{{template_dir}}/scripts/installers/image-magick.sh",
|
||||||
"{{template_dir}}/scripts/installers/java-tools.sh",
|
"{{template_dir}}/scripts/installers/java-tools.sh",
|
||||||
"{{template_dir}}/scripts/installers/kind.sh",
|
"{{template_dir}}/scripts/installers/kind.sh",
|
||||||
"{{template_dir}}/scripts/installers/1604/kubernetes-tools.sh",
|
"{{template_dir}}/scripts/installers/kubernetes-tools.sh",
|
||||||
"{{template_dir}}/scripts/installers/leiningen.sh",
|
"{{template_dir}}/scripts/installers/leiningen.sh",
|
||||||
"{{template_dir}}/scripts/installers/1604/mercurial.sh",
|
"{{template_dir}}/scripts/installers/1604/mercurial.sh",
|
||||||
"{{template_dir}}/scripts/installers/miniconda.sh",
|
"{{template_dir}}/scripts/installers/miniconda.sh",
|
||||||
|
|||||||
@@ -207,7 +207,7 @@
|
|||||||
"{{template_dir}}/scripts/installers/image-magick.sh",
|
"{{template_dir}}/scripts/installers/image-magick.sh",
|
||||||
"{{template_dir}}/scripts/installers/java-tools.sh",
|
"{{template_dir}}/scripts/installers/java-tools.sh",
|
||||||
"{{template_dir}}/scripts/installers/kind.sh",
|
"{{template_dir}}/scripts/installers/kind.sh",
|
||||||
"{{template_dir}}/scripts/installers/1804/kubernetes-tools.sh",
|
"{{template_dir}}/scripts/installers/kubernetes-tools.sh",
|
||||||
"{{template_dir}}/scripts/installers/leiningen.sh",
|
"{{template_dir}}/scripts/installers/leiningen.sh",
|
||||||
"{{template_dir}}/scripts/installers/1804/mercurial.sh",
|
"{{template_dir}}/scripts/installers/1804/mercurial.sh",
|
||||||
"{{template_dir}}/scripts/installers/miniconda.sh",
|
"{{template_dir}}/scripts/installers/miniconda.sh",
|
||||||
|
|||||||
Reference in New Issue
Block a user