Skip to content

Commit 18ee886

Browse files
pditommasoclaude
andcommitted
Fix documentation to match actual implementation
- Use correct template names: conda-pixi/v1, conda-micromamba/v2 - Update default pixi image to 0.59.0-noble - Fix shell-hook path from /opt/wave/entry.sh to /shell-hook.sh 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
1 parent 1f2677d commit 18ee886

File tree

3 files changed

+21
-21
lines changed

3 files changed

+21
-21
lines changed

adr/20251203-multi-stage-build-templates.md

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -43,8 +43,8 @@ Wave's default container builds using Micromamba v1 include the package manager
4343
| Value | Template | Package Manager |
4444
|-------|----------|-----------------|
4545
| `null` (default) | micromamba v1 | micromamba (single-stage) |
46-
| `pixi/v1` | pixi v1 | pixi (multi-stage) |
47-
| `micromamba/v2` | micromamba v2 | micromamba (multi-stage) |
46+
| `conda-pixi/v1` | pixi v1 | pixi (multi-stage) |
47+
| `conda-micromamba/v2` | micromamba v2 | micromamba (multi-stage) |
4848

4949
**Rationale:**
5050
- Explicit selection avoids ambiguity
@@ -57,7 +57,7 @@ Wave's default container builds using Micromamba v1 include the package manager
5757

5858
| Option | Default | Description |
5959
|--------|---------|-------------|
60-
| `pixiImage` | `ghcr.io/prefix-dev/pixi:latest` | Build stage image |
60+
| `pixiImage` | `ghcr.io/prefix-dev/pixi:0.59.0-noble` | Build stage image |
6161
| `baseImage` | `ubuntu:24.04` | Final stage base |
6262
| `basePackages` | `conda-forge::procps-ng` | Additional runtime packages |
6363
| `commands` | (empty) | Custom commands |
@@ -85,7 +85,7 @@ Wave's default container builds using Micromamba v1 include the package manager
8585

8686
**Decision:** Generate shell-hook script for automatic environment activation
8787

88-
- Pixi: `/opt/wave/entry.sh` generated via `pixi shell-hook`
88+
- Pixi: `/shell-hook.sh` generated via `pixi shell-hook`
8989
- Micromamba: Standard `/opt/conda` activation
9090

9191
**Rationale:**
@@ -116,13 +116,13 @@ Wave's default container builds using Micromamba v1 include the package manager
116116
| Template | `condaOpts` | `pixiOpts` |
117117
|----------|-------------|------------|
118118
| Default (v1) | Yes | No |
119-
| `micromamba/v2` | Yes | No |
120-
| `pixi/v1` | No | Yes |
119+
| `conda-micromamba/v2` | Yes | No |
120+
| `conda-pixi/v1` | No | Yes |
121121

122122
## Template Comparison
123123

124-
| Aspect | Default (v1) | `micromamba/v2` | `pixi/v1` |
125-
|--------|--------------|-----------------|-----------|
124+
| Aspect | Default (v1) | `conda-micromamba/v2` | `conda-pixi/v1` |
125+
|--------|--------------|----------------------|-----------------|
126126
| Build stages | 1 | 2 | 2 |
127127
| Package manager in final | Yes | No | No |
128128
| Lock file | No | Yes | Yes |

docs/api.md

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -194,11 +194,11 @@ The endpoint returns the name of the container request made available by Wave.
194194
| `commands` | Command to be included in the container. |
195195
| `basePackages` | Names of base packages. |
196196
| `baseImage` | Base image for the final stage of multi-stage builds (for Conda/Pixi). |
197-
| `pixiOpts` | Pixi build options (when type is CONDA and buildTemplate is `pixi/v1`). |
197+
| `pixiOpts` | Pixi build options (when type is CONDA and buildTemplate is `conda-pixi/v1`). |
198198
| `pixiImage` | Name of the Docker image used for Pixi package manager (e.g., `ghcr.io/prefix-dev/pixi:latest`). |
199199
| `cranOpts` | CRAN build options (when type is CRAN). |
200200
| `rImage` | Name of the R Docker image used to build CRAN containers (e.g., `rocker/r-ver:4.4.1`). |
201-
| `buildTemplate` | The build template to use for container builds. Supported values: `pixi/v1` (Pixi with multi-stage builds), `micromamba/v2` (Micromamba 2.x with multi-stage builds). Default: standard conda/micromamba v1 template. |
201+
| `buildTemplate` | The build template to use for container builds. Supported values: `conda-pixi/v1` (Pixi with multi-stage builds), `conda-micromamba/v2` (Micromamba 2.x with multi-stage builds). Default: standard conda/micromamba v1 template. |
202202
| `nameStrategy` | The name strategy to be used to create the name of the container built by Wave. Its values can be `none`, `tagPrefix`, or `imageSuffix`. | |
203203

204204
### Response
@@ -376,13 +376,13 @@ curl --location 'https://wave.seqera.io/v1alpha2/container' \
376376
--data '{
377377
"containerPlatform": "linux/amd64",
378378
"format": "docker",
379-
"buildTemplate": "pixi/v1",
379+
"buildTemplate": "conda-pixi/v1",
380380
"packages":{
381381
"type": "CONDA",
382382
"entries": ["numpy", "pandas", "scikit-learn"],
383383
"channels": ["conda-forge"],
384384
"pixiOpts": {
385-
"pixiImage": "ghcr.io/prefix-dev/pixi:latest",
385+
"pixiImage": "ghcr.io/prefix-dev/pixi:0.59.0-noble",
386386
"basePackages": "conda-forge::procps-ng",
387387
"baseImage": "ubuntu:24.04",
388388
"commands": []
@@ -418,7 +418,7 @@ curl --location 'https://wave.seqera.io/v1alpha2/container' \
418418
--data '{
419419
"containerPlatform": "linux/amd64",
420420
"format": "docker",
421-
"buildTemplate": "micromamba/v2",
421+
"buildTemplate": "conda-micromamba/v2",
422422
"packages":{
423423
"type": "CONDA",
424424
"entries": ["bwa=0.7.15", "salmon=1.10.0", "samtools=1.17"],
@@ -460,13 +460,13 @@ curl --location 'https://wave.seqera.io/v1alpha2/container' \
460460
--data '{
461461
"containerPlatform": "linux/amd64",
462462
"format": "sif",
463-
"buildTemplate": "pixi/v1",
463+
"buildTemplate": "conda-pixi/v1",
464464
"packages":{
465465
"type": "CONDA",
466466
"entries": ["numpy", "pandas", "scikit-learn"],
467467
"channels": ["conda-forge"],
468468
"pixiOpts": {
469-
"pixiImage": "ghcr.io/prefix-dev/pixi:latest",
469+
"pixiImage": "ghcr.io/prefix-dev/pixi:0.59.0-noble",
470470
"basePackages": "conda-forge::procps-ng",
471471
"baseImage": "ubuntu:24.04",
472472
"commands": []
@@ -502,7 +502,7 @@ curl --location 'https://wave.seqera.io/v1alpha2/container' \
502502
--data '{
503503
"containerPlatform": "linux/amd64",
504504
"format": "sif",
505-
"buildTemplate": "micromamba/v2",
505+
"buildTemplate": "conda-micromamba/v2",
506506
"packages":{
507507
"type": "CONDA",
508508
"entries": ["bwa=0.7.15", "salmon=1.10.0", "samtools=1.17"],
@@ -535,7 +535,7 @@ curl --location 'https://wave.seqera.io/v1alpha2/container' \
535535
```
536536

537537
:::note
538-
Multi-stage build templates (`pixi/v1` and `micromamba/v2`) create optimized container images by separating the build environment from the final runtime environment. This results in smaller container images that only contain the installed packages and runtime dependencies, without the build tools.
538+
Multi-stage build templates (`conda-pixi/v1` and `conda-micromamba/v2`) create optimized container images by separating the build environment from the final runtime environment. This results in smaller container images that only contain the installed packages and runtime dependencies, without the build tools.
539539
:::
540540

541541
## GET `/v1alpha1/builds/{buildId}/status`

typespec/models/ContainerRequest.tsp

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -33,13 +33,13 @@ import "./ScanLevel.tsp";
3333
entries: #["numpy", "pandas"],
3434
channels: #["conda-forge"],
3535
pixiOpts: #{
36-
pixiImage: "ghcr.io/prefix-dev/pixi:latest",
36+
pixiImage: "ghcr.io/prefix-dev/pixi:0.59.0-noble",
3737
basePackages: "conda-forge::procps-ng",
3838
baseImage: "ubuntu:24.04",
3939
commands: #[]
4040
}
4141
},
42-
buildTemplate: "pixi/v1",
42+
buildTemplate: "conda-pixi/v1",
4343
format: "docker",
4444
containerPlatform:"linux/amd64"
4545
})
@@ -55,7 +55,7 @@ import "./ScanLevel.tsp";
5555
commands: #[]
5656
}
5757
},
58-
buildTemplate: "micromamba/v2",
58+
buildTemplate: "conda-micromamba/v2",
5959
format: "docker",
6060
containerPlatform:"linux/amd64"
6161
})
@@ -101,6 +101,6 @@ model ContainerRequest {
101101
towerWorkspaceId?: int64;
102102
@doc("ID of the Seqera Platform workspace from which this container request originates (optional).")
103103
workflowId?: string;
104-
@doc("The build template that should be used to build the container image. Supported templates:\n- 'pixi/v1': Uses Pixi package manager for modern, reproducible conda environments with multi-stage builds\n- 'micromamba/v2': Uses Micromamba 2.x with multi-stage builds for optimized conda environments\n- Default: Uses standard conda/micromamba v1 template when not specified")
104+
@doc("The build template that should be used to build the container image. Supported templates:\n- 'conda-pixi/v1': Uses Pixi package manager for modern, reproducible conda environments with multi-stage builds\n- 'conda-micromamba/v2': Uses Micromamba 2.x with multi-stage builds for optimized conda environments\n- Default: Uses standard conda/micromamba v1 template when not specified")
105105
buildTemplate?: string;
106106
}

0 commit comments

Comments
 (0)