1
0
mirror of https://github.com/rancher/os.git synced 2025-09-12 13:17:17 +00:00

Add operator

This commit is contained in:
Darren Shepherd
2021-10-20 10:58:54 -07:00
parent 0e46d19194
commit 5675644d9f
60 changed files with 5387 additions and 60 deletions

View File

@@ -0,0 +1,36 @@
#!/bin/bash
set -x -e
source /usr/lib/rancheros-release
manifest() {
cat << EOF
kind: ManagedOSImage
apiVersion: rancheros.cattle.io/v1
metadata:
name: default-os-image
namespace: fleet-local
spec:
osImage: "${IMAGE}"
clusterTargets:
- clusterName: local
EOF
}
PULL_POLICY=IfNotPresent
if [ "$IMAGE_TAG" = dev ]; then
PULL_POLICY=Always
fi
helm upgrade \
--install \
--create-namespace \
-n cattle-rancheros-operator-system \
--set image.repository=${IMAGE_REPO} \
--set image.tag=${IMAGE_TAG} \
--set image.imagePullPolicy=${PULL_POLICY} \
rancheros-operator /usr/share/rancher/os/rancheros-operator-chart.tgz
while ! manifest | kubectl apply -f -; do
sleep 15
done

View File

@@ -0,0 +1,15 @@
#!/bin/bash
set -e
. /usr/lib/rancheros-release
IMAGE=$(echo "$IMAGE" | sed 's![/:]!-!g')
for i in rke2 k3s; do
mkdir -p /etc/rancher/$i/config.yaml.d
cat > /etc/rancher/$i/config.yaml.d/99-rancheros-labels.yaml << EOF
node-label+:
- rancheros.cattle.io/image=${IMAGE}
- rancheros.cattle.io/tag=${IMAGE_TAG}
- plan.upgrade.cattle.io/os-upgrader=${IMAGE}
EOF
done

View File

@@ -1,12 +1,12 @@
#!/bin/bash
set -x -e
HOST_DIR="${HOST_DIR:-/host}"
RELEASE_FILE="${RELEASE_FILE:-/etc/os-release}"
RELEASE_FILE="${RELEASE_FILE:-/usr/lib/rancheros-release}"
if [ "$FORCE" != "true" ]; then
if diff $RELEASE_FILE ${HOST_DIR}${RELEASE_FILE} >/dev/null; then
echo Update to date with
cat /etc/os-release
cat ${RELEASE_FILE}
exit 0
fi
fi