#!/bin/bash source "./deploy-common.sh" # Install Go filename="go1.18.linux-amd64.tar.gz" get_file "https://dl.google.com/go/$filename" "/tmp/$filename" "e85278e98f57cdb150fe8409e6e5df5343ecb13cebf03a5d5ff12bd55a80264f" untar_file "/tmp/$filename" # Install golangci-lint GOLANGCILINT_VERSION=1.45.0 filename="golangci-lint-${GOLANGCILINT_VERSION}-linux-amd64" get_file "https://github.com/golangci/golangci-lint/releases/download/v${GOLANGCILINT_VERSION}/$filename.tar.gz" \ "/tmp/$filename.tar.gz" \ "ca06a2b170f41a9e1e34d40ca88b15b8fed2d7e37310f0c08b7fc244c34292a9" untar_file "/tmp/$filename.tar.gz" ln -s /usr/local/${filename}/golangci-lint /usr/local/bin/golangci-lint ln -s /usr/local/go/bin/go /usr/local/bin/go ln -s /usr/local/go/bin/gofmt /usr/local/bin/gofmt chmod 755 /usr/local/bin/golangci-lint # Install dependencies apt-get update -y && apt-get install -y adduser libfontconfig1 locate && /bin/rm -rf /var/lib/apt/lists/* # Install code climate get_file "https://codeclimate.com/downloads/test-reporter/test-reporter-latest-linux-amd64" \ "/usr/local/bin/cc-test-reporter" \ "e1be1930379bd169d3a8e82135cf57216ad52ecfaf520b5804f269721e4dcc3d" chmod 755 /usr/local/bin/cc-test-reporter wget -O /usr/local/bin/grabpl "https://grafana-downloads.storage.googleapis.com/grafana-build-pipeline/v2.9.27/grabpl" chmod +x /usr/local/bin/grabpl # Install Mage mkdir -pv /tmp/mage $HOME/go/bin git clone https://github.com/magefile/mage.git /tmp/mage pushd /tmp/mage && go run bootstrap.go && popd mv $HOME/go/bin/mage /usr/local/bin GOOGLE_SDK_VERSION=365.0.1 GOOGLE_SDK_CHECKSUM=17003cdba67a868c2518ac16efa60dc6175533b7a9fb87304459784308e30fb0 curl -fLO https://dl.google.com/dl/cloudsdk/channels/rapid/downloads/google-cloud-sdk-${GOOGLE_SDK_VERSION}-linux-x86_64.tar.gz echo "${GOOGLE_SDK_CHECKSUM} google-cloud-sdk-${GOOGLE_SDK_VERSION}-linux-x86_64.tar.gz" | sha256sum --check --status tar xvzf google-cloud-sdk-${GOOGLE_SDK_VERSION}-linux-x86_64.tar.gz -C /opt rm google-cloud-sdk-${GOOGLE_SDK_VERSION}-linux-x86_64.tar.gz ln -s /opt/google-cloud-sdk/bin/gsutil /usr/bin/gsutil ln -s /opt/google-cloud-sdk/bin/gcloud /usr/bin/gcloud # Cleanup after yourself /bin/rm -rf /tmp/mage /bin/rm -rf $HOME/go # Perform user specific initialization sudo -u circleci ./deploy-user.sh # Get the size down /bin/rm -rf /var/lib/apt/lists