Skip to content

Commit df29c59

Browse files
authored
Merge pull request #349 from pyiron/rebuild
Fix conda update bug - always include all requirements by merging the environment files
2 parents b341995 + 4d14948 commit df29c59

File tree

8 files changed

+102
-61
lines changed

8 files changed

+102
-61
lines changed

.github/workflows/push.yml

Lines changed: 36 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ jobs:
88
build:
99
runs-on: ubuntu-latest
1010
steps:
11-
- uses: actions/checkout@v2
11+
- uses: actions/checkout@v4
1212
- name: Get current date
1313
id: date
1414
run: echo "date=$(date +%F)" >> $GITHUB_OUTPUT
@@ -20,20 +20,40 @@ jobs:
2020
message: ""
2121
- name: Login to DockerHub Registry
2222
run: echo ${{ secrets.DOCKERHUB_PASSWORD }} | docker login -u ${{ secrets.DOCKERHUB_USERNAME }} --password-stdin
23-
- run: docker build -t pyiron/base:latest base/
24-
- run: docker tag pyiron/base:latest pyiron/base:"$(date +%F)"
25-
- run: docker build -t pyiron/md:latest md/
26-
- run: docker tag pyiron/md:latest pyiron/md:"$(date +%F)"
27-
- run: docker build -t pyiron/pyiron:latest pyiron/
28-
- run: docker tag pyiron/pyiron:latest pyiron/pyiron:"$(date +%F)"
29-
- run: docker build -t pyiron/potentialworkshop:latest potentialworkshop/
30-
- run: docker tag pyiron/potentialworkshop:latest pyiron/potentialworkshop:"$(date +%F)"
31-
- run: docker build -t pyiron/experimental:latest experimental/
32-
- run: docker tag pyiron/experimental:latest pyiron/experimental:"$(date +%F)"
33-
- run: docker build -t pyiron/continuum:latest continuum/
34-
- run: docker tag pyiron/continuum:latest pyiron/continuum:"$(date +%F)"
35-
- run: docker build -t pyiron/mpie_cmti:latest mpie_cmti/
36-
- run: docker tag pyiron/mpie_cmti:latest pyiron/mpie_cmti:"$(date +%F)"
23+
- name: Build pyiron/base
24+
run: |
25+
docker build -t pyiron/base:latest base/
26+
docker tag pyiron/base:latest pyiron/base:"$(date +%F)"
27+
- name: Build pyiron/md
28+
run: |
29+
tail --lines=+4 base/environment.yml >> md/environment.yml
30+
docker build -t pyiron/md:latest md/
31+
docker tag pyiron/md:latest pyiron/md:"$(date +%F)"
32+
- name: Build pyiron/continuum
33+
run: |
34+
docker build -t pyiron/continuum:latest continuum/
35+
docker tag pyiron/continuum:latest pyiron/continuum:"$(date +%F)"
36+
- name: Build pyiron/pyiron
37+
run: |
38+
tail --lines=+4 md/environment.yml >> pyiron/environment.yml
39+
docker build -t pyiron/pyiron:latest pyiron/
40+
docker tag pyiron/pyiron:latest pyiron/pyiron:"$(date +%F)"
41+
- name: Build pyiron/potentialworkshop
42+
run: |
43+
tail --lines=+4 pyiron/environment.yml >> potentialworkshop/environment.yml
44+
docker build -t pyiron/potentialworkshop:latest potentialworkshop/
45+
docker tag pyiron/potentialworkshop:latest pyiron/potentialworkshop:"$(date +%F)"
46+
- name: Build pyiron/experimental
47+
run: |
48+
tail --lines=+4 base/environment.yml >> experimental/environment.yml
49+
docker build -t pyiron/experimental:latest experimental/
50+
docker tag pyiron/experimental:latest pyiron/experimental:"$(date +%F)"
51+
- name: Build pyiron/mpie_cmti
52+
run: |
53+
tail --lines=+4 pyiron/environment.yml >> mpie_cmti/environment.yml
54+
docker build -t pyiron/mpie_cmti:latest mpie_cmti/
55+
docker tag pyiron/mpie_cmti:latest pyiron/mpie_cmti:"$(date +%F)"
56+
# Publish
3757
- run: docker images
3858
- run: docker push pyiron/base:latest
3959
- run: docker push pyiron/base:"$(date +%F)"
@@ -49,6 +69,7 @@ jobs:
4969
- run: docker push pyiron/continuum:"$(date +%F)"
5070
- run: docker push pyiron/mpie_cmti:latest
5171
- run: docker push pyiron/mpie_cmti:"$(date +%F)"
72+
# Export Environments
5273
- run: mkdir -p environment; chmod 777 environment
5374
- run: docker run -v $(pwd)/environment:/home/jovyan/ --rm pyiron/base /bin/bash -c 'source /opt/conda/bin/activate; conda env export > /home/jovyan/pyiron_base_$(date +%F).yml;'
5475
- run: docker run -v $(pwd)/environment:/home/jovyan/ --rm pyiron/md /bin/bash -c 'source /opt/conda/bin/activate; conda env export > /home/jovyan/pyiron_md_$(date +%F).yml;'

.github/workflows/testing.yml

Lines changed: 36 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -8,26 +8,47 @@ jobs:
88
build:
99
runs-on: ubuntu-latest
1010
steps:
11-
- uses: actions/checkout@v2
12-
- run: docker build -t pyiron/base:latest base/
13-
- run: docker tag pyiron/base:latest pyiron/base:"$(date +%F)"
14-
- run: docker build -t pyiron/md:latest md/
15-
- run: docker tag pyiron/md:latest pyiron/md:"$(date +%F)"
16-
- run: docker build -t pyiron/continuum:latest continuum/
17-
- run: docker tag pyiron/continuum:latest pyiron/continuum:"$(date +%F)"
18-
- run: docker build -t pyiron/pyiron:latest pyiron/
19-
- run: docker tag pyiron/pyiron:latest pyiron/pyiron:"$(date +%F)"
20-
- run: docker build -t pyiron/potentialworkshop:latest potentialworkshop/
21-
- run: docker tag pyiron/potentialworkshop:latest pyiron/potentialworkshop:"$(date +%F)"
22-
- run: docker build -t pyiron/experimental:latest experimental/
23-
- run: docker tag pyiron/experimental:latest pyiron/experimental:"$(date +%F)"
24-
- run: docker build -t pyiron/mpie_cmti:latest mpie_cmti/
25-
- run: docker tag pyiron/mpie_cmti:latest pyiron/mpie_cmti:"$(date +%F)"
11+
- uses: actions/checkout@v4
12+
- name: Build pyiron/base
13+
run: |
14+
docker build -t pyiron/base:latest base/
15+
docker tag pyiron/base:latest pyiron/base:"$(date +%F)"
16+
- name: Build pyiron/md
17+
run: |
18+
tail --lines=+4 base/environment.yml >> md/environment.yml
19+
docker build -t pyiron/md:latest md/
20+
docker tag pyiron/md:latest pyiron/md:"$(date +%F)"
21+
- name: Build pyiron/continuum
22+
run: |
23+
docker build -t pyiron/continuum:latest continuum/
24+
docker tag pyiron/continuum:latest pyiron/continuum:"$(date +%F)"
25+
- name: Build pyiron/pyiron
26+
run: |
27+
tail --lines=+4 md/environment.yml >> pyiron/environment.yml
28+
docker build -t pyiron/pyiron:latest pyiron/
29+
docker tag pyiron/pyiron:latest pyiron/pyiron:"$(date +%F)"
30+
- name: Build pyiron/potentialworkshop
31+
run: |
32+
tail --lines=+4 pyiron/environment.yml >> potentialworkshop/environment.yml
33+
docker build -t pyiron/potentialworkshop:latest potentialworkshop/
34+
docker tag pyiron/potentialworkshop:latest pyiron/potentialworkshop:"$(date +%F)"
35+
- name: Build pyiron/experimental
36+
run: |
37+
tail --lines=+4 base/environment.yml >> experimental/environment.yml
38+
docker build -t pyiron/experimental:latest experimental/
39+
docker tag pyiron/experimental:latest pyiron/experimental:"$(date +%F)"
40+
- name: Build pyiron/mpie_cmti
41+
run: |
42+
tail --lines=+4 pyiron/environment.yml >> mpie_cmti/environment.yml
43+
docker build -t pyiron/mpie_cmti:latest mpie_cmti/
44+
docker tag pyiron/mpie_cmti:latest pyiron/mpie_cmti:"$(date +%F)"
45+
# Testing
2646
- run: docker images
2747
- run: docker run --rm pyiron/continuum /bin/bash -c 'source /opt/conda/bin/activate; i=0; for f in $(ls "${HOME}"/notebooks_*/*.ipynb); do jupyter nbconvert --ExecutePreprocessor.timeout=9999999 --ExecutePreprocessor.kernel_name=python3 --to notebook --execute $f || i=$((i+1)); done; if [ $i -gt 0 ]; then exit 1; fi;'
2848
- run: docker run --rm pyiron/base /bin/bash -c 'source /opt/conda/bin/activate; i=0; for f in $(ls "${HOME}"/notebooks_*/*.ipynb); do jupyter nbconvert --ExecutePreprocessor.timeout=9999999 --ExecutePreprocessor.kernel_name=python3 --to notebook --execute $f || i=$((i+1)); done; if [ $i -gt 0 ]; then exit 1; fi;'
2949
- run: docker run --rm pyiron/pyiron /bin/bash -c 'source /opt/conda/bin/activate; i=0; for f in $(ls "${HOME}"/notebooks_*/*.ipynb); do jupyter nbconvert --ExecutePreprocessor.timeout=9999999 --ExecutePreprocessor.kernel_name=python3 --to notebook --execute $f || i=$((i+1)); done; if [ $i -gt 0 ]; then exit 1; fi;'
3050
- run: docker run --rm pyiron/experimental /bin/bash -c 'source /opt/conda/bin/activate; i=0; for f in $(ls "${HOME}"/notebooks_*/*.ipynb); do jupyter nbconvert --ExecutePreprocessor.timeout=9999999 --ExecutePreprocessor.kernel_name=python3 --to notebook --execute $f || i=$((i+1)); done; if [ $i -gt 0 ]; then exit 1; fi;'
51+
# Export Environments
3152
- run: mkdir -p environment; chmod 777 environment
3253
- run: docker run -v $(pwd)/environment:/home/jovyan/ --rm pyiron/base /bin/bash -c 'source /opt/conda/bin/activate; conda env export > /home/jovyan/pyiron_base_$(date +%F).yml;'
3354
- run: docker run -v $(pwd)/environment:/home/jovyan/ --rm pyiron/md /bin/bash -c 'source /opt/conda/bin/activate; conda env export > /home/jovyan/pyiron_md_$(date +%F).yml;'

base/environment.yml

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,4 @@ channels:
22
- conda-forge
33
dependencies:
44
- pyiron_base =0.9.10
5-
- git =2.42.0
6-
- openmpi =4.1.6
7-
- hdf5 =1.14.3=mpi_openmpi_*
5+
- git =2.46.0

continuum/environment.yml

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,11 +4,18 @@ dependencies:
44
- damask =3.0.0a8
55
- fenics =2019.1.0=*_42
66
- mshr =2019.1.0=*_9
7+
- pyiron =0.5.2
78
- pyiron_base =0.8.2
89
- pyiron_atomistics =0.5.3
910
- pyiron_continuum =0.0.8
1011
- pyiron_gpl =0.0.5
12+
- pyiron-data =0.0.30
1113
- pyvista =0.43.6
1214
- sqsgenerator =0.3
1315
- vtk =9.2.6
1416
- seaborn =0.13.2
17+
- nglview =3.1.2
18+
- lammps =2024.02.07=*openmpi*
19+
- openkim-models =2021.01.28
20+
- git =2.42.0
21+
- openmpi =4.1.6

md/environment.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ channels:
33
dependencies:
44
- pyiron =0.5.2
55
- pyiron_atomistics =0.6.9
6-
- pyiron-data =0.0.29
6+
- pyiron-data =0.0.30
77
- nglview =3.1.2
8-
- lammps =2023.11.21=*openmpi*
8+
- lammps =2023.08.02=*openmpi*
99
- openkim-models =2021.01.28

mpie_cmti/environment.yml

Lines changed: 12 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -1,30 +1,26 @@
11
channels:
22
- conda-forge
33
dependencies:
4-
- atomicrex =1.0.3
5-
- calphy =1.3.8
6-
- fitsnap3 =3.1.0.1
4+
- atomicrex =1.0.4
5+
- calphy =1.3.10
6+
- fitsnap3 =3.1.0.4
77
- nbgitpuller =1.2.1
8-
- pyiron_base =0.9.10
9-
- pyiron_atomistics =0.6.9
10-
- pyiron_snippets =0.1.3
11-
- pyiron_contrib =0.1.16
12-
- pyiron_potentialfit =0.3.2
8+
- pyiron_contrib =0.1.17
9+
- pyiron_potentialfit =0.3.4
1310
- pyiron_workflow =0.9.4
1411
- pyiron_gui =0.0.12
15-
- matgl =0.9.2
12+
- matgl =1.1.2
1613
- mlip =2.0
1714
- sqsgenerator =0.3
1815
- pyiron_gpl =0.0.5
1916
- python-ace =0.3.0
20-
- pytorch =2.0.0
17+
- pytorch =2.1.2
2118
- pyxtal =0.6.7
22-
- runner =1.2
19+
- runner =1.3
2320
- structdbrest =0.0.1
24-
- tensorflow =2.15.0
21+
- tensorflow =2.16.2
2522
- psycopg2 =2.9.9
26-
- netCDF4 =1.6.5
27-
- numba =0.59.0
28-
- llama-index =0.10.33
29-
- jupyter-server-proxy =4.1.2
23+
- numba =0.60.0
24+
- llama-index =0.10.59
25+
- jupyter-server-proxy =4.3.0
3026
- flux-core =0.64.0

potentialworkshop/environment.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,5 +8,5 @@ dependencies:
88
- pyiron_gpl =0.0.5
99
- nbgitpuller =1.2.1
1010
- python-ace =0.3.0
11-
- calphy =1.3.7
11+
- calphy =1.3.10
1212
- pyxtal =0.6.7

requirements.txt

Lines changed: 7 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -2,18 +2,17 @@ pyiron==0.5.2
22
pyiron_base==0.9.10
33
pyiron-atomistics==0.6.9
44
pyiron-continuum==0.0.8
5-
pyiron-contrib==0.1.16
5+
pyiron-contrib==0.1.17
66
pyiron_experimental==0.0.3
77
pyiron_workflow==0.9.4
88
pyiron-gpl==0.0.5
9-
pyiron_snippets==0.1.1
10-
pyiron_potentialfit==0.3.2
11-
calphy==1.3.8
9+
pyiron_potentialfit==0.3.4
10+
calphy==1.3.10
1211
damask==3.0.0a8
1312
fenics==2019.1.0
1413
gpaw==24.6.0
1514
hyperspy==2.1.1
16-
jupyter-server-proxy==4.1.2
15+
jupyter-server-proxy==4.3.0
1716
nbgitpuller==1.2.1
1817
nglview==3.1.2
1918
pystem==0.0.26
@@ -23,10 +22,9 @@ pyxem==0.19.1
2322
pyxtal==0.6.7
2423
scanf==1.5.2
2524
seaborn==0.13.2
26-
sqlalchemy==2.0.30
2725
structdbrest==0.0.1
2826
temmeta==0.0.6
2927
vtk==9.2.6
30-
pytorch==2.0.0
31-
tensorflow==2.15.0
32-
llama-index==0.10.33
28+
pytorch==2.1.2
29+
tensorflow==2.16.2
30+
llama-index==0.10.59

0 commit comments

Comments
 (0)