mirror of
https://github.com/kubeshark/kubeshark.git
synced 2026-05-06 17:27:24 +00:00
* Rename `mizu` to `kubeshark` * Rename `up9inc` to `kubeshark` * Change the logo, title, motto and the main color * Replace the favicon * Update the docs link * Change the copyright text in C files * Remove a comment * Rewrite the `README.md` and update the logo and screenshots used in it * Add a `TODO` * Fix the grammar * Fix the bottom text in the filtering guide * Change the Docker Hub username of cross-compilation intermediate images * Add an install script * Fix `docker/login-action` in the CI * Delete `build-custom-branch.yml` GitHub workflow * Update `README.md` * Remove `install.sh` * Change the motto back to "Traffic viewer for Kubernetes"
85 lines
3.1 KiB
Bash
Executable File
85 lines
3.1 KiB
Bash
Executable File
#!/bin/bash
|
|
set -e
|
|
|
|
PREFIX=$HOME/local/bin
|
|
VERSION=v1.22.0
|
|
TUNNEL_LOG="tunnel.log"
|
|
PROXY_LOG="proxy.log"
|
|
|
|
echo "Attempting to install minikube and assorted tools to $PREFIX"
|
|
|
|
if ! [ -x "$(command -v kubectl)" ]; then
|
|
echo "Installing kubectl version $VERSION"
|
|
curl -LO "https://storage.googleapis.com/kubernetes-release/release/$VERSION/bin/linux/amd64/kubectl"
|
|
chmod +x kubectl
|
|
mv kubectl "$PREFIX"
|
|
else
|
|
echo "kubectl is already installed"
|
|
fi
|
|
|
|
if ! [ -x "$(command -v minikube)" ]; then
|
|
echo "Installing minikube version $VERSION"
|
|
curl -Lo minikube https://storage.googleapis.com/minikube/releases/$VERSION/minikube-linux-amd64
|
|
chmod +x minikube
|
|
mv minikube "$PREFIX"
|
|
else
|
|
echo "minikube is already installed"
|
|
fi
|
|
|
|
echo "Starting minikube..."
|
|
minikube start --cpus 2 --memory 6000
|
|
|
|
echo "Creating kubeshark tests namespaces"
|
|
kubectl create namespace kubeshark-tests --dry-run=client -o yaml | kubectl apply -f -
|
|
kubectl create namespace kubeshark-tests2 --dry-run=client -o yaml | kubectl apply -f -
|
|
|
|
echo "Creating httpbin deployments"
|
|
kubectl create deployment httpbin --image=kennethreitz/httpbin -n kubeshark-tests --dry-run=client -o yaml | kubectl apply -f -
|
|
kubectl create deployment httpbin2 --image=kennethreitz/httpbin -n kubeshark-tests --dry-run=client -o yaml | kubectl apply -f -
|
|
|
|
kubectl create deployment httpbin --image=kennethreitz/httpbin -n kubeshark-tests2 --dry-run=client -o yaml | kubectl apply -f -
|
|
|
|
echo "Creating redis deployment"
|
|
kubectl create deployment redis --image=redis -n kubeshark-tests --dry-run=client -o yaml | kubectl apply -f -
|
|
|
|
echo "Creating rabbitmq deployment"
|
|
kubectl create deployment rabbitmq --image=rabbitmq -n kubeshark-tests --dry-run=client -o yaml | kubectl apply -f -
|
|
|
|
echo "Creating httpbin services"
|
|
kubectl expose deployment httpbin --type=NodePort --port=80 -n kubeshark-tests --dry-run=client -o yaml | kubectl apply -f -
|
|
kubectl expose deployment httpbin2 --type=NodePort --port=80 -n kubeshark-tests --dry-run=client -o yaml | kubectl apply -f -
|
|
|
|
kubectl expose deployment httpbin --type=NodePort --port=80 -n kubeshark-tests2 --dry-run=client -o yaml | kubectl apply -f -
|
|
|
|
echo "Creating redis service"
|
|
kubectl expose deployment redis --type=LoadBalancer --port=6379 -n kubeshark-tests --dry-run=client -o yaml | kubectl apply -f -
|
|
|
|
echo "Creating rabbitmq service"
|
|
kubectl expose deployment rabbitmq --type=LoadBalancer --port=5672 -n kubeshark-tests --dry-run=client -o yaml | kubectl apply -f -
|
|
|
|
echo "Starting proxy"
|
|
rm -f ${PROXY_LOG}
|
|
kubectl proxy --port=8080 > ${PROXY_LOG} &
|
|
PID1=$!
|
|
echo "kubectl proxy process id is ${PID1} and log of proxy in ${PROXY_LOG}"
|
|
|
|
if [[ -z "${CI}" ]]; then
|
|
echo "Setting env var of kubeshark ci image"
|
|
export KUBESHARK_CI_IMAGE="kubeshark/ci:0.0"
|
|
echo "Build agent image"
|
|
docker build -t "${KUBESHARK_CI_IMAGE}" .
|
|
else
|
|
echo "not building docker image in CI because it is created as separate step"
|
|
fi
|
|
|
|
minikube image load "${KUBESHARK_CI_IMAGE}"
|
|
|
|
echo "Build cli"
|
|
cd cli && make build GIT_BRANCH=ci SUFFIX=ci
|
|
|
|
echo "Starting tunnel"
|
|
rm -f ${TUNNEL_LOG}
|
|
minikube tunnel > ${TUNNEL_LOG} &
|
|
PID2=$!
|
|
echo "Minikube tunnel process id is ${PID2} and log of tunnel in ${TUNNEL_LOG}"
|