diff --git a/.github/workflows/docker-image.yml b/.github/workflows/docker-image.yml index a6e2f24..22cdf63 100644 --- a/.github/workflows/docker-image.yml +++ b/.github/workflows/docker-image.yml @@ -1,28 +1,23 @@ -name: Docker Image CI +name: Docker Compose Build and Run on: push: - branches: [ "main" ] + branches: [ main ] pull_request: - branches: [ "main" ] + branches: [ main ] jobs: - push_to_registries: - name: Build Docker images + compose-build-and-run: runs-on: ubuntu-latest + steps: - - name: Check out the repo - uses: actions/checkout@v4 + - uses: actions/checkout@v2 + + - name: Set up Docker Buildx + uses: docker/setup-buildx-action@v1 - - name: Set up QEMU - uses: docker/setup-qemu-action@v3 - - name: Set up Docker Buildx - uses: docker/setup-buildx-action@v3 + - name: Build and Run with Docker Compose + run: | + chmod +x docker/check/check.sh + docker-compose -f docker/check/docker-compose.yml up --build - - name: Build Docker images - uses: docker/build-push-action@v5 - with: - context: . - file: ./docker/check/Dockerfile - platforms: linux/amd64,linux/arm64 - push: false diff --git a/docker/check/Dockerfile b/docker/check/Dockerfile index 213b694..e57cb42 100644 --- a/docker/check/Dockerfile +++ b/docker/check/Dockerfile @@ -5,6 +5,7 @@ ADD . /data WORKDIR /data +RUN chmod +x check.sh # Définir le script d'entrypoint -ENTRYPOINT ["/data/web/generate.sh"] + diff --git a/docker/check/check.sh b/docker/check/check.sh new file mode 100644 index 0000000..b186c06 --- /dev/null +++ b/docker/check/check.sh @@ -0,0 +1,27 @@ +#!/bin/sh + +# Chemin du répertoire à partir duquel la recherche commence +SEARCH_DIR="." + +# Recherche de tous les fichiers .bib dans le répertoire et ses sous-répertoires +# et les traiter avec Pandoc +for bibfile in $(find . -name "*.bib"); do + echo "Traitement du fichier: $bibfile" + + pandoc "$bibfile" -s -o "output_file" --to=markdown + + # Vérifier si Pandoc a réussi + if [ $? -ne 0 ]; then + echo "Erreur lors du traitement de $bibfile" + error_occurred=1 + rm output_file + fi +done + +# Quitter avec un code d'erreur si une erreur a été rencontrée +if [ $error_occurred -ne 0 ]; then + exit 1 +fi +rm output_file +# Si tout va bien, quitter avec un code de sortie 0 +exit 0 diff --git a/docker/check/docker-compose.yaml b/docker/check/docker-compose.yaml deleted file mode 100644 index f4f4b73..0000000 --- a/docker/check/docker-compose.yaml +++ /dev/null @@ -1,7 +0,0 @@ -version: '3.3' -services: - pandoc: - build: . - volumes: - - ../../:/data - diff --git a/docker/check/docker-compose.yml b/docker/check/docker-compose.yml new file mode 100644 index 0000000..cb97b83 --- /dev/null +++ b/docker/check/docker-compose.yml @@ -0,0 +1,7 @@ +version: '3.3' +services: + pandoc: + build: . + volumes: + - ../../:/data + entrypoint: /data/docker/check/check.sh diff --git a/web/check.sh b/web/check.sh new file mode 100644 index 0000000..6bf53f1 --- /dev/null +++ b/web/check.sh @@ -0,0 +1,27 @@ +#!/bin/bash + +# Chemin du répertoire à partir duquel la recherche commence +SEARCH_DIR="." + +# Recherche de tous les fichiers .bib dans le répertoire et ses sous-répertoires +# et les traiter avec Pandoc +for bibfile in $(find . -name "*.bib"); do + echo "Traitement du fichier: $bibfile" + + pandoc "$bibfile" -s -o "output_file" --to=markdown + + # Vérifier si Pandoc a réussi + if [ $? -ne 0 ]; then + echo "Erreur lors du traitement de $bibfile" + error_occurred=1 + rm output_file + fi +done + +# Quitter avec un code d'erreur si une erreur a été rencontrée +if [ $error_occurred -ne 0 ]; then + exit 1 +fi +rm output_file +# Si tout va bien, quitter avec un code de sortie 0 +exit 0 diff --git a/web/generate.sh b/web/generate.sh deleted file mode 100644 index 12f27bf..0000000 --- a/web/generate.sh +++ /dev/null @@ -1,5 +0,0 @@ -#!/bin/bash -docs=("Juillet_2023" "Novembre_2023" "Septembre_2023") -for doc in ${docs[@]}; do - pandoc -t markdown_strict --citeproc /data/web/template.md -o ${doc}/${doc}.md --bibliography ${doc}/*.bib -done