Skip to content

Commit

Permalink
Merge branch 'master' into 223-improve-container-credentials-retrieva…
Browse files Browse the repository at this point in the history
…l-using-workflow-compute-environment
  • Loading branch information
pditommaso committed Jul 9, 2024
2 parents 75bfd50 + d50e5b7 commit 60163c8
Show file tree
Hide file tree
Showing 12 changed files with 16 additions and 30 deletions.
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ images.
* Augment container images i.e. dynamically add one or more container layers to existing images;
* Build container images on-demand for a given container file (aka Dockerfile);
* Build container images on-demand based on one or more Conda packages;
* Build container images on-demand based on one or more Spack packages;
* Build container images on-demand based on one or more Spack packages, Spack support will be removed in future releases;
* Build container images for a specified target platform (currently linux/amd64 and linux/arm64);
* Push and cache built containers to a user-provided container repository;
* Build Singularity native containers both using a Singularity spec file, Conda package(s) and Spack package(s);
Expand Down
2 changes: 2 additions & 0 deletions configuration.md
Original file line number Diff line number Diff line change
Expand Up @@ -109,6 +109,8 @@ Below are the standard format for known registries, but you can change registry

### Spack configuration for wave build process

**Note**: Spack support will be removed in future releases.

Spack configuration consists of the path of its secret file, the mount path for the secret file in the spack container, and the optional S3 bucket name for the spack binary cache.

**Note**: these configuration are mandatory to support Spack in a wave installation.
Expand Down
8 changes: 4 additions & 4 deletions docs/api.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -67,7 +67,7 @@ This API endpoint is deprecated in current versions of Wave.
| `containerConfig.layers.gzipSize` | The size in bytes of the the provided layer tar gzip file. |
| `containerFile` | Dockerfile used for building a new container encoded in base64 (optional). When provided, the attribute `containerImage` must be omitted. |
| `condaFile` | Conda environment file encoded as base64 string. |
| `spackFile` | Spack recipe file encoded as base64 string. |
| `spackFile` | `Deprecated` Spack recipe file encoded as base64 string. Spack support will be removed in future releases. |
| `containerPlatform` | Target container architecture of the built container, e.g., `linux/amd64` (optional). Currently only supporting amd64 and arm64. |
| `buildRepository` | Container repository where container builds should be pushed, e.g., `docker.io/user/my-image` (optional). |
| `cacheRepository` | Container repository used to cache build layers `docker.io/user/my-cache` (optional). |
Expand Down Expand Up @@ -168,7 +168,7 @@ The endpoint returns the name of the container request made available by Wave.
| `containerConfig.layers.gzipSize` | The size in bytes of the the provided layer tar gzip file. |
| `containerFile` | Dockerfile used for building a new container encoded in base64 (optional). When provided, the attribute `containerImage` must be omitted. |
| `condaFile` | Conda environment file encoded as base64 string. |
| `spackFile` | Spack recipe file encoded as base64 string. |
| `spackFile` | `Deprecated` Spack recipe file encoded as base64 string. Spack support will be removed in future releases. |
| `containerPlatform` | Target container architecture of the built container, e.g., `linux/amd64` (optional). Currently only supporting amd64 and arm64. |
| `buildRepository` | Container repository where container builds should be pushed, e.g., `docker.io/user/my-image` (optional). |
| `cacheRepository` | Container repository used to cache build layers `docker.io/user/my-cache` (optional). |
Expand All @@ -178,9 +178,9 @@ The endpoint returns the name of the container request made available by Wave.
| `towerEndpoint` | Seqera Platform service endpoint from where container registry credentials are retrieved (optional). Default `https://api.cloud.seqera.io`. |
| `towerAccessToken` | Access token of the user account granting access to the Seqera Platform service specified via `towerEndpoint` (optional). |
| `towerWorkspaceId` | ID of the Seqera Platform workspace from where the container registry credentials are retrieved (optional). When omitted the personal workspace is used. |
| `packages` | This object specifies Conda or Spack packages environment information. |
| `packages` | This object specifies Conda packages environment information. |
| `environment` | The package environment file encoded as a base64 string. |
| `type` | This represents the type of package builder. Use `SPACK` or `CONDA`. |
| `type` | This represents the type of package builder. Use `CONDA`. |
| `entries` | List of the packages names. |
| `channels` | List of Conda channels, which will be used to download packages. |
| `mambaImage` | Name of the docker image used to build Conda containers. |
Expand Down
2 changes: 2 additions & 0 deletions docs/cli/build-spack.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,8 @@
title: Build a container from Spack packages
---

**Note**: Spack support will be removed in future releases.

The Wave CLI supports building a container from a list of [Spack] packages.

:::caution
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -35,6 +35,7 @@ import jakarta.inject.Singleton
@EqualsAndHashCode
@Singleton
@CompileStatic
@Deprecated
class SpackConfig {

/**
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,7 @@ package io.seqera.wave.service.aws
import groovy.transform.CompileStatic
import groovy.util.logging.Slf4j
import io.micronaut.context.annotation.Factory
import io.micronaut.context.annotation.Requires
import io.micronaut.context.annotation.Value
import io.micronaut.objectstorage.InputStreamMapper
import io.micronaut.objectstorage.ObjectStorageOperations
Expand All @@ -37,6 +38,7 @@ import software.amazon.awssdk.services.s3.S3Client
@Factory
@CompileStatic
@Slf4j
@Requires(property = 'wave.build.logs.bucket')
class ObjectStorageOperationsFactory {

@Value('${wave.build.logs.bucket}')
Expand Down
1 change: 1 addition & 0 deletions src/main/groovy/io/seqera/wave/util/SpackHelper.groovy
Original file line number Diff line number Diff line change
Expand Up @@ -29,6 +29,7 @@ import io.seqera.wave.service.builder.BuildFormat
* @author Paolo Di Tommaso <[email protected]>
*/
@CompileStatic
@Deprecated
class SpackHelper {

static String builderDockerTemplate() {
Expand Down
6 changes: 0 additions & 6 deletions src/main/resources/application-buildlogs-aws-test.yml
Original file line number Diff line number Diff line change
@@ -1,10 +1,4 @@
---
micronaut:
object-storage:
aws:
build-logs:
bucket: "${wave.build.logs.bucket}"
---
wave:
build:
logs:
Expand Down
7 changes: 0 additions & 7 deletions src/main/resources/application-buildlogs-aws.yml

This file was deleted.

9 changes: 0 additions & 9 deletions src/main/resources/application-buildlogs-local.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,13 +4,4 @@ wave:
logs:
bucket: "$PWD/build-workspace"
prefix: 'wave-build/logs'
---
# unfortunately "local" object storage requires min Java 17
# keeping this only for reference
micronaut:
object-storage:
local:
build-logs:
enabled: true
path: "${wave.build.logs.bucket}"
...
2 changes: 1 addition & 1 deletion src/main/resources/application.yml
Original file line number Diff line number Diff line change
Expand Up @@ -83,7 +83,7 @@ wave:
multiplier: '1.75'
scan:
image:
name: aquasec/trivy:0.50.1
name: aquasec/trivy:0.53.0
blobCache:
s5cmdImage: cr.seqera.io/public/wave/s5cmd:v2.2.2
---
Expand Down
4 changes: 2 additions & 2 deletions typespec/models/SpackOpts.tsp
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
@doc("Options for Spack environments.")
@doc("Options for Spack environments. Spack support will be removed in future releases")
model SpackOpts {
basePackages: string;
commands: string[];
}
}

0 comments on commit 60163c8

Please sign in to comment.