diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml new file mode 100644 index 00000000..ee77867f --- /dev/null +++ b/.github/workflows/build.yml @@ -0,0 +1,51 @@ +--- +name: Build Packages + +on: pull_request + +jobs: + find-recipes: + runs-on: ubuntu-latest + outputs: + matrix: ${{ steps.set-matrix.outputs.matrix }} + + steps: + - name: Checkout Repository + uses: actions/checkout@v2 + + - name: Get Changed Files + id: changed + uses: jitterbit/get-changed-files@v1 + with: + format: "json" + + - name: Find recipe.yaml files + id: set-matrix + run: | + changed='${{steps.changed.outputs.added_modified}}' + changed=$(echo $changed | jq -c '{include: [.[] | match("custom-recipes/recipes/([^/]*)/recipe.yaml") | .captures | .[].string | {package: .}]}') + echo "matrix=$changed" + echo "matrix=$changed" >> $GITHUB_OUTPUT + + build: + needs: find-recipes + runs-on: ubuntu-latest + container: + image: ghcr.io/european-xfel/environments:main + options: --tmpfs /dev/shm:rw,nosuid,nodev,exec,size=1g + strategy: + matrix: ${{ fromJson(needs.find-recipes.outputs.matrix) }} + name: Build "${{ matrix.package }}" + + steps: + - name: Checkout Repository + uses: actions/checkout@v2 + + - name: Build + run: | + cd custom-recipes + mkdir conda-bld + source /opt/conda/etc/profile.d/conda.sh + conda activate base + ./build.sh ${{ matrix.package }} + shell: bash diff --git a/custom-recipes/recipes/damnit/qscintilla-version.patch b/custom-recipes/recipes/damnit/qscintilla-version.patch new file mode 100644 index 00000000..66a84ce5 --- /dev/null +++ b/custom-recipes/recipes/damnit/qscintilla-version.patch @@ -0,0 +1,13 @@ +diff --git a/pyproject.toml b/pyproject.toml +index a4d321c..b4eefc0 100644 +--- a/pyproject.toml ++++ b/pyproject.toml +@@ -25,7 +25,7 @@ dependencies = [ + "PyQt5", + "PyYAML", + "pyflakes", +- "QScintilla==2.13", ++ "QScintilla==2.13.*", + "xarray", + "scipy", + "supervisor", diff --git a/custom-recipes/recipes/damnit/recipe.yaml b/custom-recipes/recipes/damnit/recipe.yaml new file mode 100644 index 00000000..c021f9db --- /dev/null +++ b/custom-recipes/recipes/damnit/recipe.yaml @@ -0,0 +1,72 @@ +context: + name: damnit + version: '0.1' + branch: 'master' + +package: + name: '{{ name|lower }}' + version: '{{ version }}+{{ branch }}' + +source: + git_url: https://github.com/European-XFEL/damnit + git_tag: '{{ branch }}' + patches: + - qscintilla-version.patch + +build: + entry_points: + - amore-proto = damnit.cli:main + noarch: python + script: '{{ PYTHON }} -m pip install . -vv' + number: 0 + +requirements: + host: + - python >=3.6 + - flit-core >=3.2,<4 + - pip + run: + - python >=3.6 + - extra-data + - euxfel-bunch-pattern + - h5netcdf + - ipython + - kafka-python + - matplotlib-base + - mplcursors + - mpl-pan-zoom + - numpy + - openpyxl + - pandas <2 + - pyqt + - pyyaml + - pyflakes + - qscintilla2 =2.13 + - xarray + - scipy + - supervisor + - termcolor + - tomli + - pasha + - extra-geom + - zulip + - tabulate + +test: + imports: + - damnit + commands: + - pip check + - amore-proto --help + requires: + - pip + +about: + summary: Prototype for extracting and showing metadata (AMORE project) + license: BSD-3-Clause + license_file: LICENSE + +extra: + recipe-maintainers: + - RobertRosca + diff --git a/custom-recipes/recipes/extra-hed/recipe.yaml b/custom-recipes/recipes/extra-hed/recipe.yaml index 4d4d0e43..fe50aac8 100644 --- a/custom-recipes/recipes/extra-hed/recipe.yaml +++ b/custom-recipes/recipes/extra-hed/recipe.yaml @@ -3,17 +3,16 @@ context: version: 0.1.0 package: - name: '{{ name|lower }}' - version: '{{ version }}' + name: "{{ name|lower }}" + version: "{{ version }}" source: - path: ./src - # git_url: ssh://git@git.xfel.eu:10022/tmichela/EXtra-HED.git + git_url: https://git.xfel.eu/tmichela/EXtra-HED.git git_depth: 1 build: noarch: python - script: '{{ PYTHON }} -m pip install --no-deps --ignore-installed -vv .' + script: "{{ PYTHON }} -m pip install --no-deps --ignore-installed -vv ." number: 0 requirements: @@ -46,4 +45,3 @@ extra: notes: Invalid license removed manually recipe-maintainers: - RobertRosca - diff --git a/custom-recipes/recipes/findxfel/recipe.yaml b/custom-recipes/recipes/findxfel/recipe.yaml index e4cf9c00..a5297beb 100644 --- a/custom-recipes/recipes/findxfel/recipe.yaml +++ b/custom-recipes/recipes/findxfel/recipe.yaml @@ -3,19 +3,18 @@ context: version: 0.1.1 package: - name: '{{ name|lower }}' - version: '{{ version }}' + name: "{{ name|lower }}" + version: "{{ version }}" source: - path: ./src - # git_url: ssh://git@git.xfel.eu:10022/dataAnalysis/findxfel.git + git_url: https://git.xfel.eu/dataAnalysis/findxfel.git git_depth: 1 build: entry_points: - findxfel = findxfel:main noarch: python - script: '{{ PYTHON }} -m pip install --no-deps --ignore-installed -vv .' + script: "{{ PYTHON }} -m pip install --no-deps --ignore-installed -vv ." number: 0 requirements: @@ -45,4 +44,3 @@ extra: notes: "'flit-core' added manually" recipe-maintainers: - RobertRosca - diff --git a/custom-recipes/recipes/karabo-bridge-recorder/recipe.yaml b/custom-recipes/recipes/karabo-bridge-recorder/recipe.yaml index 4d79d7ae..bcf9cc35 100644 --- a/custom-recipes/recipes/karabo-bridge-recorder/recipe.yaml +++ b/custom-recipes/recipes/karabo-bridge-recorder/recipe.yaml @@ -1,14 +1,13 @@ context: name: karabo_bridge_recorder - version: '0.2' + version: "0.2" package: - name: '{{ name|lower }}' - version: '{{ version }}' + name: "{{ name|lower }}" + version: "{{ version }}" source: - path: ./src - #git_url: ssh://git@git.xfel.eu:10022/dataAnalysis/karabo-bridge-recorder.git + git_url: https://git.xfel.eu/dataAnalysis/karabo-bridge-recorder.git git_depth: 1 build: @@ -16,7 +15,7 @@ build: - karabo-bridge-record = karabo_bridge_recorder.record:main - karabo-bridge-replay = karabo_bridge_recorder.replay:main noarch: python - script: '{{ PYTHON }} -m pip install --no-deps --ignore-installed -vv .' + script: "{{ PYTHON }} -m pip install --no-deps --ignore-installed -vv ." number: 0 requirements: @@ -47,4 +46,3 @@ extra: notes: "'flit-core' added manually" recipe-maintainers: - RobertRosca - diff --git a/custom-recipes/recipes/metropc/recipe.yaml b/custom-recipes/recipes/metropc/recipe.yaml index d28fce3c..2bbd94e4 100644 --- a/custom-recipes/recipes/metropc/recipe.yaml +++ b/custom-recipes/recipes/metropc/recipe.yaml @@ -3,17 +3,16 @@ context: version: 1.4.1 package: - name: '{{ name|lower }}' - version: '{{ version }}' + name: "{{ name|lower }}" + version: "{{ version }}" source: - path: ./src - # git_url: ssh://git@git.xfel.eu:10022/karaboDevices/metropc.git + git_url: https://git.xfel.eu/karaboDevices/metropc.git git_depth: 1 build: noarch: python - script: '{{ PYTHON }} -m pip install --no-deps --ignore-installed -vv .' + script: "{{ PYTHON }} -m pip install --no-deps --ignore-installed -vv ." number: 0 requirements: @@ -47,4 +46,3 @@ extra: notes: Invalid license file removed manually recipe-maintainers: - RobertRosca - diff --git a/custom-recipes/recipes/mpl-pan-zoom/recipe.yaml b/custom-recipes/recipes/mpl-pan-zoom/recipe.yaml new file mode 100644 index 00000000..b9dbce60 --- /dev/null +++ b/custom-recipes/recipes/mpl-pan-zoom/recipe.yaml @@ -0,0 +1,47 @@ +context: + name: mpl-pan-zoom + version: 1.0.0 + +package: + name: '{{ name|lower }}' + version: '{{ version }}' + +source: + url: https://pypi.io/packages/source/{{ name[0] }}/{{ name }}/mpl_pan_zoom-{{ version }}.tar.gz + sha256: d3d88592ad8d421040c865b7fc87e7878122d4fa8b8cce72dc09c0decc946764 + +build: + noarch: python + script: '{{ PYTHON }} -m pip install . -vv' + number: 0 + +requirements: + host: + - python >=3.7 + - setuptools >=45 + - wheel + - setuptools-scm >=6.2 + - pip + run: + - python >=3.7 + - matplotlib-base + - numpy + +test: + imports: + - mpl_pan_zoom + commands: + - pip check + requires: + - pip + +about: + home: https://github.com/ianhi/mpl-pan-zoom + summary: Panning and zooming with the mouse for matplotlib + license: BSD-3-Clause + license_file: LICENSE + +extra: + recipe-maintainers: + - RobertRosca +