docs(main): fix bot config (#2976) #1
This file contains 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
name: Test Sealos Run Command | |
on: | |
workflow_dispatch: | |
push: | |
branches: ["main"] | |
paths: | |
- ".github/workflows/**" | |
- "cmd/**" | |
- "pkg/**" | |
pull_request: | |
branches: ["*"] | |
paths: | |
- ".github/workflows/**" | |
- "cmd/**" | |
- "pkg/**" | |
jobs: | |
call_ci_workflow: | |
uses: ./.github/workflows/import-patch-image.yml | |
with: | |
arch: amd64 | |
download-sealos: | |
needs: [call_ci_workflow] | |
runs-on: ubuntu-latest | |
steps: | |
- name: Download sealos binary | |
uses: actions/download-artifact@v3 | |
with: | |
name: sealos-amd64 | |
path: /tmp/sealos/bin/ | |
- name: Download patch image tar | |
uses: actions/download-artifact@v3 | |
with: | |
name: patch-image-amd64.tar | |
path: /tmp/sealos/images/ | |
- name: Save Binaries | |
uses: actions/upload-artifact@v3 | |
with: | |
name: sealos | |
path: /tmp/sealos/bin/sealos | |
- name: Save Tars | |
uses: actions/upload-artifact@v3 | |
with: | |
name: patch-amd64.tar | |
path: /tmp/sealos/images/patch-amd64.tar | |
verify-run-single: | |
needs: [download-sealos] | |
runs-on: ubuntu-latest | |
steps: | |
- name: Download sealos | |
uses: actions/download-artifact@v3 | |
with: | |
name: sealos | |
path: /tmp/ | |
- name: Verify sealos | |
run: | | |
sudo chmod a+x /tmp/sealos | |
sudo mv /tmp/sealos /usr/bin/ | |
sudo sealos version | |
- name: Remove containerd && docker | |
uses: labring/[email protected] | |
with: | |
type: prune | |
- name: Auto install k8s using sealos | |
run: | | |
sudo sealos run labring/kubernetes:v1.25.0 --single --debug | |
mkdir -p "$HOME/.kube" | |
sudo cp -i /etc/kubernetes/admin.conf "$HOME/.kube/config" | |
sudo chown "$(whoami)" "$HOME/.kube/config" | |
kubectl get svc | |
kubectl get pod -A | |
sudo cat /root/.sealos/default/etc/kubeadm-init.yaml | |
sudo cat /root/.sealos/default/Clusterfile | |
- name: Verify Single Node Cluster Status | |
run: | | |
echo "Verify Cluster" | |
echo "Current system info" | |
sudo /var/lib/sealos/data/default/rootfs/opt/sealctl cri socket | |
sudo /var/lib/sealos/data/default/rootfs/opt/sealctl cri cgroup-driver --short | |
echo "Check Single Node Taints" | |
taints=$(kubectl get nodes -o json | jq ".items[].spec.taints") | |
echo "$taints" | |
if echo "$taints" | grep -q "control-plane"; then | |
printf "should not have control-plane Taint\n" && false | |
fi | |
echo "Current Cluster info" | |
set -e | |
sudo cat /root/.sealos/default/etc/kubeadm-init.yaml | grep /run/containerd/containerd.sock | |
sudo cat /root/.sealos/default/etc/kubeadm-init.yaml | grep systemd | |
sudo cat /root/.sealos/default/etc/kubeadm-init.yaml | grep 100.64.0.0/10 | |
sudo cat /root/.sealos/default/etc/kubeadm-init.yaml | grep 10.96.0.0/22 | |
verify-run-containerd: | |
needs: [download-sealos] | |
runs-on: ubuntu-latest | |
steps: | |
- name: Download sealos | |
uses: actions/download-artifact@v3 | |
with: | |
name: sealos | |
path: /tmp/ | |
- name: Verify sealos | |
run: | | |
sudo chmod a+x /tmp/sealos | |
sudo mv /tmp/sealos /usr/bin/ | |
sudo sealos version | |
- name: Remove containerd && docker | |
uses: labring/[email protected] | |
with: | |
type: prune | |
- name: Auto install k8s using sealos | |
run: | | |
sudo sealos run labring/kubernetes:v1.25.0 --single --debug | |
mkdir -p "$HOME/.kube" | |
sudo cp -i /etc/kubernetes/admin.conf "$HOME/.kube/config" | |
sudo chown "$(whoami)" "$HOME/.kube/config" | |
kubectl get svc | |
kubectl get pod -A | |
sudo cat /root/.sealos/default/etc/kubeadm-init.yaml | |
sudo cat /root/.sealos/default/Clusterfile | |
- name: Verify Cluster Status | |
run: | | |
echo "Verify Cluster" | |
echo "Current system info" | |
sudo /var/lib/sealos/data/default/rootfs/opt/sealctl cri socket | |
sudo /var/lib/sealos/data/default/rootfs/opt/sealctl cri cgroup-driver --short | |
echo "Current Cluster info" | |
set -e | |
sudo cat /root/.sealos/default/etc/kubeadm-init.yaml | grep /run/containerd/containerd.sock | |
sudo cat /root/.sealos/default/etc/kubeadm-init.yaml | grep systemd | |
sudo cat /root/.sealos/default/etc/kubeadm-init.yaml | grep 100.64.0.0/10 | |
sudo cat /root/.sealos/default/etc/kubeadm-init.yaml | grep 10.96.0.0/22 | |
verify-run-docker: | |
needs: [download-sealos] | |
runs-on: ubuntu-latest | |
steps: | |
- name: Download sealos | |
uses: actions/download-artifact@v3 | |
with: | |
name: sealos | |
path: /tmp/ | |
- name: Verify sealos | |
run: | | |
sudo chmod a+x /tmp/sealos | |
sudo mv /tmp/sealos /usr/bin/ | |
sudo sealos version | |
- name: Remove containerd && docker | |
uses: labring/[email protected] | |
with: | |
type: prune | |
- name: Auto install k8s using sealos | |
run: | | |
sudo sealos run labring/kubernetes-docker:v1.25.0 --single --debug | |
mkdir -p "$HOME/.kube" | |
sudo cp -i /etc/kubernetes/admin.conf "$HOME/.kube/config" | |
sudo chown "$(whoami)" "$HOME/.kube/config" | |
kubectl get svc | |
kubectl get pod -A | |
sudo cat /root/.sealos/default/etc/kubeadm-init.yaml | |
sudo cat /root/.sealos/default/Clusterfile | |
- name: Verify Cluster Status | |
run: | | |
echo "Verify Cluster" | |
echo "Current system info" | |
sudo /var/lib/sealos/data/default/rootfs/opt/sealctl cri socket | |
sudo /var/lib/sealos/data/default/rootfs/opt/sealctl cri cgroup-driver --short | |
echo "Current Cluster info" | |
set -e | |
sudo cat /root/.sealos/default/etc/kubeadm-init.yaml | grep /var/run/cri-dockerd.sock | |
sudo cat /root/.sealos/default/etc/kubeadm-init.yaml | grep systemd | |
sudo cat /root/.sealos/default/etc/kubeadm-init.yaml | grep 100.64.0.0/10 | |
sudo cat /root/.sealos/default/etc/kubeadm-init.yaml | grep 10.96.0.0/22 | |
verify-run-containerd-buildimage: | |
needs: [download-sealos] | |
runs-on: ubuntu-latest | |
steps: | |
- name: Download sealos | |
uses: actions/download-artifact@v3 | |
with: | |
name: sealos | |
path: /tmp/ | |
- name: Verify sealos | |
run: | | |
sudo chmod a+x /tmp/sealos | |
sudo mv /tmp/sealos /usr/bin/ | |
sudo sealos version | |
- name: Remove containerd && docker | |
uses: labring/[email protected] | |
with: | |
type: prune | |
- name: Build new image | |
run: | | |
mkdir -p /tmp/buildimage | |
cat > /tmp/buildimage/kubeadm.yml <<EOF | |
apiVersion: kubeadm.k8s.io/v1beta2 | |
kind: ClusterConfiguration | |
networking: | |
serviceSubnet: "100.55.0.0/16" | |
EOF | |
cat > /tmp/buildimage/Kubefile <<EOF | |
FROM labring/kubernetes:v1.25.0 | |
COPY kubeadm.yml etc/ | |
EOF | |
sudo sealos build --debug -t hack:dev /tmp/buildimage | |
- name: Auto install k8s using sealos | |
run: | | |
sudo sealos run hack:dev --single --debug | |
mkdir -p "$HOME/.kube" | |
sudo cp -i /etc/kubernetes/admin.conf "$HOME/.kube/config" | |
sudo chown "$(whoami)" "$HOME/.kube/config" | |
kubectl get svc | |
kubectl get pod -A | |
sudo cat /root/.sealos/default/etc/kubeadm-init.yaml | |
sudo cat /root/.sealos/default/Clusterfile | |
- name: Verify Cluster Status | |
run: | | |
local_ip=`ip addr | grep inet | grep -v inet6 | grep -v docker |grep -v host | awk '{print $2}' | awk -F '/' '{print $1}'` | |
echo "Verify Cluster" | |
echo "Current system info" | |
sudo /var/lib/sealos/data/default/rootfs/opt/sealctl cri socket | |
sudo /var/lib/sealos/data/default/rootfs/opt/sealctl cri cgroup-driver --short | |
echo "Current Cluster info" | |
set -e | |
sudo cat /root/.sealos/default/etc/kubeadm-init.yaml | grep /run/containerd/containerd.sock | |
sudo cat /root/.sealos/default/etc/kubeadm-init.yaml | grep systemd | |
sudo cat /root/.sealos/default/etc/kubeadm-init.yaml | grep 100.64.0.0/10 | |
sudo cat /root/.sealos/default/etc/kubeadm-init.yaml | grep 100.55.0.0/16 | |
sudo cat /root/.sealos/default/etc/kubeadm-init.yaml | grep 127.0.0.1 | |
sudo cat /root/.sealos/default/etc/kubeadm-init.yaml | grep apiserver.cluster.local | |
sudo cat /root/.sealos/default/etc/kubeadm-init.yaml | grep 10.103.97.2 | |
sudo cat /root/.sealos/default/etc/kubeadm-init.yaml | grep ${local_ip} | |
verify-run-docker-buildimage: | |
needs: [download-sealos] | |
runs-on: ubuntu-latest | |
steps: | |
- name: Download sealos | |
uses: actions/download-artifact@v3 | |
with: | |
name: sealos | |
path: /tmp/ | |
- name: Verify sealos | |
run: | | |
sudo chmod a+x /tmp/sealos | |
sudo mv /tmp/sealos /usr/bin/ | |
sudo sealos version | |
- name: Remove containerd && docker | |
uses: labring/[email protected] | |
with: | |
type: prune | |
- name: build new image | |
run: | | |
mkdir -p /tmp/buildimage | |
cat > /tmp/buildimage/kubeadm.yml <<EOF | |
apiVersion: kubeadm.k8s.io/v1beta2 | |
kind: ClusterConfiguration | |
networking: | |
serviceSubnet: "100.55.0.0/16" | |
EOF | |
cat > /tmp/buildimage/Kubefile <<EOF | |
FROM labring/kubernetes-docker:v1.25.0 | |
COPY kubeadm.yml etc/ | |
EOF | |
sudo sealos build --debug -t hack:dev /tmp/buildimage | |
- name: Auto install k8s using sealos | |
run: | | |
sudo sealos run hack:dev --single --debug | |
mkdir -p "$HOME/.kube" | |
sudo cp -i /etc/kubernetes/admin.conf "$HOME/.kube/config" | |
sudo chown "$(whoami)" "$HOME/.kube/config" | |
kubectl get svc | |
kubectl get pod -A | |
sudo cat /root/.sealos/default/etc/kubeadm-init.yaml | |
sudo cat /root/.sealos/default/Clusterfile | |
- name: Verify Cluster Status | |
run: | | |
echo "Verify Cluster" | |
echo "Current system info" | |
sudo /var/lib/sealos/data/default/rootfs/opt/sealctl cri socket | |
sudo /var/lib/sealos/data/default/rootfs/opt/sealctl cri cgroup-driver --short | |
echo "Current Cluster info" | |
set -e | |
sudo cat /root/.sealos/default/etc/kubeadm-init.yaml | grep /var/run/cri-dockerd.sock | |
sudo cat /root/.sealos/default/etc/kubeadm-init.yaml | grep systemd | |
sudo cat /root/.sealos/default/etc/kubeadm-init.yaml | grep 100.64.0.0/10 | |
sudo cat /root/.sealos/default/etc/kubeadm-init.yaml | grep 100.55.0.0/16 | |
verify-run-containerd-apply: | |
needs: [download-sealos] | |
runs-on: ubuntu-latest | |
steps: | |
- name: Download sealos | |
uses: actions/download-artifact@v3 | |
with: | |
name: sealos | |
path: /tmp/ | |
- name: Verify sealos | |
run: | | |
sudo chmod a+x /tmp/sealos | |
sudo mv /tmp/sealos /usr/bin/ | |
sudo sealos version | |
- name: Remove containerd && docker | |
uses: labring/[email protected] | |
with: | |
type: prune | |
- name: Generator clusterfile | |
run: | | |
local_ip=`ip addr | grep inet | grep -v inet6 | grep -v docker |grep -v host | awk '{print $2}' | awk -F '/' '{print $1}'` | |
echo "local ip is : ${local_ip}" | |
mkdir -p /tmp/apply | |
cat > /tmp/apply/Clusterfile <<EOF | |
apiVersion: apps.sealos.io/v1beta1 | |
kind: Cluster | |
metadata: | |
name: default | |
spec: | |
hosts: | |
- ips: | |
- ${local_ip}:22 | |
roles: | |
- master | |
- amd64 | |
image: | |
- labring/kubernetes:v1.25.0 | |
ssh: | |
pk: /root/.ssh/id_rsa | |
port: 22 | |
user: root | |
--- | |
apiVersion: kubeadm.k8s.io/v1beta2 | |
kind: ClusterConfiguration | |
networking: | |
serviceSubnet: "100.55.0.0/16" | |
apiServer: | |
certSANs: | |
- 192.168.72.100 | |
EOF | |
cat /tmp/apply/Clusterfile | |
- name: Auto install k8s using sealos | |
run: | | |
sudo sealos apply -f /tmp/apply/Clusterfile --debug | |
mkdir -p "$HOME/.kube" | |
sudo cp -i /etc/kubernetes/admin.conf "$HOME/.kube/config" | |
sudo chown "$(whoami)" "$HOME/.kube/config" | |
kubectl get svc | |
kubectl get pod -A | |
sudo cat /root/.sealos/default/etc/kubeadm-init.yaml | |
sudo cat /root/.sealos/default/Clusterfile | |
- name: Verify Cluster Status | |
run: | | |
local_ip=`ip addr | grep inet | grep -v inet6 | grep -v docker |grep -v host | awk '{print $2}' | awk -F '/' '{print $1}'` | |
echo "Verify Cluster" | |
echo "Current system info" | |
sudo /var/lib/sealos/data/default/rootfs/opt/sealctl cri socket | |
sudo /var/lib/sealos/data/default/rootfs/opt/sealctl cri cgroup-driver --short | |
echo "Current Cluster info" | |
set -e | |
sudo cat /root/.sealos/default/etc/kubeadm-init.yaml | grep /run/containerd/containerd.sock | |
sudo cat /root/.sealos/default/etc/kubeadm-init.yaml | grep systemd | |
sudo cat /root/.sealos/default/etc/kubeadm-init.yaml | grep 100.64.0.0/10 | |
sudo cat /root/.sealos/default/etc/kubeadm-init.yaml | grep 100.55.0.0/16 | |
sudo cat /root/.sealos/default/etc/kubeadm-init.yaml | grep 127.0.0.1 | |
sudo cat /root/.sealos/default/etc/kubeadm-init.yaml | grep apiserver.cluster.local | |
sudo cat /root/.sealos/default/etc/kubeadm-init.yaml | grep 10.103.97.2 | |
sudo cat /root/.sealos/default/etc/kubeadm-init.yaml | grep ${local_ip} | |
sudo cat /root/.sealos/default/etc/kubeadm-init.yaml | grep 192.168.72.100 | |
verify-run-docker-apply: | |
needs: [download-sealos] | |
runs-on: ubuntu-latest | |
steps: | |
- name: Download sealos | |
uses: actions/download-artifact@v3 | |
with: | |
name: sealos | |
path: /tmp/ | |
- name: Verify sealos | |
run: | | |
sudo chmod a+x /tmp/sealos | |
sudo mv /tmp/sealos /usr/bin/ | |
sudo sealos version | |
- name: Remove containerd && docker | |
uses: labring/[email protected] | |
with: | |
type: prune | |
- name: Generator clusterfile | |
run: | | |
local_ip=`ip addr | grep inet | grep -v inet6 | grep -v docker |grep -v host | awk '{print $2}' | awk -F '/' '{print $1}'` | |
echo "local ip is : ${local_ip}" | |
mkdir -p /tmp/apply | |
cat > /tmp/apply/Clusterfile <<EOF | |
apiVersion: apps.sealos.io/v1beta1 | |
kind: Cluster | |
metadata: | |
name: default | |
spec: | |
hosts: | |
- ips: | |
- ${local_ip}:22 | |
roles: | |
- master | |
- amd64 | |
image: | |
- labring/kubernetes-docker:v1.25.0 | |
ssh: | |
pk: /root/.ssh/id_rsa | |
port: 22 | |
user: root | |
--- | |
apiVersion: kubeadm.k8s.io/v1beta2 | |
kind: ClusterConfiguration | |
networking: | |
serviceSubnet: "100.55.0.0/16" | |
EOF | |
cat /tmp/apply/Clusterfile | |
- name: Auto install k8s using sealos | |
run: | | |
sudo sealos apply -f /tmp/apply/Clusterfile --debug | |
mkdir -p "$HOME/.kube" | |
sudo cp -i /etc/kubernetes/admin.conf "$HOME/.kube/config" | |
sudo chown "$(whoami)" "$HOME/.kube/config" | |
kubectl get svc | |
kubectl get pod -A | |
sudo cat /root/.sealos/default/etc/kubeadm-init.yaml | |
sudo cat /root/.sealos/default/Clusterfile | |
- name: Verify Cluster Status | |
run: | | |
echo "Verify Cluster" | |
echo "Current system info" | |
sudo /var/lib/sealos/data/default/rootfs/opt/sealctl cri socket | |
sudo /var/lib/sealos/data/default/rootfs/opt/sealctl cri cgroup-driver --short | |
echo "Current Cluster info" | |
set -e | |
sudo cat /root/.sealos/default/etc/kubeadm-init.yaml | grep /var/run/cri-dockerd.sock | |
sudo cat /root/.sealos/default/etc/kubeadm-init.yaml | grep systemd | |
sudo cat /root/.sealos/default/etc/kubeadm-init.yaml | grep 100.64.0.0/10 | |
sudo cat /root/.sealos/default/etc/kubeadm-init.yaml | grep 100.55.0.0/16 | |
verify-run-containerd-apply-with-external-etcd: | |
needs: [download-sealos] | |
runs-on: ubuntu-latest | |
steps: | |
- name: Download sealos | |
uses: actions/download-artifact@v3 | |
with: | |
name: sealos | |
path: /tmp/ | |
- name: Verify sealos | |
run: | | |
sudo chmod a+x /tmp/sealos | |
sudo mv /tmp/sealos /usr/bin/ | |
sudo sealos version | |
- name: Remove containerd && docker | |
uses: labring/[email protected] | |
with: | |
type: prune | |
- name: Start a local ETCD server | |
run: | | |
ETCD_VER=v3.4.24 | |
GITHUB_URL=https://github.com/etcd-io/etcd/releases/download | |
DOWNLOAD_URL=${GITHUB_URL} | |
rm -f /tmp/etcd-${ETCD_VER}-linux-amd64.tar.gz | |
rm -rf /tmp/etcd-download-test && mkdir -p /tmp/etcd-download-test | |
echo "Download ETCD binary" | |
curl -L ${DOWNLOAD_URL}/${ETCD_VER}/etcd-${ETCD_VER}-linux-amd64.tar.gz -o /tmp/etcd-${ETCD_VER}-linux-amd64.tar.gz | |
tar xzvf /tmp/etcd-${ETCD_VER}-linux-amd64.tar.gz -C /tmp/etcd-download-test --strip-components=1 | |
rm -f /tmp/etcd-${ETCD_VER}-linux-amd64.tar.gz | |
echo "ETCD info" | |
/tmp/etcd-download-test/etcd --version | |
/tmp/etcd-download-test/etcdctl version | |
echo "Start a local ETCD server" | |
ALLOW_NONE_AUTHENTICATION=yes | |
nohup /tmp/etcd-download-test/etcd --listen-client-urls http://0.0.0.0:2379 \ | |
--advertise-client-urls http://0.0.0.0:2379 > output.file 2>&1 & | |
- name: Generator clusterfile | |
run: | | |
local_ip=`ip addr | grep inet | grep -Ev 'inet6|docker|host|br-' | awk '{print $2}' | awk -F '/' '{print $1}'` | |
echo "local ip is : ${local_ip}" | |
mkdir -p /tmp/apply | |
cat > /tmp/apply/Clusterfile <<EOF | |
apiVersion: apps.sealos.io/v1beta1 | |
kind: Cluster | |
metadata: | |
name: default | |
spec: | |
hosts: | |
- ips: | |
- ${local_ip}:22 | |
roles: | |
- master | |
- amd64 | |
image: | |
- labring/kubernetes:v1.25.0 | |
ssh: | |
pk: /root/.ssh/id_rsa | |
port: 22 | |
user: root | |
--- | |
apiVersion: kubeadm.k8s.io/v1beta3 | |
kind: ClusterConfiguration | |
networking: | |
serviceSubnet: "100.55.0.0/16" | |
etcd: | |
external: | |
endpoints: | |
- http://127.0.0.1:2379 | |
EOF | |
cat /tmp/apply/Clusterfile | |
- name: Auto install k8s using sealos | |
run: | | |
sudo sealos apply -f /tmp/apply/Clusterfile --debug | |
mkdir -p "$HOME/.kube" | |
sudo cp -i /etc/kubernetes/admin.conf "$HOME/.kube/config" | |
sudo chown "$(whoami)" "$HOME/.kube/config" | |
kubectl get svc | |
kubectl get pod -A | |
sudo cat /root/.sealos/default/etc/kubeadm-init.yaml | |
sudo cat /root/.sealos/default/Clusterfile | |
- name: Verify Cluster Status | |
run: | | |
echo "Verify Cluster" | |
echo "Current system info" | |
sudo /var/lib/sealos/data/default/rootfs/opt/sealctl cri socket | |
sudo /var/lib/sealos/data/default/rootfs/opt/sealctl cri cgroup-driver --short | |
echo "Current Cluster info" | |
set -e | |
sudo cat /root/.sealos/default/etc/kubeadm-init.yaml | grep /run/containerd/containerd.sock | |
sudo cat /root/.sealos/default/etc/kubeadm-init.yaml | grep systemd | |
sudo cat /root/.sealos/default/etc/kubeadm-init.yaml | grep 100.64.0.0/10 | |
sudo cat /root/.sealos/default/etc/kubeadm-init.yaml | grep 100.55.0.0/16 | |
sudo cat /root/.sealos/default/etc/kubeadm-init.yaml | grep http://127.0.0.1:2379 | |
verify-run-containerd-buildimage-apply: | |
needs: [download-sealos] | |
runs-on: ubuntu-latest | |
steps: | |
- name: Download sealos | |
uses: actions/download-artifact@v3 | |
with: | |
name: sealos | |
path: /tmp/ | |
- name: Verify sealos | |
run: | | |
sudo chmod a+x /tmp/sealos | |
sudo mv /tmp/sealos /usr/bin/ | |
sudo sealos version | |
- name: Remove containerd && docker | |
uses: labring/[email protected] | |
with: | |
type: prune | |
- name: build new image | |
run: | | |
mkdir -p /tmp/buildimage | |
cat > /tmp/buildimage/kubeadm.yml <<EOF | |
apiVersion: kubeadm.k8s.io/v1beta2 | |
kind: ClusterConfiguration | |
networking: | |
serviceSubnet: "100.55.0.0/16" | |
podSubnet: "10.160.0.0/12" | |
EOF | |
cat > /tmp/buildimage/Kubefile <<EOF | |
FROM labring/kubernetes:v1.25.0 | |
COPY kubeadm.yml etc/ | |
EOF | |
sudo sealos build --debug -t hack:dev /tmp/buildimage | |
- name: Generator clusterfile | |
run: | | |
local_ip=`ip addr | grep inet | grep -v inet6 | grep -v docker |grep -v host | awk '{print $2}' | awk -F '/' '{print $1}'` | |
echo "local ip is : ${local_ip}" | |
mkdir -p /tmp/apply | |
cat > /tmp/apply/Clusterfile <<EOF | |
apiVersion: apps.sealos.io/v1beta1 | |
kind: Cluster | |
metadata: | |
name: default | |
spec: | |
hosts: | |
- ips: | |
- ${local_ip}:22 | |
roles: | |
- master | |
- amd64 | |
image: | |
- hack:dev | |
ssh: | |
pk: /root/.ssh/id_rsa | |
port: 22 | |
user: root | |
--- | |
apiVersion: kubeadm.k8s.io/v1beta2 | |
kind: ClusterConfiguration | |
networking: | |
serviceSubnet: "100.56.0.0/16" | |
EOF | |
cat /tmp/apply/Clusterfile | |
- name: Auto install k8s using sealos | |
run: | | |
sudo sealos apply -f /tmp/apply/Clusterfile --debug | |
mkdir -p "$HOME/.kube" | |
sudo cp -i /etc/kubernetes/admin.conf "$HOME/.kube/config" | |
sudo chown "$(whoami)" "$HOME/.kube/config" | |
kubectl get svc | |
kubectl get pod -A | |
sudo cat /root/.sealos/default/etc/kubeadm-init.yaml | |
sudo cat /root/.sealos/default/Clusterfile | |
- name: Verify Cluster Status | |
run: | | |
echo "Verify Cluster" | |
echo "Current system info" | |
sudo /var/lib/sealos/data/default/rootfs/opt/sealctl cri socket | |
sudo /var/lib/sealos/data/default/rootfs/opt/sealctl cri cgroup-driver --short | |
echo "Current Cluster info" | |
set -e | |
sudo cat /root/.sealos/default/etc/kubeadm-init.yaml | grep /run/containerd/containerd.sock | |
sudo cat /root/.sealos/default/etc/kubeadm-init.yaml | grep systemd | |
sudo cat /root/.sealos/default/etc/kubeadm-init.yaml | grep 10.160.0.0/12 | |
sudo cat /root/.sealos/default/etc/kubeadm-init.yaml | grep 100.56.0.0/16 | |
verify-run-docker-buildimage-apply: | |
needs: [download-sealos] | |
runs-on: ubuntu-latest | |
steps: | |
- name: Download sealos | |
uses: actions/download-artifact@v3 | |
with: | |
name: sealos | |
path: /tmp/ | |
- name: Verify sealos | |
run: | | |
sudo chmod a+x /tmp/sealos | |
sudo mv /tmp/sealos /usr/bin/ | |
sudo sealos version | |
- name: Remove containerd && docker | |
uses: labring/[email protected] | |
with: | |
type: prune | |
- name: build new image | |
run: | | |
mkdir -p /tmp/buildimage | |
cat > /tmp/buildimage/kubeadm.yml <<EOF | |
apiVersion: kubeadm.k8s.io/v1beta2 | |
kind: ClusterConfiguration | |
networking: | |
serviceSubnet: "100.55.0.0/16" | |
podSubnet: "10.160.0.0/12" | |
EOF | |
cat > /tmp/buildimage/Kubefile <<EOF | |
FROM labring/kubernetes-docker:v1.25.0 | |
COPY kubeadm.yml etc/ | |
EOF | |
sudo sealos build --debug -t hack:dev /tmp/buildimage | |
- name: Generator clusterfile | |
run: | | |
local_ip=`ip addr | grep inet | grep -v inet6 | grep -v docker |grep -v host | awk '{print $2}' | awk -F '/' '{print $1}'` | |
echo "local ip is : ${local_ip}" | |
mkdir -p /tmp/apply | |
cat > /tmp/apply/Clusterfile <<EOF | |
apiVersion: apps.sealos.io/v1beta1 | |
kind: Cluster | |
metadata: | |
name: default | |
spec: | |
hosts: | |
- ips: | |
- ${local_ip}:22 | |
roles: | |
- master | |
- amd64 | |
image: | |
- hack:dev | |
ssh: | |
pk: /root/.ssh/id_rsa | |
port: 22 | |
user: root | |
--- | |
apiVersion: kubeadm.k8s.io/v1beta2 | |
kind: ClusterConfiguration | |
networking: | |
serviceSubnet: "100.56.0.0/16" | |
EOF | |
cat /tmp/apply/Clusterfile | |
- name: Auto install k8s using sealos | |
run: | | |
sudo sealos apply -f /tmp/apply/Clusterfile --debug | |
mkdir -p "$HOME/.kube" | |
sudo cp -i /etc/kubernetes/admin.conf "$HOME/.kube/config" | |
sudo chown "$(whoami)" "$HOME/.kube/config" | |
kubectl get svc | |
kubectl get pod -A | |
sudo cat /root/.sealos/default/etc/kubeadm-init.yaml | |
sudo cat /root/.sealos/default/Clusterfile | |
- name: Verify Cluster Status | |
run: | | |
echo "Verify Cluster" | |
echo "Current system info" | |
sudo /var/lib/sealos/data/default/rootfs/opt/sealctl cri socket | |
sudo /var/lib/sealos/data/default/rootfs/opt/sealctl cri cgroup-driver --short | |
echo "Current Cluster info" | |
set -e | |
sudo cat /root/.sealos/default/etc/kubeadm-init.yaml | grep /var/run/cri-dockerd.sock | |
sudo cat /root/.sealos/default/etc/kubeadm-init.yaml | grep systemd | |
sudo cat /root/.sealos/default/etc/kubeadm-init.yaml | grep 10.160.0.0/12 | |
sudo cat /root/.sealos/default/etc/kubeadm-init.yaml | grep 100.56.0.0/16 | |
verify-run-by-loadtar: | |
needs: [ download-sealos ] | |
runs-on: ubuntu-latest | |
steps: | |
- name: Download sealos | |
uses: actions/download-artifact@v3 | |
with: | |
name: sealos | |
path: /tmp/ | |
- name: Verify sealos | |
run: | | |
sudo chmod a+x /tmp/sealos | |
sudo mv /tmp/sealos /usr/bin/ | |
sudo sealos version | |
- name: Remove containerd && docker | |
uses: labring/[email protected] | |
with: | |
type: prune | |
- name: Run | |
run: | | |
sudo sealos pull docker.io/labring/helm:v3.8.2 | |
sudo sealos pull labring/kubernetes:v1.25.0 | |
echo "save helm using docker and oci" | |
sudo buildah push labring/helm:v3.8.2 oci-archive:$PWD/oci-helm.tar | |
sudo sealos run labring/kubernetes:v1.25.0 --single --debug | |
sudo sealos run $PWD/oci-helm.tar | |
verify-run-by-shortname: | |
needs: [download-sealos] | |
runs-on: ubuntu-latest | |
steps: | |
- name: Download sealos | |
uses: actions/download-artifact@v3 | |
with: | |
name: sealos | |
path: /tmp/ | |
- name: Verify sealos | |
run: | | |
sudo chmod a+x /tmp/sealos | |
sudo mv /tmp/sealos /usr/bin/ | |
sudo sealos version | |
- name: Remove containerd && docker | |
uses: labring/[email protected] | |
with: | |
type: prune | |
- name: Run | |
run: | | |
sudo sealos pull labring/kubernetes:v1.25.0 | |
sudo sealos tag labring/kubernetes:v1.25.0 k8s:dev | |
sudo sealos run k8s:dev labring/helm:v3.8.2 labring/calico:v3.24.1 --single --debug | |
verify-run-by-load-shortname: | |
needs: [download-sealos] | |
runs-on: ubuntu-latest | |
steps: | |
- name: Download sealos | |
uses: actions/download-artifact@v3 | |
with: | |
name: sealos | |
path: /tmp/ | |
- name: Verify sealos | |
run: | | |
sudo chmod a+x /tmp/sealos | |
sudo mv /tmp/sealos /usr/bin/ | |
sudo sealos version | |
- name: Remove containerd && docker | |
uses: labring/[email protected] | |
with: | |
type: prune | |
- name: Run | |
run: | | |
sudo sealos pull labring/kubernetes:v1.25.0 | |
sudo sealos tag labring/kubernetes:v1.25.0 k8s:dev | |
sudo sealos save -o k8s.tar k8s:dev | |
sudo sealos rmi labring/kubernetes:v1.25.0 | |
sudo sealos rmi k8s:dev | |
sudo sealos load -i k8s.tar | |
sudo sealos run k8s:dev labring/helm:v3.8.2 labring/calico:v3.24.1 --single --debug | |
verify-run-by-newimage: | |
needs: [ download-sealos ] | |
runs-on: ubuntu-latest | |
steps: | |
- name: Download sealos | |
uses: actions/download-artifact@v3 | |
with: | |
name: sealos | |
path: /tmp/ | |
- name: Download image | |
uses: actions/download-artifact@v3 | |
with: | |
name: patch-amd64.tar | |
path: /tmp/ | |
- name: Verify sealos | |
run: | | |
sudo mv /tmp/sealos /usr/bin/ | |
sudo chmod a+x /usr/bin/sealos | |
sudo sealos version | |
- name: Remove containerd && docker | |
uses: labring/[email protected] | |
with: | |
type: prune | |
- name: Run | |
run: | | |
sudo sealos run ghcr.io/labring-actions/dev-merge-containerd-k8s:1.23.17-amd64 /tmp/patch-amd64.tar labring/helm:v3.8.2 labring/calico:v3.24.1 --single --debug | |
sudo crictl images | |
verify-run-containerd-apply-with-external-taint: | |
needs: [download-sealos] | |
runs-on: ubuntu-latest | |
steps: | |
- name: Download sealos | |
uses: actions/download-artifact@v3 | |
with: | |
name: sealos | |
path: /tmp/ | |
- name: Verify sealos | |
run: | | |
sudo chmod a+x /tmp/sealos | |
sudo mv /tmp/sealos /usr/bin/ | |
sudo sealos version | |
- name: Remove containerd && docker | |
uses: labring/[email protected] | |
with: | |
type: prune | |
- name: Generator clusterfile | |
run: | | |
local_ip=`ip addr | grep inet | grep -Ev 'inet6|docker|host|br-' | awk '{print $2}' | awk -F '/' '{print $1}'` | |
echo "local ip is : ${local_ip}" | |
mkdir -p /tmp/apply | |
cat > /tmp/apply/Clusterfile <<EOF | |
apiVersion: apps.sealos.io/v1beta1 | |
kind: Cluster | |
metadata: | |
name: default | |
spec: | |
hosts: | |
- ips: | |
- ${local_ip}:22 | |
roles: | |
- master | |
- amd64 | |
image: | |
- labring/kubernetes:v1.25.0 | |
ssh: | |
pk: /root/.ssh/id_rsa | |
port: 22 | |
user: root | |
--- | |
apiVersion: kubeadm.k8s.io/v1beta3 | |
kind: ClusterConfiguration | |
networking: | |
serviceSubnet: "100.55.0.0/16" | |
--- | |
NodeRegistration: | |
Taints: | |
- effect: NoSchedule | |
key: kubeadmNode | |
value: theValue | |
apiVersion: kubeadm.k8s.io/v1beta3 | |
kind: InitConfiguration | |
EOF | |
cat /tmp/apply/Clusterfile | |
- name: Auto install k8s using sealos | |
run: | | |
sudo sealos apply -f /tmp/apply/Clusterfile --debug | |
mkdir -p "$HOME/.kube" | |
sudo cp -i /etc/kubernetes/admin.conf "$HOME/.kube/config" | |
sudo chown "$(whoami)" "$HOME/.kube/config" | |
kubectl get svc | |
kubectl get pod -A | |
sudo cat /root/.sealos/default/etc/kubeadm-init.yaml | |
sudo cat /root/.sealos/default/Clusterfile | |
- name: Verify Cluster Status | |
run: | | |
echo "Verify Cluster" | |
echo "Current system info" | |
sudo /var/lib/sealos/data/default/rootfs/opt/sealctl cri socket | |
sudo /var/lib/sealos/data/default/rootfs/opt/sealctl cri cgroup-driver --short | |
echo "Check Node Taints" | |
taints=$(kubectl get nodes -o json | jq ".items[].spec.taints") | |
echo "$taints" | |
if ! echo "$taints" | grep -q "kubeadmNode"; then | |
printf "should have kubeadmNode Taint\n" && false | |
fi | |
set -e | |
sudo cat /root/.sealos/default/etc/kubeadm-init.yaml | grep /run/containerd/containerd.sock | |
sudo cat /root/.sealos/default/etc/kubeadm-init.yaml | grep systemd | |
sudo cat /root/.sealos/default/etc/kubeadm-init.yaml | grep 100.64.0.0/10 | |
sudo cat /root/.sealos/default/etc/kubeadm-init.yaml | grep 100.55.0.0/16 |