No description
| Filename | Latest commit message | Latest commit date |
|---|---|---|
| .forgejo/workflows | ||
| README.md | ||
Overleaf CEP Builder
Automated build system for Overleaf Community Edition Plus (CEP) Docker images.
Overview
This repository provides automated CI/CD workflows that monitor the Kevin/overleaf-cep mirror repository and automatically build Docker images when new commits are detected.
Workflows
Poll Mirror (poll-mirror.yaml)
Runs every midnight to check for new commits in the upstream repository.
- Compares the current SHA of the
ext-cebranch inKevin/overleaf-cepagainst the last successfully built SHA - If changes are detected, triggers the build workflow automatically
- Requires no manual intervention
Build Docker (build-docker.yaml)
Builds and publishes Docker images for Overleaf CEP.
Trigger: Manually via workflow dispatch or automatically by the poll-mirror workflow
Inputs:
sha: Commit SHA from the mirror repository to build
Build Process:
- Checks out the
Kevin/overleaf-ceprepository at the specified commit SHA - Builds the base Overleaf image
- Builds the community edition image
- Tags the CE image with both
latestand date-based tags (format:YYYYMMDD) - Pushes CE image to Harbor registry
Required Configuration
Secrets
GIT_TOKEN: Authentication token for Forgejo API accessHARBOR_USER: Harbor registry usernameHARBOR_PASSWORD: Harbor registry password
Variables
GIT_URL: Base URL for the Forgejo instanceREGISTRY_URL: Base URL for the docker registrySHARELATEX_IMAGE: Full image path for ShareLaTeX (e.g.,harbor.kvbsystems.be/overleaf/sharelatex)
Built Image
This workflow produces the following Docker image:
- ShareLaTeX: Main Overleaf application server
Images are tagged with:
latest: Always points to the most recent buildYYYYMMDD: Date-stamped version for specific builds
Manual Trigger
To manually trigger a build:
curl -X POST \
-H "Authorization: Bearer $GIT_TOKEN" \
-H "Content-Type: application/json" \
-d '{"ref": "main", "inputs": {"sha": "COMMIT_SHA_HERE"}}' \
"$GIT_URL/api/v1/repos/Kevin/overleaf-cep-builder/actions/workflows/build-docker.yaml/dispatches"
Or use the Forgejo web interface to trigger the workflow with a specific commit SHA.