44 lines
1.1 KiB
YAML
44 lines
1.1 KiB
YAML
name: Build Caesar Decipher
|
|
|
|
on:
|
|
push:
|
|
branches:
|
|
- master
|
|
pull_request:
|
|
branches:
|
|
- main
|
|
|
|
jobs:
|
|
build:
|
|
runs-on: ubuntu-22.04
|
|
|
|
steps:
|
|
# Récupère le code source du dépôt
|
|
- name: Checkout code
|
|
uses: actions/checkout@v4
|
|
|
|
# Installe les outils de compilation nécessaires
|
|
- name: Install dependencies
|
|
run: |
|
|
apt-get update
|
|
apt-get install -y cmake gcc make
|
|
|
|
# Crée un dossier build séparé — bonne pratique CMake
|
|
# pour ne pas polluer les sources avec les fichiers générés
|
|
- name: Configure CMake
|
|
run: cmake -B build -DCMAKE_BUILD_TYPE=Release
|
|
|
|
# Compile le projet dans le dossier build
|
|
- name: Build
|
|
run: cmake --build build --config Release
|
|
|
|
# Publie le binaire compilé comme artifact téléchargeable
|
|
# directement depuis l'interface Gitea
|
|
- name: Upload artifact
|
|
uses: actions/upload-artifact@v3
|
|
with:
|
|
name: Cesar-linux-x86_64
|
|
path: build/Cesar
|
|
# Conserve l'artifact pendant 30 jours
|
|
retention-days: 30
|