Skip to content

nightly

nightly #1571

Workflow file for this run

name: nightly
on:
schedule:
- cron: '0 0 * * *' # Run every day at midnight
push:
paths:
- '.github/workflows/nightly.yml'
pull_request:
paths:
- '.github/workflows/nightly.yml'
env:
FORCE_COLOR: 1
jobs:
tests:
# Don't run scheduled tests on forks, but allow them on PRs
if: github.repository == 'aiidateam/aiida-quantumespresso' || github.event_name != 'schedule'
runs-on: ubuntu-latest
strategy:
matrix:
python-version: ['3.10', '3.14']
services:
postgres:
image: postgres:12
rabbitmq:
image: rabbitmq:latest
ports:
- 5672:5672
steps:
- uses: actions/checkout@v4
- name: Setup uv
uses: astral-sh/setup-uv@v6
with:
activate-environment: true
python-version: ${{ matrix.python-version }}
- name: Install Python dependencies (with aiida-core@main)
id: install
run: |
uv pip install -e .[tests] aiida-core[atomic_tools]@git+https://github.com/aiidateam/aiida-core@main
- name: Run pytest
id: tests
env:
AIIDA_WARN_v3: 1
run: pytest -sv tests
- name: Slack notification
if: always() && (steps.install.outcome == 'failure' || steps.tests.outcome == 'failure') && env.SLACK_WEBHOOK != null
uses: rtCamp/action-slack-notify@v2
env:
SLACK_WEBHOOK: ${{ secrets.SLACK_WEBHOOK }}
SLACK_ICON: https://www.materialscloud.org/discover/images/0ba0a17d.aiida-logo-128.png
SLACK_USERNAME: aiida-quantumespresso
SLACK_CHANNEL: dev-aiida-qe
SLACK_COLOR: b60205
SLACK_TITLE: "Nightly build against `aiida-core/main` failed"
SLACK_MESSAGE: "The tests fail with the current version of `aiida-core/main`."
integration:
runs-on: ubuntu-latest
strategy:
matrix:
python-version: ['3.10']
services:
postgres:
image: postgres:12
env:
POSTGRES_HOST: 127.0.0.1
POSTGRES_USER: postgres
POSTGRES_PASSWORD: postgres
POSTGRES_DB: postgres
ports:
- 5432:5432
rabbitmq:
image: rabbitmq:latest
ports:
- 5672:5672
steps:
- uses: actions/checkout@v4
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python-version }}
- name: Setup uv
uses: astral-sh/setup-uv@v6
with:
activate-environment: true
python-version: '3.10'
- name: Install system dependencies
run: sudo apt update && sudo apt install --no-install-recommends libfftw3-dev quantum-espresso
- name: Install Python dependencies
run: uv pip install -e .
- name: Create AiiDA profile
run: verdi setup -n --config .github/config/profile.yaml
- name: Setup localhost
run: verdi computer setup -n --config .github/config/localhost-setup.yaml
- name: Configure localhost
run: verdi computer configure core.local localhost -n --config .github/config/localhost-config.yaml
- name: Setup `pw.x`
run: verdi code create core.code.installed -n --config .github/config/code-pw.yaml --filepath-executable $(which pw.x)
- name: Setup `ph.x`
run: verdi code create core.code.installed -n --config .github/config/code-ph.yaml --filepath-executable $(which ph.x)
- name: Setup SSSP
run: aiida-pseudo install sssp -v 1.3 -x PBEsol -p efficiency
- name: Run test script
run: python .github/scripts/run_documentation_scripts.py