Skip to content

Commit

Permalink
[DEVOPS-504] Add deployment workflows
Browse files Browse the repository at this point in the history
  • Loading branch information
SophieCurinier committed Oct 3, 2024
1 parent aadadd2 commit 993ba06
Show file tree
Hide file tree
Showing 7 changed files with 501 additions and 273 deletions.
20 changes: 20 additions & 0 deletions .github/workflows/python_deploy_dev.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
name: Deploy python package in development

on:
push:
tags:
- '*' # Push events to every tag not containing

jobs:
call-workflow-publish:
name: Publish development package on JFrog Artifactory
uses: MiraGeoscience/CI-tools/.github/workflows/reusable-python-publish_package.yml@main
with:
package-managers: '["conda"]'
package-name: 'geoh5py'
version-tag: ${{ github.ref_name }}
python-version: '3.10'
repo-names: '["public-conda-dev-local", "public-pypi-dev-local"]'
secrets:
JFROG_ARTIFACTORY_URL: ${{ secrets.JFROG_ARTIFACTORY_URL }}
JFROG_ARTIFACTORY_TOKEN: ${{ secrets.JFROG_ARTIFACTORY_TOKEN }}
19 changes: 19 additions & 0 deletions .github/workflows/python_deploy_prod.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
name: Deploy python package in production

on:
release:
types: [published] # Trigger for draft release

jobs:
call-workflow-publish:
name: Publish production package on JFrog Artifactory
uses: MiraGeoscience/CI-tools/.github/workflows/reusable-python-publish_package.yml@main
with:
package-managers: '["conda"]'
package-name: 'geoh5py'
version-tag: ${{ github.ref_name }}
python-version: '3.10'
repo-names: '["public-conda-prod-local", "public-pypi-prod-local"]'
secrets:
JFROG_ARTIFACTORY_URL: ${{ secrets.JFROG_ARTIFACTORY_URL }}
JFROG_ARTIFACTORY_TOKEN: ${{ secrets.JFROG_ARTIFACTORY_TOKEN }}
2 changes: 2 additions & 0 deletions .pre-commit-config.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -39,6 +39,7 @@ repos:
pydantic==2.5.*,
tomli, # to read config from pyproject.toml
types-toml,
types-PyYAML,
]
exclude: |
(?x)(^
Expand Down Expand Up @@ -94,6 +95,7 @@ repos:
exclude_types: [jupyter]
- id: check-toml
- id: check-yaml
exclude: ^meta.yaml$
# - id: check-added-large-files # crashing on some configuration. To be investigated
- id: check-case-conflict
- id: check-merge-conflict
Expand Down
58 changes: 58 additions & 0 deletions meta.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,58 @@
{% set name = "geoh5py" %}
{% set version = "0.10.0a1" %}

package:
name: {{ name|lower }}
version: {{ version }}

source:
# url: https://github.com/MiraGeoscience/{{ name }}/archive/v{{ version }}.tar.gz
# sha256: 71ef863971355dcaf255c5e1824be5cf091c87940ab930001ab08ca8bfd11441
path: ../{{ name}}

build:
noarch: python
script: {{ PYTHON }} -m pip install . -vv --no-deps --no-build-isolation
number: 0

requirements:
host:
- python >=3.10.0,<3.11
- poetry-core >=1.0.0
- setuptools
- pip
run:
- python >=3.10.0,<3.11
- pydantic >=2.5.2,<3.0.0
- h5py >=3.2.1,<4.0.0
- numpy >=1.26.0,<1.27.0
- pillow >=10.3.0,<10.4.0

test:
imports:
- geoh5py
commands:
- pip check
requires:
- pip

about:
home: https://www.mirageoscience.com/mining-industry-software/python-integration/
summary: 'Python API for geoh5, an open file format for geoscientific data.'
description: |
The geoh5py library has been created for the manipulation and storage of a wide range of
geoscientific data (points, curve, surface, 2D and 3D grids) in GEOH5 file format. Users will
be able to directly leverage the powerful visualization capabilities of
(Geoscience ANALYST)<https://mirageoscience.com/mining-industry-software/geoscience-analyst/>
along with open-source code from the Python ecosystem.
license: LGPL-3.0-only
license_file:
- COPYING
- COPYING.LESSER
doc_url: https://mirageoscience-geoh5py.readthedocs-hosted.com/
dev_url: https://github.com/MiraGeoscience/geoh5py

extra:
recipe-maintainers:
- SophieCurinier
- sebhmg
Loading

0 comments on commit 993ba06

Please sign in to comment.