Skip to content

Commit 505fe5d

Browse files
authored
Merge pull request #18 from MiraGeoscience/GEOPY-2049
GEOPY-2049: environment for coming pre-release
2 parents e64a4fb + b5c1c0a commit 505fe5d

19 files changed

Lines changed: 1993 additions & 2702 deletions

.github/workflows/python_deploy_dev.yml

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ on:
66
- 'v*' # Push events to every version tag (eg. v1.0.0)
77

88
concurrency:
9-
group: ${{ github.workflow }}-${{ github.head_ref || github.run_id }}
9+
group: ${{ github.workflow }}-${{ github.ref || github.run_id }}
1010
cancel-in-progress: true
1111

1212
jobs:
@@ -16,20 +16,21 @@ jobs:
1616
with:
1717
package-name: 'grid-apps'
1818
python-version: '3.10'
19-
source-repo-names: '["public-conda-dev-local", "geophysics-conda-dev-local", "geology-conda-dev-local", "conda-forge-dev-remote", "conda-pytorch-dev-remote"]'
20-
publish-repo-names: '["geophysics-conda-dev", "geology-conda-dev"]'
19+
source-repo-names: '["public-noremote-conda-dev"]'
20+
conda-channels: '["conda-forge"]'
21+
publish-repo-names: '["geology-noremote-conda-dev", "geophysics-noremote-conda-dev"]'
2122
secrets:
2223
JFROG_ARTIFACTORY_URL: ${{ secrets.JFROG_ARTIFACTORY_URL }}
2324
JFROG_ARTIFACTORY_TOKEN: ${{ secrets.JFROG_ARTIFACTORY_TOKEN }}
2425
call-workflow-pypi-publish:
25-
name: Publish development pypi package on JFrog Artifactory
26+
name: Publish development pypi package (JFrog Artifactory)
2627
uses: MiraGeoscience/CI-tools/.github/workflows/reusable-python-publish_pypi_package.yml@main
2728
with:
2829
package-manager: 'poetry'
2930
package-name: 'grid-apps'
3031
version-tag: ${{ github.ref_name }}
3132
python-version: '3.10'
32-
virtual-repo-names: '["geophysics-pypi-dev", "geology-pypi-dev"]'
33+
virtual-repo-names: '["geology-pypi-dev", "geophysics-pypi-dev"]'
3334
secrets:
3435
JFROG_ARTIFACTORY_URL: ${{ secrets.JFROG_ARTIFACTORY_URL }}
3536
JFROG_ARTIFACTORY_TOKEN: ${{ secrets.JFROG_ARTIFACTORY_TOKEN }}

.github/workflows/python_deploy_prod.yml

Lines changed: 29 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -2,32 +2,46 @@ name: Deploy python package in production
22

33
on:
44
release:
5-
types: [published] # Trigger for draft release
5+
types: [published]
6+
workflow_dispatch:
7+
inputs:
8+
release-tag:
9+
description: 'Tag for the existing (draft) release to publish assets from'
10+
required: true
11+
publish-conda:
12+
description: 'Publish Conda package'
13+
required: false
14+
type: boolean
15+
default: true
16+
publish-pypi:
17+
description: 'Publish PyPI package'
18+
required: false
19+
type: boolean
20+
default: true
621

722
concurrency:
8-
group: ${{ github.workflow }}-${{ github.head_ref || github.run_id }}
23+
group: ${{ github.workflow }}-${{ github.event.release.tag_name || github.event.inputs.release-tag || github.run_id }}
924
cancel-in-progress: true
1025

1126
jobs:
12-
call-workflow-conda-publish:
13-
name: Publish production conda package on JFrog Artifactory
14-
uses: MiraGeoscience/CI-tools/.github/workflows/reusable-python-publish_conda_package.yml@main
27+
call-workflow-conda-release:
28+
name: Publish production Conda package on JFrog Artifactory
29+
uses: MiraGeoscience/CI-tools/.github/workflows/reusable-python-release_conda_assets.yml@main
30+
if: ${{ github.event_name == 'release' || github.event.inputs.publish-conda == 'true' }}
1531
with:
16-
package-name: 'grid-apps'
17-
python-version: '3.10'
18-
virtual-repo-names: '["geophysics-conda-prod", "geology-conda-prod"]'
32+
virtual-repo-names: '["geology-conda-prod", "geophysics-conda-prod"]'
33+
release-tag: ${{ github.event.release.tag_name || github.event.inputs.release-tag }}
1934
secrets:
2035
JFROG_ARTIFACTORY_URL: ${{ secrets.JFROG_ARTIFACTORY_URL }}
2136
JFROG_ARTIFACTORY_TOKEN: ${{ secrets.JFROG_ARTIFACTORY_TOKEN }}
22-
call-workflow-pypi-publish:
23-
name: Publish production pypi package on JFrog Artifactory
24-
uses: MiraGeoscience/CI-tools/.github/workflows/reusable-python-publish_pypi_package.yml@main
37+
call-workflow-pypi-release:
38+
name: Publish production PyPI package (JFrog Artifactory)
39+
if: ${{ github.event_name == 'release' || github.event.inputs.publish-pypi == 'true' }}
40+
uses: MiraGeoscience/CI-tools/.github/workflows/reusable-python-release_pypi_assets.yml@main
2541
with:
26-
package-manager: 'poetry'
2742
package-name: 'grid-apps'
28-
version-tag: ${{ github.ref_name }}
29-
python-version: '3.10'
30-
virtual-repo-names: '["geophysics-pypi-prod", "geology-pypi-prod"]'
43+
virtual-repo-names: '["geology-pypi-prod", "geophysics-pypi-prod"]'
44+
release-tag: ${{ github.event.release.tag_name || github.event.inputs.release-tag }}
3145
secrets:
3246
JFROG_ARTIFACTORY_URL: ${{ secrets.JFROG_ARTIFACTORY_URL }}
3347
JFROG_ARTIFACTORY_TOKEN: ${{ secrets.JFROG_ARTIFACTORY_TOKEN }}
Lines changed: 44 additions & 53 deletions
Original file line numberDiff line numberDiff line change
@@ -1,116 +1,107 @@
11
# Generated by conda-lock.
22
# platform: linux-64
3-
# input_hash: 46ee90b76372faf8198a3f05e3d53f8302a3db73f9e628cd9ce875fbb6d952e9
3+
# input_hash: bed4971fd5a3b9adbf1be868bda27827d72ba59e242bdc7f2398b76058f72226
44

55
channels:
66
- conda-forge
77
- nodefaults
88
dependencies:
99
- _libgcc_mutex=0.1=conda_forge
10-
- _openmp_mutex=4.5=2_kmp_llvm
10+
- _openmp_mutex=4.5=2_gnu
1111
- annotated-types=0.7.0=pyhd8ed1ab_1
12-
- astroid=3.3.8=py310hff52083_0
12+
- astroid=3.3.9=py310hff52083_0
1313
- bzip2=1.0.8=h4bc722e_7
14-
- c-ares=1.34.4=hb9d3cd8_0
14+
- c-ares=1.34.5=hb9d3cd8_0
1515
- ca-certificates=2025.1.31=hbcca054_0
1616
- cached-property=1.5.2=hd8ed1ab_1
1717
- cached_property=1.5.2=pyha770c72_1
1818
- colorama=0.4.6=pyhd8ed1ab_1
19-
- coverage=7.6.12=py310h89163eb_0
20-
- dill=0.3.9=pyhd8ed1ab_1
21-
- discretize=0.10.0=py310hcb52e73_1
19+
- coverage=7.8.0=py310h89163eb_0
20+
- dill=0.4.0=pyhd8ed1ab_0
21+
- discretize=0.11.2=py310ha2bacc8_1
2222
- exceptiongroup=1.2.2=pyhd8ed1ab_1
23-
- freetype=2.12.1=h267a509_2
23+
- freetype=2.13.3=h48d6fc4_0
2424
- h5py=3.13.0=nompi_py310h60e0fe6_100
2525
- hdf5=1.14.3=nompi_h2d575fe_109
26-
- icu=75.1=he02047a_0
2726
- iniconfig=2.0.0=pyhd8ed1ab_1
28-
- isort=6.0.0=pyhd8ed1ab_0
29-
- jinja2=3.1.5=pyhd8ed1ab_0
27+
- isort=6.0.1=pyhd8ed1ab_0
28+
- jinja2=3.1.6=pyhd8ed1ab_0
3029
- keyutils=1.6.1=h166bdaf_0
3130
- krb5=1.21.3=h659f571_0
3231
- lcms2=2.17=h717163a_0
33-
- ld_impl_linux-64=2.43=h712a8e2_2
32+
- ld_impl_linux-64=2.43=h712a8e2_4
3433
- lerc=4.0.0=h27087fc_0
3534
- libaec=1.1.3=h59595ed_0
36-
- libblas=3.9.0=30_h59b9bed_openblas
37-
- libcblas=3.9.0=30_he106b2a_openblas
38-
- libcurl=8.12.1=h332b0f4_0
35+
- libblas=3.9.0=31_h59b9bed_openblas
36+
- libcblas=3.9.0=31_he106b2a_openblas
37+
- libcurl=8.13.0=h332b0f4_0
3938
- libdeflate=1.23=h4ddbbb0_0
4039
- libedit=3.1.20250104=pl5321h7949ede_0
4140
- libev=4.33=hd590300_2
42-
- libffi=3.4.6=h2dba641_0
43-
- libgcc=14.2.0=h77fa898_1
44-
- libgcc-ng=14.2.0=h69a702a_1
45-
- libgfortran=14.2.0=h69a702a_1
46-
- libgfortran5=14.2.0=hd5240d6_1
47-
- libhwloc=2.11.2=default_h0d58e46_1001
48-
- libiconv=1.18=h4ce23a2_0
41+
- libexpat=2.7.0=h5888daf_0
42+
- libffi=3.4.6=h2dba641_1
43+
- libgcc=14.2.0=h767d61c_2
44+
- libgcc-ng=14.2.0=h69a702a_2
45+
- libgfortran=14.2.0=h69a702a_2
46+
- libgfortran5=14.2.0=hf1ad2bd_2
47+
- libgomp=14.2.0=h767d61c_2
4948
- libjpeg-turbo=3.0.0=hd590300_1
50-
- liblapack=3.9.0=30_h7ac8fdf_openblas
51-
- liblzma=5.6.4=hb9d3cd8_0
49+
- liblapack=3.9.0=31_h7ac8fdf_openblas
50+
- liblzma=5.8.1=hb9d3cd8_0
5251
- libnghttp2=1.64.0=h161d5f1_0
5352
- libnsl=2.0.1=hd590300_0
5453
- libopenblas=0.3.29=pthreads_h94d23a6_0
5554
- libpng=1.6.47=h943b412_0
56-
- libsqlite=3.49.1=hee588c1_1
55+
- libsqlite=3.49.1=hee588c1_2
5756
- libssh2=1.11.1=hf672d98_0
58-
- libstdcxx=14.2.0=hc0a3c3a_1
59-
- libstdcxx-ng=14.2.0=h4852527_1
57+
- libstdcxx=14.2.0=h8f9b012_2
58+
- libstdcxx-ng=14.2.0=h4852527_2
6059
- libtiff=4.7.0=hd9ff511_3
6160
- libuuid=2.38.1=h0b41bf4_0
6261
- libwebp-base=1.5.0=h851e524_0
6362
- libxcb=1.17.0=h8a09558_0
6463
- libxcrypt=4.4.36=hd590300_1
65-
- libxml2=2.13.6=h8d12d68_0
6664
- libzlib=1.3.1=hb9d3cd8_2
67-
- llvm-openmp=19.1.7=h024ca30_0
6865
- markupsafe=3.0.2=py310h89163eb_1
6966
- mccabe=0.7.0=pyhd8ed1ab_1
70-
- mkl=2024.2.2=ha957f24_16
7167
- ncurses=6.5=h2d0b736_3
7268
- numpy=1.26.4=py310hb13e2d6_0
7369
- openjpeg=2.5.3=h5fbd93e_0
74-
- openssl=3.4.1=h7b32b05_0
70+
- openssl=3.5.0=h7b32b05_0
7571
- packaging=24.2=pyhd8ed1ab_2
76-
- pandas=2.2.3=py310h5eaa309_1
7772
- pillow=10.3.0=py310hebfe307_1
7873
- pip=25.0.1=pyh8b19718_0
79-
- platformdirs=4.3.6=pyhd8ed1ab_1
74+
- platformdirs=4.3.7=pyh29332c3_0
8075
- pluggy=1.5.0=pyhd8ed1ab_1
8176
- pthread-stubs=0.4=hb9d3cd8_1002
82-
- pydantic=2.5.3=pyhd8ed1ab_0
83-
- pydantic-core=2.14.6=py310hcb5633a_1
77+
- pydantic=2.11.3=pyh3cfb1c2_0
78+
- pydantic-core=2.33.1=py310hc1293b2_0
8479
- pygments=2.19.1=pyhd8ed1ab_0
85-
- pylint=3.3.4=pyh29332c3_0
86-
- pytest=8.3.4=pyhd8ed1ab_1
87-
- pytest-cov=6.0.0=pyhd8ed1ab_1
88-
- python=3.10.16=he725a3c_1_cpython
89-
- python-dateutil=2.9.0.post0=pyhff2d567_1
90-
- python-tzdata=2025.1=pyhd8ed1ab_0
91-
- python_abi=3.10=5_cp310
92-
- pytz=2024.1=pyhd8ed1ab_0
80+
- pylint=3.3.6=pyh29332c3_0
81+
- pytest=8.3.5=pyhd8ed1ab_0
82+
- pytest-cov=6.1.1=pyhd8ed1ab_0
83+
- python=3.10.17=hd6af730_0_cpython
84+
- python_abi=3.10=6_cp310
9385
- pyyaml=6.0.2=py310h89163eb_2
94-
- readline=8.2=h8228510_1
86+
- readline=8.2=h8c095d6_2
9587
- scipy=1.14.1=py310hfcf56fc_2
96-
- setuptools=75.8.0=pyhff2d567_0
97-
- six=1.17.0=pyhd8ed1ab_0
98-
- tbb=2021.13.0=hceb3a55_1
88+
- setuptools=78.1.0=pyhff2d567_0
9989
- tk=8.6.13=noxft_h4845f30_101
10090
- toml=0.10.2=pyhd8ed1ab_1
10191
- tomli=2.2.1=pyhd8ed1ab_1
10292
- tomlkit=0.13.2=pyha770c72_1
103-
- typing-extensions=4.12.2=hd8ed1ab_1
104-
- typing_extensions=4.12.2=pyha770c72_1
105-
- tzdata=2025a=h78e105d_0
93+
- typing-extensions=4.13.2=h0e9735f_0
94+
- typing-inspection=0.4.0=pyhd8ed1ab_0
95+
- typing_extensions=4.13.2=pyh29332c3_0
96+
- tzdata=2025b=h78e105d_0
10697
- wheel=0.45.1=pyhd8ed1ab_1
10798
- xorg-libxau=1.0.12=hb9d3cd8_0
10899
- xorg-libxdmcp=1.1.5=hb9d3cd8_0
109100
- yaml=0.2.5=h7f98852_2
110-
- zstd=1.5.7=hb8e6e7a_0
101+
- zstd=1.5.7=hb8e6e7a_2
111102
- pip:
112-
- geoapps-utils == 0.4.0 --hash=sha256:22baa6f49c09e02ab65efd07fbab1421982f17aefc98749febf858da2b47d6ef
113-
- geoh5py == 0.10.1 --hash=sha256:6ad70a64f5d5ae25c84c1d75f8142a0b34204027041a3edaf1b036fa9e571cf2
103+
- geoapps-utils @ git+https://github.com/MiraGeoscience/geoapps-utils.git@6e21320c89581dccb1635d8460dfe296ec41b6da
104+
- geoh5py @ git+https://github.com/MiraGeoscience/geoh5py.git@4b9756b5c9e98c709a2b23e2e558edb29e5f3416
114105

115106
variables:
116107
KMP_WARNINGS: 0
Lines changed: 35 additions & 44 deletions
Original file line numberDiff line numberDiff line change
@@ -1,94 +1,85 @@
11
# Generated by conda-lock.
22
# platform: linux-64
3-
# input_hash: 46ee90b76372faf8198a3f05e3d53f8302a3db73f9e628cd9ce875fbb6d952e9
3+
# input_hash: bed4971fd5a3b9adbf1be868bda27827d72ba59e242bdc7f2398b76058f72226
44

55
channels:
66
- conda-forge
77
- nodefaults
88
dependencies:
99
- _libgcc_mutex=0.1=conda_forge
10-
- _openmp_mutex=4.5=2_kmp_llvm
10+
- _openmp_mutex=4.5=2_gnu
1111
- annotated-types=0.7.0=pyhd8ed1ab_1
1212
- bzip2=1.0.8=h4bc722e_7
13-
- c-ares=1.34.4=hb9d3cd8_0
13+
- c-ares=1.34.5=hb9d3cd8_0
1414
- ca-certificates=2025.1.31=hbcca054_0
1515
- cached-property=1.5.2=hd8ed1ab_1
1616
- cached_property=1.5.2=pyha770c72_1
17-
- discretize=0.10.0=py310hcb52e73_1
18-
- freetype=2.12.1=h267a509_2
17+
- discretize=0.11.2=py310ha2bacc8_1
18+
- freetype=2.13.3=h48d6fc4_0
1919
- h5py=3.13.0=nompi_py310h60e0fe6_100
2020
- hdf5=1.14.3=nompi_h2d575fe_109
21-
- icu=75.1=he02047a_0
2221
- keyutils=1.6.1=h166bdaf_0
2322
- krb5=1.21.3=h659f571_0
2423
- lcms2=2.17=h717163a_0
25-
- ld_impl_linux-64=2.43=h712a8e2_2
24+
- ld_impl_linux-64=2.43=h712a8e2_4
2625
- lerc=4.0.0=h27087fc_0
2726
- libaec=1.1.3=h59595ed_0
28-
- libblas=3.9.0=30_h59b9bed_openblas
29-
- libcblas=3.9.0=30_he106b2a_openblas
30-
- libcurl=8.12.1=h332b0f4_0
27+
- libblas=3.9.0=31_h59b9bed_openblas
28+
- libcblas=3.9.0=31_he106b2a_openblas
29+
- libcurl=8.13.0=h332b0f4_0
3130
- libdeflate=1.23=h4ddbbb0_0
3231
- libedit=3.1.20250104=pl5321h7949ede_0
3332
- libev=4.33=hd590300_2
34-
- libffi=3.4.6=h2dba641_0
35-
- libgcc=14.2.0=h77fa898_1
36-
- libgcc-ng=14.2.0=h69a702a_1
37-
- libgfortran=14.2.0=h69a702a_1
38-
- libgfortran5=14.2.0=hd5240d6_1
39-
- libhwloc=2.11.2=default_h0d58e46_1001
40-
- libiconv=1.18=h4ce23a2_0
33+
- libexpat=2.7.0=h5888daf_0
34+
- libffi=3.4.6=h2dba641_1
35+
- libgcc=14.2.0=h767d61c_2
36+
- libgcc-ng=14.2.0=h69a702a_2
37+
- libgfortran=14.2.0=h69a702a_2
38+
- libgfortran5=14.2.0=hf1ad2bd_2
39+
- libgomp=14.2.0=h767d61c_2
4140
- libjpeg-turbo=3.0.0=hd590300_1
42-
- liblapack=3.9.0=30_h7ac8fdf_openblas
43-
- liblzma=5.6.4=hb9d3cd8_0
41+
- liblapack=3.9.0=31_h7ac8fdf_openblas
42+
- liblzma=5.8.1=hb9d3cd8_0
4443
- libnghttp2=1.64.0=h161d5f1_0
4544
- libnsl=2.0.1=hd590300_0
4645
- libopenblas=0.3.29=pthreads_h94d23a6_0
4746
- libpng=1.6.47=h943b412_0
48-
- libsqlite=3.49.1=hee588c1_1
47+
- libsqlite=3.49.1=hee588c1_2
4948
- libssh2=1.11.1=hf672d98_0
50-
- libstdcxx=14.2.0=hc0a3c3a_1
51-
- libstdcxx-ng=14.2.0=h4852527_1
49+
- libstdcxx=14.2.0=h8f9b012_2
50+
- libstdcxx-ng=14.2.0=h4852527_2
5251
- libtiff=4.7.0=hd9ff511_3
5352
- libuuid=2.38.1=h0b41bf4_0
5453
- libwebp-base=1.5.0=h851e524_0
5554
- libxcb=1.17.0=h8a09558_0
5655
- libxcrypt=4.4.36=hd590300_1
57-
- libxml2=2.13.6=h8d12d68_0
5856
- libzlib=1.3.1=hb9d3cd8_2
59-
- llvm-openmp=19.1.7=h024ca30_0
60-
- mkl=2024.2.2=ha957f24_16
6157
- ncurses=6.5=h2d0b736_3
6258
- numpy=1.26.4=py310hb13e2d6_0
6359
- openjpeg=2.5.3=h5fbd93e_0
64-
- openssl=3.4.1=h7b32b05_0
65-
- pandas=2.2.3=py310h5eaa309_1
60+
- openssl=3.5.0=h7b32b05_0
6661
- pillow=10.3.0=py310hebfe307_1
6762
- pip=25.0.1=pyh8b19718_0
6863
- pthread-stubs=0.4=hb9d3cd8_1002
69-
- pydantic=2.5.3=pyhd8ed1ab_0
70-
- pydantic-core=2.14.6=py310hcb5633a_1
71-
- python=3.10.16=he725a3c_1_cpython
72-
- python-dateutil=2.9.0.post0=pyhff2d567_1
73-
- python-tzdata=2025.1=pyhd8ed1ab_0
74-
- python_abi=3.10=5_cp310
75-
- pytz=2024.1=pyhd8ed1ab_0
76-
- readline=8.2=h8228510_1
64+
- pydantic=2.11.3=pyh3cfb1c2_0
65+
- pydantic-core=2.33.1=py310hc1293b2_0
66+
- python=3.10.17=hd6af730_0_cpython
67+
- python_abi=3.10=6_cp310
68+
- readline=8.2=h8c095d6_2
7769
- scipy=1.14.1=py310hfcf56fc_2
78-
- setuptools=75.8.0=pyhff2d567_0
79-
- six=1.17.0=pyhd8ed1ab_0
80-
- tbb=2021.13.0=hceb3a55_1
70+
- setuptools=78.1.0=pyhff2d567_0
8171
- tk=8.6.13=noxft_h4845f30_101
82-
- typing-extensions=4.12.2=hd8ed1ab_1
83-
- typing_extensions=4.12.2=pyha770c72_1
84-
- tzdata=2025a=h78e105d_0
72+
- typing-extensions=4.13.2=h0e9735f_0
73+
- typing-inspection=0.4.0=pyhd8ed1ab_0
74+
- typing_extensions=4.13.2=pyh29332c3_0
75+
- tzdata=2025b=h78e105d_0
8576
- wheel=0.45.1=pyhd8ed1ab_1
8677
- xorg-libxau=1.0.12=hb9d3cd8_0
8778
- xorg-libxdmcp=1.1.5=hb9d3cd8_0
88-
- zstd=1.5.7=hb8e6e7a_0
79+
- zstd=1.5.7=hb8e6e7a_2
8980
- pip:
90-
- geoapps-utils == 0.4.0 --hash=sha256:22baa6f49c09e02ab65efd07fbab1421982f17aefc98749febf858da2b47d6ef
91-
- geoh5py == 0.10.1 --hash=sha256:6ad70a64f5d5ae25c84c1d75f8142a0b34204027041a3edaf1b036fa9e571cf2
81+
- geoapps-utils @ git+https://github.com/MiraGeoscience/geoapps-utils.git@6e21320c89581dccb1635d8460dfe296ec41b6da
82+
- geoh5py @ git+https://github.com/MiraGeoscience/geoh5py.git@4b9756b5c9e98c709a2b23e2e558edb29e5f3416
9283

9384
variables:
9485
KMP_WARNINGS: 0

0 commit comments

Comments
 (0)