Vibecoded CI/CD
Some checks failed
Build and Deploy Lean / build (push) Failing after 16m44s
Build and Deploy Nuxt / build (push) Failing after 48s

This commit is contained in:
2026-10-06 00:23:17 +02:00
parent a57770619e
commit e2c2c66d7f
79 changed files with 6044 additions and 47 deletions

View File

@@ -0,0 +1,53 @@
name: Build and Deploy Lean
on:
push:
branches: [master]
# This pipeline owns the lean editor image: heavy (it builds lean4web
# with Mathlib), so it runs only when lean/** actually changes
paths:
- "lean/**"
workflow_dispatch:
jobs:
build:
runs-on: docker
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Install SSH client
run: |
apt-get update -y && apt-get install -y openssh-client
- name: Setup SSH inside container
run: |
mkdir -p ~/.ssh
echo "${{ secrets.DEPLOY_KEY }}" > ~/.ssh/id_ed25519
chmod 600 ~/.ssh/id_ed25519
# Add the container host to known_hosts
ssh-keyscan -H ${{ secrets.DEPLOY_HOST }} >> ~/.ssh/known_hosts
- name: Log in to registry
run: |
echo "${{ secrets.REGISTRY_PASSWORD }}" | docker login git.aranroig.com -u "${{ secrets.REGISTRY_USER }}" --password-stdin
# Multi-stage: compilers/dev deps stay in the builder, the pushed image
# is the slim runtime (toolchain + client + Mathlib cache). Still a
# heavy build and a multi-GB push — expect it to take a while.
# Pin upstream with: docker build --build-arg LEAN4WEB_REF=v0.2.2 ...
- name: Build lean editor server
run: |
docker build -t git.aranroig.com/${{ secrets.REGISTRY_USER }}/mathew-lean:latest ./lean
docker push git.aranroig.com/${{ secrets.REGISTRY_USER }}/mathew-lean:latest
- name: Deploy
run: |
ssh deploy@${{ secrets.DEPLOY_HOST }} << 'EOF'
echo "${{ secrets.REGISTRY_PASSWORD }}" | docker login git.aranroig.com -u "${{ secrets.REGISTRY_USER }}" --password-stdin
cd /var/www/app/
docker compose pull lean
docker compose up -d lean
EOF

View File

@@ -3,6 +3,10 @@ name: Build and Deploy Nuxt
on:
push:
branches: [master]
# The Lean editor carries Mathlib and moves on its own schedule — its
# image is built and pushed by deploy-lean.yml, only when lean/** changes
paths-ignore:
- "lean/**"
jobs:
build:
@@ -39,16 +43,13 @@ jobs:
docker build -t git.aranroig.com/${{ secrets.REGISTRY_USER }}/mathew-backend:latest ./backend
docker push git.aranroig.com/${{ secrets.REGISTRY_USER }}/mathew-backend:latest
- name: Build lean backend
run: |
docker build -t git.aranroig.com/${{ secrets.REGISTRY_USER }}/mathew-lean:latest ./lean
docker push git.aranroig.com/${{ secrets.REGISTRY_USER }}/mathew-lean:latest
- name: Copy files
run: |
scp docker-compose.yml deploy@${{ secrets.DEPLOY_HOST }}:/var/www/app/
scp nginx.conf deploy@${{ secrets.DEPLOY_HOST }}:/var/www/app/nginx.conf
# `compose pull` also pulls the lean image from the registry —
# deploy-lean.yml is what keeps that tag current
- name: Deploy
run: |
ssh deploy@${{ secrets.DEPLOY_HOST }} << 'EOF'
@@ -57,4 +58,3 @@ jobs:
docker compose pull
docker compose up -d --remove-orphans
EOF