mirror of
https://github.com/zokradonh/kopano-docker
synced 2025-06-06 15:36:40 +00:00
* add Vagrantfile for easy local test/dev deployment * add exception to editorconfig * Update README.md * update ci tools * add jq to setup ci script
93 lines
2.9 KiB
Bash
Executable File
93 lines
2.9 KiB
Bash
Executable File
#!/bin/bash
|
|
|
|
set -euo pipefail
|
|
IFS=$'\n\t'
|
|
|
|
COMMANDER_VERSION=2.0.0
|
|
DOCKER_COMPOSE_VERSION=1.25.5
|
|
GOSS_VERSION=0.3.11
|
|
HADOLINT_VERSION=1.17.6
|
|
REG_VERSION=0.16.1
|
|
SHELLCHECK_VERSION=0.7.1
|
|
TRIVY_VERSION=0.6.0
|
|
|
|
progname=$(basename "$0")
|
|
tempdir=$(mktemp -d "/tmp/$progname.XXXXXX")
|
|
function cleanup() {
|
|
rm -rf "$tempdir"
|
|
}
|
|
trap cleanup INT EXIT
|
|
|
|
cd "$tempdir"
|
|
|
|
if ! command -v hadolint > /dev/null; then
|
|
sudo curl -L "https://github.com/hadolint/hadolint/releases/download/v$HADOLINT_VERSION/hadolint-$(uname -s)-$(uname -m)" -o /usr/local/bin/hadolint
|
|
sudo chmod +rx /usr/local/bin/hadolint
|
|
fi
|
|
|
|
if ! command -v docker-compose > /dev/null; then
|
|
sudo curl -L "https://github.com/docker/compose/releases/download/${DOCKER_COMPOSE_VERSION}/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
|
|
sudo chmod +rx /usr/local/bin/docker-compose
|
|
fi
|
|
|
|
if ! command -v trivy > /dev/null; then
|
|
wget https://github.com/knqyf263/trivy/releases/download/v${TRIVY_VERSION}/trivy_${TRIVY_VERSION}_Linux-64bit.tar.gz
|
|
sudo tar zxvf trivy_${TRIVY_VERSION}_Linux-64bit.tar.gz -C /usr/local/bin trivy
|
|
fi
|
|
|
|
if ! command -v goss > /dev/null; then
|
|
sudo curl -L https://github.com/aelsabbahy/goss/releases/download/v$GOSS_VERSION/goss-linux-amd64 -o /usr/local/bin/goss
|
|
sudo chmod +rx /usr/local/bin/goss
|
|
fi
|
|
|
|
if ! command -v dcgoss > /dev/null; then
|
|
sudo curl -L https://raw.githubusercontent.com/fbartels/goss/dcgoss-v2/extras/dcgoss/dcgoss -o /usr/local/bin/dcgoss
|
|
sudo chmod +rx /usr/local/bin/dcgoss
|
|
fi
|
|
|
|
if ! command -v commander > /dev/null; then
|
|
sudo curl -L https://github.com/SimonBaeumer/commander/releases/download/v$COMMANDER_VERSION/commander-linux-amd64 -o /usr/local/bin/commander
|
|
sudo chmod +rx /usr/local/bin/commander
|
|
fi
|
|
|
|
if ! command -v dccommander > /dev/null; then
|
|
sudo curl -L https://raw.githubusercontent.com/fbartels/dccommander/master/dccommander -o /usr/local/bin/dccommander
|
|
sudo chmod +rx /usr/local/bin/dccommander
|
|
fi
|
|
|
|
if ! command -v reg > /dev/null; then
|
|
sudo curl -L https://github.com/genuinetools/reg/releases/download/v$REG_VERSION/reg-linux-amd64 -o /usr/local/bin/reg
|
|
sudo chmod +rx /usr/local/bin/reg
|
|
fi
|
|
|
|
if ! command -v expect > /dev/null; then
|
|
sudo apt update && sudo apt install -y expect
|
|
fi
|
|
|
|
if ! command -v pip > /dev/null; then
|
|
sudo apt install -y python-pip
|
|
fi
|
|
|
|
if ! command -v yamllint > /dev/null; then
|
|
sudo pip install --upgrade pip && sudo pip install yamllint
|
|
fi
|
|
|
|
if ! command -v npm > /dev/null; then
|
|
curl -sL https://deb.nodesource.com/setup_12.x | sudo -E bash -
|
|
sudo apt install -y nodejs
|
|
npm config set prefix ~
|
|
fi
|
|
|
|
if ! command -v eclint > /dev/null; then
|
|
npm install eclint -g
|
|
fi
|
|
|
|
if ! command -v shellcheck > /dev/null; then
|
|
wget "https://github.com/koalaman/shellcheck/releases/download/v$SHELLCHECK_VERSION/shellcheck-v$SHELLCHECK_VERSION.linux.x86_64.tar.xz"
|
|
tar -xf shellcheck-v*.linux.x86_64.tar.xz
|
|
sudo mv shellcheck-v*/shellcheck /usr/local/bin/
|
|
fi
|
|
|
|
if ! command -v jq > /dev/null; then
|
|
sudo apt install -y jq
|
|
fi |