feat: Add gcloud pipeline scripts and enhance k3s VM startup with additional checks and installations
This commit is contained in:
parent
31af97ced8
commit
ff815fa82c
6 changed files with 138 additions and 4 deletions
|
|
@ -1,10 +1,15 @@
|
|||
#!/bin/bash
|
||||
|
||||
INFCTL_GIT_REPO="https://codeberg.org/headshed/infctl-cli.git"
|
||||
INFCTL_GIT_REPO_BRANCH="feature/gcloud-k3s"
|
||||
INFCTL_INSTALL_DIR="/opt/infctl-cli"
|
||||
|
||||
# ensure only run once
|
||||
if [[ -f /etc/startup_was_launched ]]; then exit 0; fi
|
||||
|
||||
touch /etc/startup_was_launched
|
||||
|
||||
|
||||
# Format the k3s disk if not already formatted
|
||||
|
||||
# This creates an ext4 filesystem on the specified
|
||||
|
|
@ -42,7 +47,7 @@ fi
|
|||
|
||||
# apt install
|
||||
apt update
|
||||
apt install -y ncdu htop
|
||||
apt install -y ncdu htop git curl
|
||||
|
||||
# helm install
|
||||
curl -fsSL -o get_helm.sh https://raw.githubusercontent.com/helm/helm/main/scripts/get-helm-3
|
||||
|
|
@ -65,9 +70,7 @@ rc=/home/user/.bashrc
|
|||
} >> $rc
|
||||
|
||||
|
||||
# Install k3s and configure it to use the persistent disk for data storage
|
||||
# curl -sfL https://get.k3s.io | INSTALL_K3S_EXEC="--data-dir /mnt/disks/k3s" sh -
|
||||
|
||||
# Install k3s
|
||||
k3s_version="v1.32.8+k3s1"
|
||||
curl -sfL https://get.k3s.io \
|
||||
| \
|
||||
|
|
@ -77,6 +80,7 @@ curl -sfL https://get.k3s.io \
|
|||
--disable servicelb
|
||||
|
||||
|
||||
# Set up kubeconfig for the 'user' user
|
||||
mkdir -p /home/user/.kube
|
||||
chown user:user /home/user/.kube
|
||||
chmod 700 /home/user/.kube
|
||||
|
|
@ -84,3 +88,15 @@ chmod 700 /home/user/.kube
|
|||
# for easier access
|
||||
cp /etc/rancher/k3s/k3s.yaml /home/user/.kube/config
|
||||
chown user:user /home/user/.kube/config
|
||||
|
||||
# install infctl
|
||||
curl -L https://codeberg.org/headshed/infctl-cli/raw/branch/main/install.sh | bash
|
||||
|
||||
# clone infctl repo if not already present
|
||||
if [[ ! -d "$INFCTL_INSTALL_DIR" ]]; then
|
||||
mkdir -p "$INFCTL_INSTALL_DIR"
|
||||
cd ${INFCTL_INSTALL_DIR} || "echo 'Failed to change directory to $INFCTL_INSTALL_DIR' ; exit 1"
|
||||
git clone --branch "$INFCTL_GIT_REPO_BRANCH" "$INFCTL_GIT_REPO" || "echo 'Failed to clone $INFCTL_GIT_REPO' ; exit 1"
|
||||
chown -R user:user "$INFCTL_INSTALL_DIR"
|
||||
fi
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue