Skip to content

Commit 969f4df

Browse files
authored
use smaller pixi containers (#264)
* try a pixi-based container * use smaller tagged and versioned pixi containers * fix namne * fix the tag * images are much smaller * swap mamba for pixi * rm mamba * rm dep * rm auth * add pixi toml witout lock * rm cache * parsimony * fix env * fix envs * fixes * add it for posterity, possibly remove later * fix the pixi toml * updates * avoid conda stuff if container is specified * specify the type, if only for linting * fix the setup call * fix calls * exit early if everything is fine * update the API * more obvious logic * adjust phasing logic * simply package imports again * add new diagnose features * be clearer about limitations * fix indexing logic again * expose more naibr params
1 parent 189b684 commit 969f4df

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

66 files changed

+706
-1013
lines changed

.github/workflows/createrelease.yml

Lines changed: 18 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -6,35 +6,31 @@ on:
66
- '*' # Push events of any tag created
77

88
jobs:
9-
build_versioned_container:
9+
build_versioned_containers:
1010
name: Build and Push versioned container
1111
runs-on: ubuntu-latest
1212
permissions:
1313
contents: write
1414
pull-requests: write
15+
strategy:
16+
matrix:
17+
env: [align, assembly, deconvolution, demultiplex, metassembly, phase, qc, report, simulations, stitch, variants]
1518
steps:
1619
- name: Checkout
1720
uses: actions/checkout@v4
1821
with:
1922
fetch-depth: 1
20-
- name: Setup mamba
21-
uses: mamba-org/setup-micromamba@v2
23+
- name: Install Harpy
24+
uses: prefix-dev/setup-pixi@v0.9.2
2225
with:
23-
init-shell: bash
24-
generate-run-shell: true
25-
environment-file: resources/harpy.yaml
26-
cache-environment: false
27-
post-cleanup: 'all'
28-
- name: Install harpy
29-
shell: micromamba-shell {0}
30-
run: |
31-
python3 -m pip install --upgrade build && python3 -m build
32-
pip install dist/*.whl
33-
pip install importlib-resources
26+
pixi-version: v0.56.0
27+
cache: false
28+
activate-environment: true
3429
- name: Clear space
3530
run: rm -rf /opt/hostedtoolcache
36-
- name: Recreate container
37-
shell: micromamba-shell {0}
31+
# - name: Clear Space
32+
# uses: jlumbroso/free-disk-space@main
33+
- name: Recreate containers
3834
run: harpy containerize
3935
- name: Set up Docker Buildx
4036
uses: docker/setup-buildx-action@v3
@@ -46,10 +42,12 @@ jobs:
4642
- name: Build and push
4743
uses: docker/build-push-action@v6
4844
with:
49-
context: ./container
45+
context: container/${{ matrix.env }}
5046
push: true
51-
tags: pdimens/harpy:${{ github.ref_name }}
47+
tags: pdimens/harpy:$${{ matrix.env }}_{{ github.ref_name }}
48+
5249
build_tarball:
50+
needs: build_versioned_containers
5351
name: Upload Release Tarball
5452
runs-on: ubuntu-latest
5553
permissions:
@@ -60,10 +58,10 @@ jobs:
6058
- name: Checkout code
6159
uses: actions/checkout@v4
6260
- name: Version the Container
63-
# this removes the :latest tag and replaces with versioned container
61+
# this removes the :*_latest tag and replaces with versioned container
6462
run: |
6563
for i in harpy/snakefiles/*.smk; do
66-
sed -i "s/harpy\:latest/harpy\:${{ github.ref_name }}/g" $i
64+
sed -i "s/_latest/_${{ github.ref_name }}/g" $i
6765
done
6866
- name: Bump Harpy Version
6967
# this removes the :latest tag and replaces with versioned container

0 commit comments

Comments
 (0)