Update index.md #27
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: Generate and serve API data for EESSI | |
| on: | |
| push: | |
| branches: | |
| - main | |
| schedule: | |
| - cron: "0 0 * * *" # runs once every 24 hours at 00:00 UTC | |
| permissions: | |
| contents: read | |
| pages: write | |
| id-token: write | |
| jobs: | |
| deploy: | |
| environment: | |
| name: github-pages | |
| url: ${{ steps.deployment.outputs.page_url }} | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/configure-pages@v5 | |
| - uses: actions/checkout@v5 | |
| - uses: eessi/github-action-eessi@v3 | |
| with: | |
| use_eessi_module: true | |
| eessi_stack_version: "2025.06" | |
| - name: Create a virtualenv to install zensical | |
| run: | | |
| python -m venv /tmp/venv_docs | |
| source /tmp/venv_docs/bin/activate | |
| pip install zensical | |
| - name: Generate API data | |
| run: | | |
| echo "Generating data files..." | |
| module purge | |
| module unuse $MODULEPATH | |
| module use /cvmfs/software.eessi.io/init/modules/ | |
| # First do 2023.06 for EB 4 | |
| ( module load EESSI/2023.06 && module load EasyBuild/4 && module load EESSI-extend && python scripts/generate_data_files.py --eessi-version=2023.06 ) & | |
| # then 2023.06 for EB 5 | |
| ( module load EESSI/2023.06 && module load EasyBuild/5 && module load EESSI-extend && python scripts/generate_data_files.py --eessi-version=2023.06 ) & | |
| # then 2025.06 for EB 5 (does not have EB4) | |
| ( module load EESSI/2025.06 && module load EasyBuild/5 && module load EESSI-extend && python scripts/generate_data_files.py --eessi-version=2025.06 ) & | |
| # Merge all these results together | |
| wait | |
| python scripts/merge_data_files.py out.yaml eessi*.yaml | |
| mv out.yaml docs/data/eessi_software_metadata.yaml | |
| # Generate json data files and markdown index/description for them | |
| cd docs/data | |
| python ../../scripts/process_eessi_software_metadata.py eessi_software_metadata.yaml eessi_api_metadata | |
| python ../../scripts/calculate_hashes.py | |
| for json_file in *.json; do | |
| python ../../scripts/generate_schema_md.py $json_file >> index.md | |
| done | |
| - run: | | |
| source /tmp/venv_docs/bin/activate | |
| zensical build --clean | |
| - uses: actions/upload-pages-artifact@v4 | |
| with: | |
| path: site | |
| - uses: actions/deploy-pages@v4 |