Last active
          October 2, 2024 15:59 
        
      - 
      
 - 
        
Save ChrisMcKee/d7b65785829232c95930d28d09475542 to your computer and use it in GitHub Desktop.  
    hashicorp terraform packer
  
        
  
    
      This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
      Learn more about bidirectional Unicode characters
    
  
  
    
  | #!/bin/bash | |
| cd /tmp | |
| sudo apt-get install --assume-yes jq > /dev/null | |
| terraform_url="https://releases.hashicorp.com/terraform/$(curl -s https://checkpoint-api.hashicorp.com/v1/check/terraform | jq -r -M '.current_version')/terraform_$(curl -s https://checkpoint-api.hashicorp.com/v1/check/terraform | jq -r -M '.current_version')_linux_amd64.zip" | |
| packer_url="https://releases.hashicorp.com/packer/$(curl -s https://checkpoint-api.hashicorp.com/v1/check/packer | jq -r -M '.current_version')/packer_$(curl -s https://checkpoint-api.hashicorp.com/v1/check/packer | jq -r -M '.current_version')_linux_amd64.zip" | |
| curl -o terraform.zip $terraform_url | |
| curl -o packer.zip $packer_url | |
| unzip packer.zip && unzip terraform.zip | |
| sudo mv {packer,terraform} /usr/local/bin -f | |
| rm {packer.zip,terraform.zip} | 
  
    
      This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
      Learn more about bidirectional Unicode characters
    
  
  
    
  | #!/bin/bash | |
| cd /tmp | |
| sudo apt-get install -y \ | |
| apt-transport-https \ | |
| ca-certificates \ | |
| curl \ | |
| unzip \ | |
| software-properties-common | |
| sudo apt-get install --assume-yes jq > /dev/null | |
| echo "setting up hashicorp" | |
| terraform_url="https://releases.hashicorp.com/terraform/$(curl -s https://checkpoint-api.hashicorp.com/v1/check/terraform | jq -r -M '.current_version')/terraform_$(curl -s https://checkpoint-api.hashicorp.com/v1/check/terraform | jq -r -M '.current_version')_linux_amd64.zip" | |
| packer_url="https://releases.hashicorp.com/packer/$(curl -s https://checkpoint-api.hashicorp.com/v1/check/packer | jq -r -M '.current_version')/packer_$(curl -s https://checkpoint-api.hashicorp.com/v1/check/packer | jq -r -M '.current_version')_linux_amd64.zip" | |
| vault_url=$(curl https://releases.hashicorp.com/index.json | jq '{vault}' | egrep "linux.*amd64" | sort --version-sort -r | head -1 | awk -F[\"] '{print $4}') | |
| nomad_url=$(curl https://releases.hashicorp.com/index.json | jq '{nomad}' | egrep "linux.*amd64" | sort --version-sort -r | head -1 | awk -F[\"] '{print $4}') | |
| curl -o terraform.zip $terraform_url | |
| curl -o packer.zip $packer_url | |
| curl -o vault.zip $vault_url | |
| curl -o nomad.zip $nomad_url | |
| unzip packer.zip | |
| unzip terraform.zip | |
| unzip vault.zip | |
| unzip nomad.zip | |
| sudo mv {packer,terraform,vault,nomad} /usr/local/bin -f | |
| rm {packer.zip,terraform.zip,vault.zip,nomad.zip} | |
| echo "setting up kubectl" | |
| curl -LO https://storage.googleapis.com/kubernetes-release/release/$(curl -s https://storage.googleapis.com/kubernetes-release/release/stable.txt)/bin/linux/amd64/kubectl | |
| chmod +x ./kubectl | |
| mv ./kubectl /usr/local/bin/kubectl | |
| echo "source <(kubectl completion bash)" >> ~/.bashrc | |
| source <(kubectl completion bash) | |
| echo "installing tfenv" | |
| wget -O tfsec https://github.com/tfsec/tfsec/releases/download/v0.39.29/tfsec-linux-amd64 | |
| chmod +x ./tfsec | |
| mv ./tfsec /usr/local/bin/tfsec | |
| echo "installing SOPS" | |
| wget -O sops.deb https://github.com/mozilla/sops/releases/download/v3.7.2/sops_3.7.2_amd64.deb | |
| sudo dpkg -i ./sops.deb | |
| wget -O aws-vault https://github.com/99designs/aws-vault/releases/download/v6.3.1/aws-vault-linux-amd64 | |
| chmod +x aws-vault | |
| sudo mv aws-vault /usr/bin -f | |
| echo "setting up helm" | |
| curl -L https://git.io/get_helm.sh | bash -s -- --version v3.8.2 | |
| echo "installing eventstore cli" | |
| wget -O es_cli.linux.tar.gz https://ospublic-tooling.s3.eu-west-2.amazonaws.com/es_cli.linux.1.5.0.tar.gz | |
| tar xvfz es_cli.linux.tar.gz -C ./ | |
| sudo mv es-cli /usr/bin/es-cli | |
| rm es_cli.linux.tar.gz | |
| echo "installing ansible" | |
| sudo apt -yq install software-properties-common apt-transport-https | |
| #sudo apt-add-repository ppa:ansible/ansible | |
| sudo apt -y update | |
| sudo apt -yq install ansible | |
| echo "installing rke" | |
| wget https://github.com/rancher/rke/releases/download/v1.2.8/rke_linux-amd64 -O ./rke && chmod +x ./rke | |
| sudo mv ./rke /usr/bin/rke | |
| #echo "installing step" | |
| #wget https://github.com/smallstep/cli/releases/download/v0.15.16/step-cli_0.15.16_amd64.deb -o ./stepcli.deb | |
| #sudo dpkg -i stepcli.deb | |
| sudo apt install software-properties-common gpg -yq | |
| sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys F6BC817356A3D45E | |
| sudo add-apt-repository ppa:longsleep/golang-backports -y | |
| sudo apt update && sudo apt install golang -yq | |
| echo "done" | |
  
    Sign up for free
    to join this conversation on GitHub.
    Already have an account?
    Sign in to comment
  
            
vscode extentions