Skip to content

Create README.md

Create README.md #21

Workflow file for this run

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