Actualiser .gitea/workflows/deploy-verso.yml
Build and Deploy Verso / deploy (push) Has been cancelled

This commit is contained in:
2026-05-30 12:01:00 +00:00
parent 016da98027
commit 070d0c1352
+70 -11
View File
@@ -10,6 +10,7 @@ env:
REPO_URL: https://git.alocoq.fr/alois/verso.git REPO_URL: https://git.alocoq.fr/alois/verso.git
BASE_IMAGE: registry.alocoq.fr/verso-base:latest BASE_IMAGE: registry.alocoq.fr/verso-base:latest
IMAGE: registry.alocoq.fr/verso:latest IMAGE: registry.alocoq.fr/verso:latest
SITE_URL: https://verso.example.com
jobs: jobs:
deploy: deploy:
@@ -19,7 +20,7 @@ jobs:
steps: steps:
- name: Build and push Verso images with BuildKit - name: Build and push Verso images with BuildKit
run: | run: |
kubectl -n ci delete job verso-buildkit --ignore-not-found=true kubectl -n ci delete job verso-buildkit --ignore-not-found=true --wait=true
cat <<'EOF' | kubectl apply -f - cat <<'EOF' | kubectl apply -f -
apiVersion: batch/v1 apiVersion: batch/v1
@@ -32,7 +33,6 @@ jobs:
template: template:
spec: spec:
restartPolicy: Never restartPolicy: Never
initContainers: initContainers:
- name: prepare - name: prepare
image: alpine/git:latest image: alpine/git:latest
@@ -71,7 +71,6 @@ jobs:
--opt filename=Dockerfile \ --opt filename=Dockerfile \
--opt build-arg:OVERLEAF_BASE_TAG=registry.alocoq.fr/verso-base:latest \ --opt build-arg:OVERLEAF_BASE_TAG=registry.alocoq.fr/verso-base:latest \
--output type=image,name=registry.alocoq.fr/verso:latest,push=true --output type=image,name=registry.alocoq.fr/verso:latest,push=true
volumeMounts: volumeMounts:
- name: workspace - name: workspace
mountPath: /workspace mountPath: /workspace
@@ -85,7 +84,7 @@ jobs:
run: | run: |
kubectl -n ci wait --for=condition=complete job/verso-buildkit --timeout=10800s kubectl -n ci wait --for=condition=complete job/verso-buildkit --timeout=10800s
- name: Show logs - name: Show build logs
if: always() if: always()
run: | run: |
kubectl -n ci logs job/verso-buildkit -c prepare || true kubectl -n ci logs job/verso-buildkit -c prepare || true
@@ -93,8 +92,8 @@ jobs:
- name: Recreate test dependencies - name: Recreate test dependencies
run: | run: |
kubectl -n test delete deployment mongo redis --ignore-not-found=true kubectl -n test delete deployment mongo redis --ignore-not-found=true --wait=true
kubectl -n test delete service mongo redis --ignore-not-found=true kubectl -n test delete service mongo redis --ignore-not-found=true --wait=true
cat <<'EOF' | kubectl apply -f - cat <<'EOF' | kubectl apply -f -
apiVersion: apps/v1 apiVersion: apps/v1
@@ -183,8 +182,8 @@ jobs:
targetPort: 6379 targetPort: 6379
EOF EOF
kubectl -n test rollout status deployment/mongo kubectl -n test rollout status deployment/mongo --timeout=180s
kubectl -n test rollout status deployment/redis kubectl -n test rollout status deployment/redis --timeout=180s
sleep 5 sleep 5
@@ -204,16 +203,76 @@ jobs:
print("Mongo replica set is PRIMARY") print("Mongo replica set is PRIMARY")
' '
- name: Deploy - name: Ensure Verso deployment exists
run: |
cat <<'EOF' | kubectl apply -f -
apiVersion: apps/v1
kind: Deployment
metadata:
name: verso
namespace: test
spec:
replicas: 1
selector:
matchLabels:
app: verso
template:
metadata:
labels:
app: verso
spec:
containers:
- name: verso
image: registry.alocoq.fr/verso:latest
ports:
- containerPort: 80
env:
- name: OVERLEAF_MONGO_URL
value: mongodb://mongo:27017/sharelatex?replicaSet=rs0
- name: OVERLEAF_REDIS_HOST
value: redis
- name: REDIS_HOST
value: redis
- name: OVERLEAF_APP_NAME
value: Verso
- name: OVERLEAF_SITE_URL
value: https://verso.example.com
- name: SHARELATEX_SITE_URL
value: https://verso.example.com
---
apiVersion: v1
kind: Service
metadata:
name: verso
namespace: test
spec:
selector:
app: verso
ports:
- name: http
port: 80
targetPort: 80
EOF
- name: Deploy Verso image
run: | run: |
kubectl -n test set image deployment/verso \ kubectl -n test set image deployment/verso \
verso=registry.alocoq.fr/verso:latest verso=registry.alocoq.fr/verso:latest
kubectl -n test set env deployment/verso \
OVERLEAF_MONGO_URL='mongodb://mongo:27017/sharelatex?replicaSet=rs0' \
OVERLEAF_REDIS_HOST='redis' \
REDIS_HOST='redis' \
OVERLEAF_APP_NAME='Verso' \
OVERLEAF_SITE_URL='https://verso.example.com' \
SHARELATEX_SITE_URL='https://verso.example.com'
kubectl -n test rollout restart deployment/verso kubectl -n test rollout restart deployment/verso
kubectl -n test rollout status deployment/verso kubectl -n test rollout status deployment/verso --timeout=300s
- name: Create admin user - name: Create admin user
run: | run: |
sleep 20
kubectl -n test exec deploy/verso -- bash -lc ' kubectl -n test exec deploy/verso -- bash -lc '
cd /overleaf/services/web cd /overleaf/services/web
node modules/server-ce-scripts/scripts/create-user \ node modules/server-ce-scripts/scripts/create-user \
@@ -224,4 +283,4 @@ jobs:
- name: Cleanup - name: Cleanup
if: always() if: always()
run: | run: |
kubectl -n ci delete job verso-buildkit --ignore-not-found=true kubectl -n ci delete job verso-buildkit --ignore-not-found=true --wait=true