github.com/pachyderm/pachyderm@v1.13.4/etc/testing/travis_install.sh (about)

     1  #!/bin/bash
     2  
     3  set -ex
     4  
     5  # install latest version of docker
     6  curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
     7  sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"
     8  sudo apt-get update -y
     9  sudo apt-get -y -o Dpkg::Options::="--force-confnew" install docker-ce
    10  
    11  # install goreleaser
    12  pushd /usr/local/
    13  curl -sfL https://install.goreleaser.com/github.com/goreleaser/goreleaser.sh | sudo sh
    14  popd
    15  goreleaser -v
    16  
    17  # reconfigure & restart docker
    18  echo 'DOCKER_OPTS="-H unix:///var/run/docker.sock -s devicemapper"' | sudo tee /etc/default/docker > /dev/null
    19  echo '{"experimental":true}' | sudo tee /etc/docker/daemon.json
    20  sudo service docker restart
    21  
    22  # Install deps
    23  sudo apt-get install -y -qq \
    24    jq \
    25    silversearcher-ag \
    26    python3 \
    27    python3-pip \
    28    python3-setuptools \
    29    pkg-config \
    30    fuse
    31  
    32  # Install fuse
    33  sudo modprobe fuse
    34  sudo chmod 666 /dev/fuse
    35  sudo cp etc/build/fuse.conf /etc/fuse.conf
    36  sudo chown root:root /etc/fuse.conf
    37  
    38  # Install aws CLI (for TLS test)
    39  pip3 install --upgrade --user wheel
    40  pip3 install --upgrade --user awscli s3transfer==0.3.4
    41  
    42  # Install kubectl
    43  # To get the latest kubectl version:
    44  # curl -s https://storage.googleapis.com/kubernetes-release/release/stable.txt
    45  if [ ! -f ~/cached-deps/kubectl ] ; then
    46      KUBECTL_VERSION=v1.19.2
    47      curl -L -o kubectl https://storage.googleapis.com/kubernetes-release/release/${KUBECTL_VERSION}/bin/linux/amd64/kubectl && \
    48          chmod +x ./kubectl && \
    49          mv ./kubectl ~/cached-deps/kubectl
    50  fi
    51  
    52  # Install minikube
    53  # To get the latest minikube version:
    54  # curl https://api.github.com/repos/kubernetes/minikube/releases | jq -r .[].tag_name | sort -V | tail -n1
    55  if [ ! -f ~/cached-deps/minikube ] ; then
    56      MINIKUBE_VERSION=v1.13.1 # If changed, also do etc/kube/start-minikube.sh
    57      curl -L -o minikube https://storage.googleapis.com/minikube/releases/${MINIKUBE_VERSION}/minikube-linux-amd64 && \
    58          chmod +x ./minikube && \
    59          mv ./minikube ~/cached-deps/minikube
    60  fi
    61  
    62  # Install vault
    63  if [ ! -f ~/cached-deps/vault ] ; then
    64      curl -Lo vault.zip https://releases.hashicorp.com/vault/1.2.3/vault_1.2.3_linux_amd64.zip && \
    65          unzip vault.zip && \
    66          mv ./vault ~/cached-deps/vault
    67  fi
    68  
    69  # Install etcdctl
    70  # To get the latest etcd version:
    71  # curl -Ls https://api.github.com/repos/etcd-io/etcd/releases | jq -r .[].tag_name
    72  if [ ! -f ~/cached-deps/etcdctl ] ; then
    73      ETCD_VERSION=v3.3.12
    74      curl -L https://storage.googleapis.com/etcd/${ETCD_VERSION}/etcd-${ETCD_VERSION}-linux-amd64.tar.gz \
    75          | tar xzf - --strip-components=1 && \
    76          mv ./etcdctl ~/cached-deps/etcdctl
    77  fi
    78  
    79  # Install kubeval
    80  if [ ! -f ~/cached-deps/kubeval ]; then
    81    KUBEVAL_VERSION=0.15.0
    82    curl -L https://github.com/instrumenta/kubeval/releases/download/${KUBEVAL_VERSION}/kubeval-linux-amd64.tar.gz \
    83        | tar xzf - kubeval && \
    84        mv ./kubeval ~/cached-deps/kubeval
    85  fi
    86  
    87  # Install helm
    88  curl https://raw.githubusercontent.com/helm/helm/master/scripts/get-helm-3 | bash