Add Google Cloud K3s infrastructure support
- Add Terraform configuration for GCP instance and storage - Add startup script for K3s installation and configuration - Add pipeline scripts for deployment and management - Add Forgejo deployment manifests and configuration
This commit is contained in:
parent
7384722305
commit
2ab7872af1
30 changed files with 1024 additions and 324 deletions
45
gcloud/tf/scripts/forgejo/install_forgejo.sh
Executable file
45
gcloud/tf/scripts/forgejo/install_forgejo.sh
Executable file
|
|
@ -0,0 +1,45 @@
|
|||
#!/bin/bash
|
||||
set -e
|
||||
|
||||
echo "Installing Forgejo"
|
||||
|
||||
# Get the directory where the script is located
|
||||
SCRIPT_DIR="$(dirname "$(readlink -f "$0")")"
|
||||
# Define namespace
|
||||
NAMESPACE="forgejo"
|
||||
MANIFESTS_DIR="${SCRIPT_DIR}/../../k3s/forgejo"
|
||||
|
||||
echo "Creating namespace..."
|
||||
if ! kubectl get namespace "${NAMESPACE}" >/dev/null 2>&1; then
|
||||
kubectl create namespace "${NAMESPACE}"
|
||||
else
|
||||
echo "Namespace '${NAMESPACE}' already exists."
|
||||
fi
|
||||
|
||||
echo "Creating PersistentVolumeClaim..."
|
||||
kubectl apply -f ${MANIFESTS_DIR}/pvc.yaml
|
||||
|
||||
|
||||
echo "Creating Service..."
|
||||
kubectl apply -f ${MANIFESTS_DIR}/service.yaml
|
||||
|
||||
|
||||
echo "Creating Deployment..."
|
||||
kubectl apply -f ${MANIFESTS_DIR}/deployment.yaml
|
||||
|
||||
|
||||
echo "Creating Certificate Issuer..."
|
||||
kubectl apply -f ${MANIFESTS_DIR}/issuer.yaml
|
||||
|
||||
|
||||
echo "Creating Ingress..."
|
||||
kubectl apply -f ${MANIFESTS_DIR}/ingress.yaml
|
||||
|
||||
|
||||
echo "Forgejo installation complete."
|
||||
echo "Verify deployment with: kubectl -n ${NAMESPACE} get pods,svc,ingress,pvc"
|
||||
|
||||
exit;
|
||||
|
||||
# Note: The ingressTCP.yaml is for a different application (galene) and should be applied separately
|
||||
# echo "Note: The ingressTCP.yaml is for the galene application and has not been applied."
|
||||
Loading…
Add table
Add a link
Reference in a new issue