cv-latex/.woodpecker/build-deploy.yaml
Louis d3ac079b96
All checks were successful
ci/woodpecker/push/age-check Pipeline was successful
ci/woodpecker/push/build-deploy Pipeline was successful
Removing orphan
2025-09-30 14:32:06 +02:00

69 lines
2.3 KiB
YAML

variables:
# https://hub.docker.com/r/alpine/git/tags
- &GIT_VERSION "alpine/git:v2.30.1"
steps:
- name: build_tex
image: registry.gitlab.com/islandoftex/images/texlive:latest
commands:
- pdflatex --shell-escape cv.tex
- pdflatex --shell-escape cv.tex # Exécuter deux fois pour gérer les références croisées
- cat cv.log
when:
- path:
include: ["*.tex", ".woodpecker/*.yaml", ".woodpecker/*.yml"]
event: [push, pull_request, manual, cron]
- name: deploy
image: *GIT_VERSION
commands:
- mkdir -p ~/.ssh
- chmod 700 ~/.ssh
# Create the SSH key file
- echo "$SSH_KEY" > ~/.ssh/id_ed25519
- chmod 600 ~/.ssh/id_ed25519
- ssh-keyscan -t ed25519 -p 2220 git.polarolouis.fr >> ~/.ssh/known_hosts
- chmod 644 ~/.ssh/known_hosts
# Set the GIT_SSH_COMMAND to use the SSH key
- export GIT_SSH_COMMAND="ssh -i ~/.ssh/id_ed25519 -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no"
# Clone the repository via SSH inside a new directory
- git clone "${CI_REPO_CLONE_SSH_URL}" repo
# Set the displayed user with the commits that are about to be made
- git config --global user.email "${CI_COMMIT_AUTHOR_EMAIL:-CI_COMMIT_AUTHOR_EMAIL}"
- git config --global user.name "${CI_COMMIT_AUTHOR:-CI Bot}"
# Go to the repository directory
- cd repo
- pwd
- ls
# Crée une branche orpheline (vierge, sans historique ni fichiers)
- git checkout "$PDF_BRANCH"
- git reset --hard
# Move the generated PDF to the repository directory
- mv ../cv.pdf ./
# Add all generated files to Git
- git add -f cv.pdf
- git status
- |-
# Show the status of files that are about to be created, updated or deleted
git status
# Commit all changes
git commit -m "Built pdf for ${CI_COMMIT_SHA:0:8} [CI SKIP]"
# Update the repository and make sure to skip the pipeline create for this commit
git push origin "$PDF_BRANCH" -o ci.skip
environment:
SSH_KEY:
from_secret: SSH-KEY
PDF_BRANCH: "pdf"
when:
- path:
include: ["*.tex", ".woodpecker/*.yaml", ".woodpecker/*.yml"]
event: [push, pull_request, manual, cron]