From 53f2a85d77e4e2aa827dae5eb2c7830b38c2477d Mon Sep 17 00:00:00 2001 From: Jan Janssen Date: Thu, 3 Apr 2025 17:35:27 +0200 Subject: [PATCH 1/2] Merge Workflows in one Pipeline --- .github/workflows/nfdi.yml | 39 -------------- .github/workflows/pipeline.yml | 92 ++++++++++++++++++++++++++++++++++ .github/workflows/qe.yml | 38 -------------- .github/workflows/simple.yml | 33 ------------ 4 files changed, 92 insertions(+), 110 deletions(-) delete mode 100644 .github/workflows/nfdi.yml create mode 100644 .github/workflows/pipeline.yml delete mode 100644 .github/workflows/qe.yml delete mode 100644 .github/workflows/simple.yml diff --git a/.github/workflows/nfdi.yml b/.github/workflows/nfdi.yml deleted file mode 100644 index c160766..0000000 --- a/.github/workflows/nfdi.yml +++ /dev/null @@ -1,39 +0,0 @@ -name: NFDI4Ing - -on: - push: - branches: [ main ] - pull_request: - -jobs: - build: - runs-on: ubuntu-22.04 - steps: - - uses: actions/checkout@v4 - - uses: conda-incubator/setup-miniconda@v3 - with: - auto-update-conda: true - python-version: "3.12" - environment-file: environment.yml - auto-activate-base: false - - name: Installation and setup - shell: bash -l {0} - run: | - pip install -e qe_xml_parser - pip install -e python_workflow_definition - conda install -c conda-forge jupyter papermill - verdi presto --profile-name pwd - sudo apt-get install -y $(cat apt.txt) - - name: Create Additional Conda Environments - shell: bash -l {0} - run: | - conda env create -n preprocessing -f source/envs/preprocessing.yaml -y - conda env create -n processing -f source/envs/processing.yaml -y - conda env create -n postprocessing -f source/envs/postprocessing.yaml -y - - name: Tests - shell: bash -l {0} - run: | - papermill aiida_nfdi.ipynb aiida_nfdi_out.ipynb -k "python3" - papermill jobflow_nfdi.ipynb jobflow_nfdi_out.ipynb -k "python3" - papermill pyiron_base_nfdi.ipynb pyiron_base_nfdi_out.ipynb -k "python3" - papermill universal_workflow_nfdi.ipynb universal_workflow_nfdi_out.ipynb -k "python3" diff --git a/.github/workflows/pipeline.yml b/.github/workflows/pipeline.yml new file mode 100644 index 0000000..48a3b98 --- /dev/null +++ b/.github/workflows/pipeline.yml @@ -0,0 +1,92 @@ +name: Pipeline + +on: + push: + branches: [ main ] + pull_request: + +jobs: + nfdi4ing: + runs-on: ubuntu-22.04 + steps: + - uses: actions/checkout@v4 + - uses: conda-incubator/setup-miniconda@v3 + with: + auto-update-conda: true + python-version: "3.12" + environment-file: environment.yml + auto-activate-base: false + - name: Installation and setup + shell: bash -l {0} + run: | + pip install -e qe_xml_parser + pip install -e python_workflow_definition + conda install -c conda-forge jupyter papermill + verdi presto --profile-name pwd + sudo apt-get install -y $(cat apt.txt) + - name: Create Additional Conda Environments + shell: bash -l {0} + run: | + conda env create -n preprocessing -f source/envs/preprocessing.yaml -y + conda env create -n processing -f source/envs/processing.yaml -y + conda env create -n postprocessing -f source/envs/postprocessing.yaml -y + - name: Tests + shell: bash -l {0} + run: | + papermill aiida_nfdi.ipynb aiida_nfdi_out.ipynb -k "python3" + papermill jobflow_nfdi.ipynb jobflow_nfdi_out.ipynb -k "python3" + papermill pyiron_base_nfdi.ipynb pyiron_base_nfdi_out.ipynb -k "python3" + papermill universal_workflow_nfdi.ipynb universal_workflow_nfdi_out.ipynb -k "python3" + + quantumespresso: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + - name: Setup environment + shell: bash -l {0} + run: tail --lines=+4 environment_qe.yml >> environment.yml + - uses: conda-incubator/setup-miniconda@v3 + with: + auto-update-conda: true + python-version: "3.12" + environment-file: environment.yml + auto-activate-base: false + - name: Installation and setup + shell: bash -l {0} + run: | + pip install -e qe_xml_parser + pip install -e python_workflow_definition + conda install -c conda-forge jupyter papermill + verdi presto --profile-name pwd + - name: Tests + shell: bash -l {0} + run: | + export ESPRESSO_PSEUDO=$(pwd)/espresso/pseudo + papermill aiida_qe.ipynb aiida_qe_out.ipynb -k "python3" + papermill jobflow_qe.ipynb jobflow_qe_out.ipynb -k "python3" + papermill pyiron_base_qe.ipynb pyiron_base_qe_out.ipynb -k "python3" + papermill universal_workflow_qe.ipynb universal_workflow_qe_out.ipynb -k "python3" + + simple: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + - uses: conda-incubator/setup-miniconda@v3 + with: + auto-update-conda: true + python-version: "3.12" + environment-file: environment.yml + auto-activate-base: false + - name: Installation and setup + shell: bash -l {0} + run: | + pip install -e python_workflow_definition + conda install -c conda-forge jupyter papermill + verdi presto --profile-name pwd + - name: Tests + shell: bash -l {0} + run: | + papermill aiida_simple.ipynb aiida_simple_out.ipynb -k "python3" + papermill jobflow_simple.ipynb jobflow_simple_out.ipynb -k "python3" + papermill pyiron_base_simple.ipynb pyiron_base_simple_out.ipynb -k "python3" + papermill universal_workflow_simple.ipynb universal_workflow_simple_out.ipynb -k "python3" \ No newline at end of file diff --git a/.github/workflows/qe.yml b/.github/workflows/qe.yml deleted file mode 100644 index 4ab4cb2..0000000 --- a/.github/workflows/qe.yml +++ /dev/null @@ -1,38 +0,0 @@ -name: quantum espresso - -on: - push: - branches: [ main ] - pull_request: - -jobs: - build: - - runs-on: ubuntu-latest - - steps: - - uses: actions/checkout@v4 - - name: Setup environment - shell: bash -l {0} - run: tail --lines=+4 environment_qe.yml >> environment.yml - - uses: conda-incubator/setup-miniconda@v3 - with: - auto-update-conda: true - python-version: "3.12" - environment-file: environment.yml - auto-activate-base: false - - name: Installation and setup - shell: bash -l {0} - run: | - pip install -e qe_xml_parser - pip install -e python_workflow_definition - conda install -c conda-forge jupyter papermill - verdi presto --profile-name pwd - - name: Tests - shell: bash -l {0} - run: | - export ESPRESSO_PSEUDO=$(pwd)/espresso/pseudo - papermill aiida_qe.ipynb aiida_qe_out.ipynb -k "python3" - papermill jobflow_qe.ipynb jobflow_qe_out.ipynb -k "python3" - papermill pyiron_base_qe.ipynb pyiron_base_qe_out.ipynb -k "python3" - papermill universal_workflow_qe.ipynb universal_workflow_qe_out.ipynb -k "python3" diff --git a/.github/workflows/simple.yml b/.github/workflows/simple.yml deleted file mode 100644 index 027141d..0000000 --- a/.github/workflows/simple.yml +++ /dev/null @@ -1,33 +0,0 @@ -name: simple - -on: - push: - branches: [ main ] - pull_request: - -jobs: - build: - - runs-on: ubuntu-latest - - steps: - - uses: actions/checkout@v4 - - uses: conda-incubator/setup-miniconda@v3 - with: - auto-update-conda: true - python-version: "3.12" - environment-file: environment.yml - auto-activate-base: false - - name: Installation and setup - shell: bash -l {0} - run: | - pip install -e python_workflow_definition - conda install -c conda-forge jupyter papermill - verdi presto --profile-name pwd - - name: Tests - shell: bash -l {0} - run: | - papermill aiida_simple.ipynb aiida_simple_out.ipynb -k "python3" - papermill jobflow_simple.ipynb jobflow_simple_out.ipynb -k "python3" - papermill pyiron_base_simple.ipynb pyiron_base_simple_out.ipynb -k "python3" - papermill universal_workflow_simple.ipynb universal_workflow_simple_out.ipynb -k "python3" \ No newline at end of file From 04ad86ad9515c58b752067440ded9eebbb85d4c5 Mon Sep 17 00:00:00 2001 From: Jan Janssen Date: Thu, 3 Apr 2025 17:36:45 +0200 Subject: [PATCH 2/2] Add link on readme --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index f711bc0..cde527d 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,5 @@ # Python Workflow Definition +[![Pipeline](https://github.com/pyiron-dev/python-workflow-definition/actions/workflows/pipeline.yml/badge.svg)](https://github.com/pyiron-dev/python-workflow-definition/actions/workflows/pipeline.yml) [![Binder](https://mybinder.org/badge_logo.svg)](https://mybinder.org/v2/gh/pyiron-dev/python-workflow-definition/HEAD) ## Definition