From 3ca554b941954a5c63df17d5127bfe04f9a8b628 Mon Sep 17 00:00:00 2001 From: Theo Satabin Date: Tue, 14 Mar 2023 09:33:48 +0100 Subject: [PATCH 1/3] Gestion de la latest par redirection MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit + Déclenchement manuel du déploiement de la documentation --- .github/workflows/build-and-release.yaml | 1 + .github/workflows/build-docs.yaml | 67 ++++++++++++++++++++++++ CHANGELOG.md | 23 ++------ 3 files changed, 72 insertions(+), 19 deletions(-) create mode 100644 .github/workflows/build-docs.yaml diff --git a/.github/workflows/build-and-release.yaml b/.github/workflows/build-and-release.yaml index beafb2e..f260d79 100644 --- a/.github/workflows/build-and-release.yaml +++ b/.github/workflows/build-and-release.yaml @@ -193,6 +193,7 @@ jobs: echo "# Versions" >docs/versions.md echo "" >>docs/versions.md for v in `ls -t docs/versions`; do sed "s#__version__#$v#" templates/versions.template.md >>docs/versions.md; done + sed "s#__version__#${{ github.ref_name }}#" templates/latest.template.html >docs/versions/latest/index.html rm -r artifact - name: Publish on gh-pages branch diff --git a/.github/workflows/build-docs.yaml b/.github/workflows/build-docs.yaml new file mode 100644 index 0000000..459496b --- /dev/null +++ b/.github/workflows/build-docs.yaml @@ -0,0 +1,67 @@ +name: Build doc site with mkdocs and deploy + +on: + workflow_dispatch: + +jobs: + + build: + + name: Build doc site with mkdocs + + runs-on: ubuntu-latest + + steps: + - name: Checkout project + uses: actions/checkout@v3 + with: + ref: 'gh-pages' + token: ${{ secrets.GITHUB_TOKEN }} + + - name: Setup python + uses: actions/setup-python@v4 + with: + python-version: "3.10" + cache: 'pip' + + - name: Install Mkdocs + run: pip install -r requirements.txt + + - name: Run mkdocs and archive + run : | + mkdocs build + tar \ + --dereference --hard-dereference \ + --directory "site" \ + -cvf "${{ runner.temp }}/site.tar" \ + --exclude=.git \ + --exclude=.github \ + . + + - name: Upload pages + uses: actions/upload-artifact@main + with: + name: github-pages + path: ${{ runner.temp }}/site.tar + retention-days: 1 + + deploy: + + name: Deploy site to github pages + + needs: build + + permissions: + pages: write # to deploy to Pages + id-token: write # to verify the deployment originates from an appropriate source + + # Deploy to the github-pages environment + environment: + name: github-pages + url: ${{ steps.deployment.outputs.page_url }} + + runs-on: ubuntu-latest + steps: + - name: Deploy to GitHub Pages + id: deployment + uses: actions/deploy-pages@v1 diff --git a/CHANGELOG.md b/CHANGELOG.md index 5a62581..d59c8d6 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,29 +1,14 @@ ## Summary -Ajout de fonctionnalités de lecture de donnée d'une pyramide et suivi des recommandations PyPA pour la gestion du projet. -## Changelog - -### [Added] -* TileMatrix : - * Fonction de calcul des indices de tuile et de pixel dans la tuile à partir d'un point dans le système de coordonnées du TMS -* Pyramid : - * Fonction de calcul des indices de tuile et de pixel dans la tuile à partir d'un point dans le système de coordonnées du TMS et éventuellement un niveau - * Fonctions de lecture d'une tuile : au format binaire source ou au format tableau à 3 dimensions pour les tuiles raster -* Storage : - * Fonction de lecture binaire, complète ou partielle, d'un fichier ou objet S3 ou CEPH -* Exceptions : NotImplementedError permet de préciser qu'une fonctionnalité n'a pas été implémentée pour tous les cas. Ici, on ne gère pas la décompression des données raster pour les compressions packbit et LZW - -* Ajout de la publication PyPI dans la CI GitHub +## Changelog ### [Changed] -* Storage : - * La lecture sous forme de chaîne s'appuie sur la lecture complète binaire. Aucun changement à l'usage. -* TileMatrixSet : quelque soit le système de coordonnées, on ne gère que un ordre des axes X,Y ou Lon,Lat. Cependant, les fonctions de calcul de ou à partir de bbox respectent l'ordre du système dans ces dernières. - -* Passage de la configuration du projet dans le fichier `pyproject.toml` +* Documentation : + * version latest gérée par redirection + * déploiement de la documentation par déclenchement manuel