Skip to content
Merged
435 changes: 5 additions & 430 deletions README.md

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion argocd.sh
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ DIR=$(cd "$(dirname "$0")" && pwd)
source "$DIR/.lib.sh"

# https://github.com/argoproj/argo-cd/releases
version="2.10.18"
version="3.1.10"

start "Argo CD $version"

Expand Down
11 changes: 10 additions & 1 deletion azure-cli.sh
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,15 @@ trap "echo 'error: Script failed: see failed command above'" ERR
DIR=$(cd "$(dirname "$0")" && pwd)
source "$DIR/.lib.sh"

# use the highest version used in environment
# KUBECTL_VERSION="latest"
KUBECTL_VERSION="1.33.7"

# use latest kubelogin version from:
# https://github.com/Azure/kubelogin/releases
# https://github.com/Azure/kubelogin/blob/main/CHANGELOG.md
KUBELOGIN_VERSION="0.2.14"

start 'Azure CLI'

# install
Expand All @@ -15,7 +24,7 @@ curl -sL https://aka.ms/InstallAzureCLIDeb | sudo bash
# https://github.com/Azure/kubelogin

# use default aks version
sudo az aks install-cli
sudo az aks install-cli --client-version ${KUBECTL_VERSION} --kubelogin-version ${KUBELOGIN_VERSION}

# version info
command -v kubectl
Expand Down
2 changes: 1 addition & 1 deletion bicep.sh
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ DIR=$(cd "$(dirname "$0")" && pwd)
source "$DIR/.lib.sh"

# https://github.com/Azure/bicep/releases/
VERSION="v0.24.24"
VERSION="v0.39.26"

start "bicep $VERSION"

Expand Down
4 changes: 2 additions & 2 deletions helm-plugins.sh
Original file line number Diff line number Diff line change
Expand Up @@ -10,11 +10,11 @@ echo

# https://github.com/databus23/helm-diff/releases
helm plugin uninstall diff 2>/dev/null
helm plugin install https://github.com/databus23/helm-diff --version v3.9.2
helm plugin install https://github.com/databus23/helm-diff --version v3.14.1

# https://github.com/helm/helm-mapkubeapis/releases
helm plugin uninstall mapkubeapis 2>/dev/null
helm plugin install https://github.com/helm/helm-mapkubeapis --version v0.4.1
helm plugin install https://github.com/helm/helm-mapkubeapis --version v0.6.1

echo -e "\nHelm Plugins:"
helm plugin list
2 changes: 1 addition & 1 deletion helm.sh
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ DIR=$(cd "$(dirname "$0")" && pwd)
source "$DIR/.lib.sh"

# https://github.com/helm/helm/releases
ver="3.18.2"
ver="3.19.4"

start "Helm v$ver"

Expand Down
8 changes: 4 additions & 4 deletions install-common.sh
Original file line number Diff line number Diff line change
Expand Up @@ -4,18 +4,18 @@ trap "echo 'error: Script failed: see failed command above'" ERR
DIR=$(cd "$(dirname "$0")" && pwd)
source "$DIR/.lib.sh"

sudo apt update -y
sudo apt upgrade -y
sudo apt update -y && sudo apt upgrade -y

echo -e "\e[34m»»» 🚀 \e[32mInstalling \e[33m'Common Tools'\e[32m ... \e[39m"
~/tools/azure-cli.sh
~/tools/helm.sh
~/tools/k9s.sh
~/tools/kube-tools.sh
~/tools/misc.sh
~/tools/powershell.sh
~/tools/pre-commit.sh
~/tools/python-tools.sh
~/tools/powershell-modules.sh
~/tools/python.sh
~/tools/python-tools.sh
~/tools/terraform-docs.sh
~/tools/terraform.sh
~/tools/velero.sh
Expand Down
32 changes: 32 additions & 0 deletions k9s.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
#!/usr/bin/env bash
set -euo pipefail
trap "echo 'error: Script failed: see failed command above'" ERR
DIR=$(cd "$(dirname "$0")" && pwd)
source "$DIR/.lib.sh"

# installs k9s https://github.com/derailed/k9s

# vars
VERSION='0.50.18'
TOOL_NAME='k9s'
DOWNLOAD_URL="https://github.com/derailed/k9s/releases/download/v${VERSION}/k9s_linux_amd64.deb"
DOWNLOAD_DIR=$(mktemp --directory)
DOWNLOAD_PATH="$DOWNLOAD_DIR/k9s.deb"

# prep
start "$TOOL_NAME"
mkdir -p "$DOWNLOAD_DIR"

# download
curl --location "$DOWNLOAD_URL" --output "$DOWNLOAD_PATH"

# install
# sudo dpkg-query -l | grep k9s
# sudo dpkg --remove k9s
sudo dpkg --install "$DOWNLOAD_PATH"

# cleanup
rm -fr "$DOWNLOAD_DIR"

# info
end "$TOOL_NAME" 'version'
18 changes: 7 additions & 11 deletions kubectl.sh
Original file line number Diff line number Diff line change
Expand Up @@ -6,8 +6,8 @@ source "$DIR/.lib.sh"

# show available versions (only available after adding k8s apt repo):
# apt-cache madison kubectl | head -n 30
VERSION="1.27.8-1.1"
MINOR_VERSION="v1.27"
VERSION="1.33.7-ubuntu24.04u1"
MINOR_VERSION="v1.33"

start "kubectl $VERSION"

Expand All @@ -16,17 +16,13 @@ start "kubectl $VERSION"

# Update the apt package index and install packages needed to use the Kubernetes apt repository:
sudo apt-get update
sudo apt-get install -y apt-transport-https ca-certificates curl
# apt-transport-https may be a dummy package; if so, you can skip that package
sudo apt-get install -y apt-transport-https ca-certificates curl gnupg

# Download the public signing key for the Kubernetes package repositories.
# The same signing key is used for all repositories so you can disregard the version in the URL
# If the folder `/etc/apt/keyrings` does not exist, it should be created before the curl command, read the note below.
# sudo mkdir -p -m 755 /etc/apt/keyrings
curl -fsSL https://pkgs.k8s.io/core:/stable:/${MINOR_VERSION}/deb/Release.key | sudo gpg --dearmor -o /etc/apt/keyrings/kubernetes-apt-keyring.gpg

# This overwrites any existing configuration in /etc/apt/sources.list.d/kubernetes.list
echo "deb [signed-by=/etc/apt/keyrings/kubernetes-apt-keyring.gpg] https://pkgs.k8s.io/core:/stable:/${MINOR_VERSION}/deb/ /" | sudo tee /etc/apt/sources.list.d/kubernetes.list

# sudo curl -fsSLo /usr/share/keyrings/kubernetes-archive-keyring.gpg https://packages.cloud.google.com/apt/doc/apt-key.gpg
# echo "deb [signed-by=/usr/share/keyrings/kubernetes-archive-keyring.gpg] https://apt.kubernetes.io/ kubernetes-xenial main" | sudo tee /etc/apt/sources.list.d/kubernetes.list
sudo chmod 644 /etc/apt/keyrings/kubernetes-apt-keyring.gpg # allow unprivileged APT programs to read this keyring

sudo apt-get update
sudo apt-get install -y kubectl=$VERSION
Expand Down
9 changes: 3 additions & 6 deletions misc.sh
Original file line number Diff line number Diff line change
Expand Up @@ -3,10 +3,7 @@ set -euo pipefail
trap "echo 'error: Script failed: see failed command above'" ERR

# Misc system utilities
# wslu is a set of utilities for WSL to improve integration with Windows
# - required so Azure CLIs can open browser windows for login
sudo apt-get update -y
sudo apt-get install -y jq pv unzip tree

# Install WSL Utilities - Azure CLIs can open browser windows for login
sudo add-apt-repository ppa:wslutilities/wslu
sudo apt update
sudo apt install wslu
sudo apt-get install -y jq pv unzip tree wslu
2 changes: 1 addition & 1 deletion oh-my-posh.sh
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ DIR=$(cd "$(dirname "$0")" && pwd)
source "$DIR/.lib.sh"

# https://github.com/JanDeDobbeleer/oh-my-posh3/releases
ver="v21.6.0"
ver="v29.0.2"

start "oh-my-posh $ver"

Expand Down
2 changes: 1 addition & 1 deletion pluto.sh
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ DIR=$(cd "$(dirname "$0")" && pwd)
source "$DIR/.lib.sh"

# https://github.com/FairwindsOps/pluto/releases
ver="5.19.0"
ver="5.22.7"

start "Pluto $ver"

Expand Down
2 changes: 1 addition & 1 deletion polaris.sh
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ DIR=$(cd "$(dirname "$0")" && pwd)
source "$DIR/.lib.sh"

# https://github.com/fairwindsops/polaris/releases
ver="8.5.4"
ver="10.1.3"

start "Polaris $ver"

Expand Down
14 changes: 14 additions & 0 deletions powershell-modules.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
#!/usr/bin/env bash
set -euo pipefail
trap "echo 'error: Script failed: see failed command above'" ERR
DIR=$(cd "$(dirname "$0")" && pwd)
source "$DIR/.lib.sh"

start "PowerShell Modules"

# Install modules
pwsh --command "Set-PSRepository -Name 'PSGallery' -InstallationPolicy 'Trusted'"
pwsh --command "Install-Module -Name Az, Microsoft.Graph, Microsoft.Graph.Beta"
pwsh --command "Get-Module -Name Az, Microsoft.Graph, Microsoft.Graph.Beta -ListAvailable"

end 'pwsh' '--version'
26 changes: 17 additions & 9 deletions powershell.sh
Original file line number Diff line number Diff line change
Expand Up @@ -8,31 +8,39 @@ source "$DIR/.lib.sh"
# apt-cache madison powershell | head -n 40
# apt list update && apt list -a powershell

start "PowerShell (ubuntu-2204)"
start "PowerShell"

###################################
# Prerequisites

# Update the list of packages
sudo apt-get update

# Install pre-requisite packages.
sudo apt-get install -y wget apt-transport-https software-properties-common

# Download the Microsoft repository GPG keys
wget -q "https://packages.microsoft.com/config/ubuntu/$(lsb_release -rs)/packages-microsoft-prod.deb"
# Get the version of Ubuntu
source /etc/os-release

# Download the Microsoft repository keys
wget -q https://packages.microsoft.com/config/ubuntu/$VERSION_ID/packages-microsoft-prod.deb

# Register the Microsoft repository GPG keys
# Register the Microsoft repository keys
sudo dpkg -i packages-microsoft-prod.deb

# Delete the Microsoft repository keys file
rm packages-microsoft-prod.deb

# Update the list of packages after we added packages.microsoft.com
sudo apt-get update

###################################
# Install PowerShell
sudo apt-get install -y powershell

# Cleanup
rm packages-microsoft-prod.deb

# Install modules
pwsh --command "Install-Module -Name posh-git, PSReadLine -Verbose"
pwsh --command "Get-Module"
pwsh --command "Set-PSRepository -Name 'PSGallery' -InstallationPolicy 'Trusted'"
pwsh --command "Install-Module -Name posh-git, PSReadLine, Microsoft.PowerShell.SecretManagement, Microsoft.PowerShell.SecretStore"
pwsh --command "Get-Module -Name posh-git, PSReadLine, Microsoft.PowerShell.SecretManagement, Microsoft.PowerShell.SecretStore -ListAvailable"

end 'pwsh' '--version'
15 changes: 0 additions & 15 deletions pre-commit.sh

This file was deleted.

14 changes: 9 additions & 5 deletions python-tools.sh
Original file line number Diff line number Diff line change
Expand Up @@ -4,10 +4,14 @@ trap "echo 'error: Script failed: see failed command above'" ERR
DIR=$(cd "$(dirname "$0")" && pwd)
source "$DIR/.lib.sh"

# https://pypi.org/project/tldr/#history
TLDR_VERSION='3.4.1'
# PACKAGE_VERSION='x.x.x'

pip install --no-input \
tldr==${TLDR_VERSION} \
# package_name==${PACKAGE_VERSION} \
# https://pypi.org/project/tldr/#history
TLDR_VERSION='3.4.3'

# https://pypi.org/project/pre-commit/#history
PRECOMMIT_VERSION='4.5.1'

python3 -m pip install --break-system-packages --upgrade pip

pip3 install --break-system-packages --no-input tldr==${TLDR_VERSION} pre-commit==${PRECOMMIT_VERSION}
8 changes: 2 additions & 6 deletions python.sh
Original file line number Diff line number Diff line change
Expand Up @@ -4,11 +4,7 @@ trap "echo 'error: Script failed: see failed command above'" ERR
DIR=$(cd "$(dirname "$0")" && pwd)
source "$DIR/.lib.sh"

# install pip
python3 --version
sudo apt update
sudo apt install -y python3-pip

# upgrade pip
python3 -m pip install --upgrade pip
pip --version
sudo apt update
sudo apt install -y python3-pip python3-venv
2 changes: 1 addition & 1 deletion terraform-docs.sh
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ DIR=$(cd "$(dirname "$0")" && pwd)
source "$DIR/.lib.sh"

# https://github.com/terraform-docs/terraform-docs/releases
VERSION="v0.20.0"
VERSION="v0.21.0"

start "terraform-docs $VERSION"

Expand Down
2 changes: 1 addition & 1 deletion terraform.sh
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ DIR=$(cd "$(dirname "$0")" && pwd)
source "$DIR/.lib.sh"

# https://github.com/hashicorp/terraform/releases
VERSION="1.12.1"
VERSION="1.13.5"

start "Terraform $VERSION"

Expand Down
2 changes: 1 addition & 1 deletion tfsec.sh
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ DIR=$(cd "$(dirname "$0")" && pwd)
source "$DIR/.lib.sh"

# https://github.com/aquasecurity/tfsec/releases
VERSION="v1.28.5"
VERSION="v1.28.14"

start "tfsec $VERSION"

Expand Down
2 changes: 1 addition & 1 deletion trivy.sh
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ source "$DIR/.lib.sh"

# https://aquasecurity.github.io/trivy/latest/getting-started/installation/
# https://github.com/aquasecurity/trivy/releases
ver="0.48.3"
ver="0.68.2"

start "Trivy $ver"

Expand Down
2 changes: 1 addition & 1 deletion velero.sh
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ DIR=$(cd "$(dirname "$0")" && pwd)
source "$DIR/.lib.sh"

# https://github.com/vmware-tanzu/velero/releases
ver="v1.16.1"
ver="v1.17.1"

start "Velero $ver"

Expand Down