#!/bin/bash # Deploy tori to OCI k3s cluster # Run from local machine: scripts/deploy.sh set -euo pipefail OCI_HOST="oci" OCI_DIR="~/src/tori" IMAGE="registry.oci.euphon.net/tori:latest" echo "==> Syncing project to OCI..." rsync -az --exclude target --exclude node_modules --exclude .git --exclude web/dist . "${OCI_HOST}:${OCI_DIR}/" echo "==> Building Rust binary on OCI..." ssh "$OCI_HOST" "source ~/.cargo/env && cd $OCI_DIR && \ cargo build --release --target aarch64-unknown-linux-musl" echo "==> Building and deploying on OCI..." ssh "$OCI_HOST" "cd $OCI_DIR && \ docker build -t $IMAGE . && \ docker push $IMAGE && \ kubectl apply -f deploy/ && \ kubectl rollout restart deployment/tori -n tori && \ kubectl rollout status deployment/tori -n tori" echo "==> Done!"