Skip to content

Commit

Permalink
Merge branch 'master' into 702-feature-add-option-to-define-toleratio…
Browse files Browse the repository at this point in the history
…n-on-k8s-jobs
  • Loading branch information
munishchouhan authored Feb 5, 2025
2 parents e3ef4b4 + 242822f commit 5585b0b
Show file tree
Hide file tree
Showing 32 changed files with 553 additions and 143 deletions.
19 changes: 18 additions & 1 deletion .github/workflows/typespec.yml
Original file line number Diff line number Diff line change
Expand Up @@ -7,10 +7,12 @@ on:
- '**'
paths :
- 'typespec/**'
- VERSION
pull_request:
types: [opened, reopened, synchronize]
paths:
- 'typespec/**'
- VERSION

permissions:
contents: read
Expand All @@ -30,11 +32,26 @@ jobs:
node-version : '20.9.0'

- name : Install tsp
run : npm install -g @typespec/compiler
run : npm install -g @typespec/compiler@0.64.0

- name : Validate tsp files
run : |
cd typespec
tsp install
tsp compile .
- name: Configure AWS credentials
uses: aws-actions/configure-aws-credentials@v1
with:
aws-access-key-id: ${{secrets.TOWER_CI_AWS_ACCESS}}
aws-secret-access-key: ${{secrets.TOWER_CI_AWS_SECRET}}
aws-region: eu-west-1

- name : Login to Amazon ECR
id : login-ecr
uses : aws-actions/amazon-ecr-login@v1

- name: Release OpenAPI docs
if: "contains(github.event.head_commit.message, '[release]')"
run: |
bash typespec/tag-and-push-openapi.sh
2 changes: 1 addition & 1 deletion VERSION
Original file line number Diff line number Diff line change
@@ -1 +1 @@
1.16.8
1.17.1
8 changes: 4 additions & 4 deletions build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -34,10 +34,10 @@ dependencies {
compileOnly 'io.micronaut:micronaut-inject-groovy'
compileOnly 'io.micronaut:micronaut-http-validation'
implementation 'jakarta.persistence:jakarta.persistence-api:3.0.0'
api 'io.seqera:lib-mail:1.2.1'
api 'io.seqera:lib-pool:1.0.0'
api 'io.seqera:wave-api:0.14.0'
api 'io.seqera:wave-utils:0.15.0'
implementation 'io.seqera:lib-mail:1.2.1'
implementation 'io.seqera:lib-pool:1.0.0'
implementation 'io.seqera:wave-api:0.15.1'
implementation 'io.seqera:wave-utils:0.15.1'
implementation 'io.seqera:lib-crypto:1.0.0'
implementation 'io.micronaut:micronaut-http-client'
implementation 'io.micronaut:micronaut-jackson-databind'
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -13,18 +13,12 @@ repositories {
}

java {
// these settings apply to all jvm tooling, including groovy
toolchain {
languageVersion = JavaLanguageVersion.of(21)
}
}

compileJava {
options.release.set(17)
}

tasks.withType(GroovyCompile).configureEach {
sourceCompatibility = '17'
targetCompatibility = '17'
sourceCompatibility = 17
targetCompatibility = 17
}

group = 'io.seqera'
Original file line number Diff line number Diff line change
Expand Up @@ -15,18 +15,12 @@ repositories {
}

java {
// these settings apply to all jvm tooling, including groovy
toolchain {
languageVersion = JavaLanguageVersion.of(21)
}
}

compileJava {
options.release.set(17)
}

tasks.withType(GroovyCompile).configureEach {
sourceCompatibility = '17'
targetCompatibility = '17'
sourceCompatibility = 17
targetCompatibility = 17
}

test {
Expand Down
12 changes: 12 additions & 0 deletions changelog.txt
Original file line number Diff line number Diff line change
@@ -1,4 +1,16 @@
# Wave changelog
1.17.1 - 4 Feb 2025
- Add container index support to inspect view (#792) [34428d25]
- Remove server from openapi spec (#793) [9cbdec1d]

1.17.0 - 30 Jan 2025
- Ignore URI dependencies in Conda envs when generating image hash (#786) [c097c8a2]
- Render html from openapi spec generated by typespec (#707) [d3dfee9a]
- Disable proxy cache by default [c91fc31f]
- Update gradle deps [8a2e4209]
- Bump buildkit to version 0.18.2 (#787) [facbf99c]
- Bump java settings [1f6b94da]

1.16.8 - 20 Jab 2025
- Add TraceContextFilter logging context propagation [396c10c2]
- Improve Proxy cache configuration [163e605f]
Expand Down
6 changes: 3 additions & 3 deletions configuration.md → docs/configuration.mdx
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
# Wave Application Configuration

Set Wave configuration values using environment variables or in [`config.yml`](./config.yml) configuration file
Set Wave configuration values using environment variables or in [`config.yml`](https://github.com/seqeralabs/wave/blob/master/config.yml) configuration file

### config.yml configuration

Declare YAML configuration values in [`config.yml`](./config.yml)
Declare YAML configuration values in [`config.yml`](https://github.com/seqeralabs/wave/blob/master/config.yml)
```
wave:
mail:
Expand Down Expand Up @@ -39,7 +39,7 @@ The generic format for the attributes is `wave.registries.<registry_name>.userna
You need to specify all the repositories you will use in the respective wave installation.
Below are the standard format for known registries, but you can change registry name `(azurecr.io)` to specific one like `seqeralabs.azurecr.io `.

**Note**: Container registry credentials can be defined in [`config.yml`](./config.yml) too. These configurations are important for the wave authentication to the repositories used to push or pull artifacts.
**Note**: Container registry credentials can be defined in [`config.yml`](https://github.com/seqeralabs/wave/blob/master/config.yml) too. These configurations are important for the wave authentication to the repositories used to push or pull artifacts.

- **`wave.registries.default`**: the default Docker registry for Wave. The default is `docker.io`, and it represents the Docker Hub. *Optional*.

Expand Down
4 changes: 1 addition & 3 deletions docs/metrics.mdx
Original file line number Diff line number Diff line change
@@ -1,6 +1,4 @@
---
title: Usage metrics
---
# Usage metrics

Wave uses Redis to store its usage metrics for a specific date and/or a specific organization.

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -55,7 +55,7 @@ class TraceElapsedTimeInterceptor implements MethodInterceptor<Object,Object> {
finally {
final delta = System.currentTimeMillis() - begin
if( delta>=threshold ) {
log.warn(msg(delta,context,result))
log.debug(msg(delta,context,result))
}
}
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -41,7 +41,7 @@ class ProxyCacheConfig {
@Value('${wave.proxy-cache.max-size:10000}')
private int maxSize

@Value('${wave.proxy-cache.enabled:true}')
@Value('${wave.proxy-cache.enabled:false}')
private boolean enabled

Duration getDuration() {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -230,8 +230,6 @@ class ContainerController {
throw new BadRequestException("Attribute `containerFile` and `packages` conflicts each other")
if( v2 && req.condaFile )
throw new BadRequestException("Attribute `condaFile` is deprecated - use `packages` instead")
if( v2 && req.spackFile )
throw new BadRequestException("Attribute `spackFile` is deprecated - use `packages` instead")
if( !v2 && req.packages )
throw new BadRequestException("Attribute `packages` is not allowed")
if( !v2 && req.nameStrategy )
Expand All @@ -254,10 +252,6 @@ class ContainerController {
req = req.copyWith(containerFile: generated.bytes.encodeBase64().toString())
}

if( req.spackFile ) {
throw new BadRequestException("Spack packages are not supported any more")
}

final ip = addressResolver.resolve(httpRequest)
// check the rate limit before continuing
if( rateLimiterService )
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -98,7 +98,7 @@ class InspectController {
}

protected HttpResponse<ContainerInspectResponse> makeResponse(ContainerInspectRequest req, String platform, PlatformId identity) {
final spec = inspectService.containerSpec(req.containerImage, platform, identity)
final spec = inspectService.containerOrIndexSpec(req.containerImage, platform, identity)
return spec
? HttpResponse.ok(new ContainerInspectResponse(spec))
: HttpResponse.<ContainerInspectResponse>notFound()
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -59,4 +59,9 @@ class ServiceInfoController {
: HttpResponse.badRequest()
}

@Get(uri = "/openapi")
HttpResponse getOpenAPI() {
HttpResponse.redirect(URI.create("/openapi/"))
}

}
25 changes: 17 additions & 8 deletions src/main/groovy/io/seqera/wave/controller/ViewController.groovy
Original file line number Diff line number Diff line change
Expand Up @@ -391,14 +391,23 @@ class ViewController {
HttpResponse<Map<String,Object>> viewInspect(@QueryValue String image, @Nullable @QueryValue String platform) {
final binding = new HashMap(10)
try {
final spec = inspectService.containerSpec(image, platform, null)
binding.imageName = spec.imageName
binding.reference = spec.reference
binding.digest = spec.digest
binding.registry = spec.registry
binding.hostName = spec.hostName
binding.config = JacksonHelper.toJson(spec.config)
binding.manifest = JacksonHelper.toJson(spec.manifest)
final spec = inspectService.containerOrIndexSpec(image, platform, null)
if ( spec.container ){
binding.imageName = spec.container.imageName
binding.reference = spec.container.reference
binding.digest = spec.container.digest
binding.registry = spec.container.registry
binding.hostName = spec.container.hostName
binding.config = JacksonHelper.toJson(spec.container.config)
binding.manifest = JacksonHelper.toJson(spec.container.manifest)
}
else {
binding.imageName = image
binding.digest = spec.index.digest
binding.schemaVersion = spec.index.schemaVersion
binding.mediaType = spec.index.mediaType
binding.manifests = JacksonHelper.toJson(spec.index.manifests)
}
}
catch (Exception e){
binding.error_message = e.getMessage()
Expand Down
Loading

0 comments on commit 5585b0b

Please sign in to comment.