Skip to content

Commit

Permalink
Merge branch 'master' into remove-testonly-constructors
Browse files Browse the repository at this point in the history
Signed-off-by: Ben Sherman <[email protected]>
  • Loading branch information
bentsherman committed Dec 10, 2024
2 parents f6dc9eb + b23e42c commit 6957f2e
Show file tree
Hide file tree
Showing 298 changed files with 15,110 additions and 9,940 deletions.
82 changes: 75 additions & 7 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -25,18 +25,32 @@ jobs:
strategy:
fail-fast: false
matrix:
java_version: [11, 17, 22]
java_version: [17, 23]

steps:
- name: Environment
run: env | sort

- name: Checkout
uses: actions/checkout@v4
with:
fetch-depth: 1
submodules: true

- name: Get the commit message
id: get_commit_message
run: |
if [ "${{ github.event_name }}" = "pull_request" ]; then
echo "GitHub event=pull_request"
COMMIT_SHA=${{ github.event.pull_request.head.sha }}
COMMIT_MESSAGE=$(curl -s \
-H "Authorization: token ${{ secrets.GITHUB_TOKEN }}" \
https://api.github.com/repos/${{ github.repository }}/commits/$COMMIT_SHA | jq -r '.commit.message')
echo "Commit message=$COMMIT_MESSAGE" | head -n 1
echo "commit_message=$COMMIT_MESSAGE" | head -n 1 >> $GITHUB_OUTPUT
else
echo "GitHub event=${{ github.event_name }}"
echo "Commit message=${{ github.event.head_commit.message }}" | head -n 1
echo "commit_message=${{ github.event.head_commit.message }}" | head -n 1 >> $GITHUB_OUTPUT
fi
- name: Get changed files
id: changed-files
uses: tj-actions/changed-files@v43
Expand Down Expand Up @@ -76,6 +90,7 @@ jobs:
- name: Test
if: steps.changed-files.outputs.any_changed == 'true'
run: |
env | sort
# configure test env
if [[ "$GOOGLE_SECRET" ]]; then
echo $GOOGLE_SECRET | base64 -d > $PWD/google_credentials.json
Expand Down Expand Up @@ -106,16 +121,17 @@ jobs:
outputs:
any_changed: ${{ steps.changed-files.outputs.any_changed }}
commit_message: ${{ steps.get_commit_message.outputs.commit_message }}

test:
if: ${{ !contains(github.event.head_commit.message, '[ci fast]') && needs.build.outputs.any_changed == 'true' }}
if: ${{ !contains(needs.build.outputs.commit_message, '[ci fast]') && needs.build.outputs.any_changed == 'true' }}
needs: build
runs-on: ubuntu-latest
timeout-minutes: 90
strategy:
fail-fast: false
matrix:
java_version: [11, 21]
java_version: [17, 23]
test_mode: ["test_integration", "test_docs", "test_aws", "test_azure", "test_google", "test_wave"]
steps:
- name: Checkout
Expand All @@ -142,6 +158,12 @@ jobs:

- name: Run tests
run: |
env | sort
# configure test env
if [[ "$GOOGLE_SECRET" ]]; then
echo $GOOGLE_SECRET | base64 -d > $PWD/google_credentials.json
export GOOGLE_APPLICATION_CREDENTIALS=$PWD/google_credentials.json
fi
cat $HOME/.nextflow/scm
make clean assemble install
bash test-ci.sh
Expand Down Expand Up @@ -173,5 +195,51 @@ jobs:
with:
name: report-${{ matrix.test_mode }}-jdk-${{ matrix.java_version }}
path: |
validation/**
validation/**/*
validation/**/.*
integration-tests.tar
test-e2e:
if: ${{ contains(needs.build.outputs.commit_message,'[e2e stage]') || contains(needs.build.outputs.commit_message,'[e2e prod]') }}
needs: build
runs-on: ubuntu-latest
timeout-minutes: 10
permissions:
actions: write # Allow writing to actions
contents: write # Allow writing to repository contents
steps:
- name: Checkout
uses: actions/checkout@v4
with:
fetch-depth: 1
submodules: true

- name: Setup Java 17
uses: actions/setup-java@v4
with:
java-version: 17
distribution: 'temurin'
architecture: x64
cache: gradle

- name: Setup env
run: |
wget -q -O wave https://github.com/seqeralabs/wave-cli/releases/download/v1.4.1/wave-1.4.1-linux-x86_64
chmod +x wave
mv wave /usr/local/bin/
echo "COMMIT_MESSAGE=\"${{ needs.build.outputs.commit_message }}\"" >> $GITHUB_ENV
- name : Docker Login to Seqera public CR
uses : docker/login-action@v3
with :
registry : "public.cr.seqera.io"
username : "public-cr-admin"
password : ${{ secrets.SEQERA_PUBLIC_CR_PASSWORD }}

- name: Launch tests
run: |
cd test-e2e
bash run.sh
env:
GITHUB_TOKEN: ${{ secrets.AUTOMATION_GITHUB_TOKEN }}
GRADLE_OPTS: '-Dorg.gradle.daemon=false'
27 changes: 27 additions & 0 deletions .github/workflows/generate-send-dependencies.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
name: Generate and submit dependency graph for nextflow
on:
push:
branches: ['master']

permissions:
contents: write

jobs:
dependency-submission:
runs-on: ubuntu-latest
strategy:
matrix:
components: ["nextflow", "plugins:nf-google", "plugins:nf-amazon", "plugins:nf-azure", "plugins:nf-cloudcache", "plugins:nf-codecommit", "plugins:nf-console", "plugins:nf-tower", "plugins:nf-wave"]
steps:
- uses: actions/checkout@v4
- uses: actions/setup-java@v4
with:
distribution: temurin
java-version: 21

- name: Generate and submit dependency graph for nextflow
uses: gradle/actions/dependency-submission@v4
with:
dependency-resolution-task: ":${{ matrix.components }}:dependencies"
additional-arguments: "--configuration runtimeClasspath"
dependency-graph: generate-and-submit
62 changes: 62 additions & 0 deletions .github/workflows/seqeradocs-changelog.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,62 @@
name: Push release change log to Seqera Docs

on:
release:
types: [published]
workflow_dispatch:
inputs:
release_name:
description: "Release version (e.g. 1.0.0)"
required: true
release_body:
description: "Release changelog content"
required: true

jobs:
update-docs:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4

- name: Clone seqeralabs/docs
run: |
git clone https://github.com/seqeralabs/docs.git seqeralabs-docs
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}

- name: Create changelog file
run: |
mkdir -p seqeralabs-docs/changelog/nextflow
cat << EOF > seqeralabs-docs/changelog/nextflow/${{ github.event.release.name || inputs.release_name }}.mdx
---
title: Nextflow ${{ github.event.release.name || inputs.release_name }}
date: $(date +%Y-%m-%d)
tags: [nextflow]
---
${{ github.event.release.body || inputs.release_body }}
EOF
- uses: actions/create-github-app-token@v1
id: generate-token
with:
app-id: ${{ secrets.DOCS_BOT_APP_ID }}
private-key: ${{ secrets.DOCS_BOT_APP_PRIVATE_KEY }}
owner: seqeralabs
repositories: docs

- name: Create Pull Request
uses: peter-evans/create-pull-request@v7
with:
token: ${{ steps.generate-token.outputs.token }}
branch-token: ${{ steps.generate-token.outputs.token }}
path: seqeralabs-docs
commit-message: "Changelog: Nextflow ${{ github.event.release.name || inputs.release_name }}"
title: "Changelog: Nextflow ${{ github.event.release.name || inputs.release_name }}"
body: |
This PR adds the changelog for Nextflow ${{ github.event.release.name || inputs.release_name }} to the Seqera documentation.
This is an automated PR created from the Nextflow repository.
branch: changelog-nextflow-${{ github.event.release.name || inputs.release_name }}
base: master
delete-branch: true
2 changes: 1 addition & 1 deletion VERSION
Original file line number Diff line number Diff line change
@@ -1 +1 @@
24.07.0-edge
24.11.0-edge
13 changes: 6 additions & 7 deletions build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@
*/

plugins {
id "io.codearte.nexus-staging" version "0.21.2"
id "io.codearte.nexus-staging" version "0.30.0"
id 'java'
id 'idea'
}
Expand Down Expand Up @@ -73,12 +73,12 @@ allprojects {
}

compileJava {
options.release.set(11)
options.release.set(17)
}

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

idea {
Expand Down Expand Up @@ -109,8 +109,8 @@ allprojects {

// Documentation required libraries
groovyDoc 'org.fusesource.jansi:jansi:2.4.0'
groovyDoc "org.apache.groovy:groovy-groovydoc:4.0.22"
groovyDoc "org.apache.groovy:groovy-ant:4.0.22"
groovyDoc "org.apache.groovy:groovy-groovydoc:4.0.24"
groovyDoc "org.apache.groovy:groovy-ant:4.0.24"
}

test {
Expand Down Expand Up @@ -147,7 +147,6 @@ allprojects {
// Required to run tests on Java 9 and higher in compatibility mode
tasks.withType(Test) {
jvmArgs ([
'-Dorg.spockframework.mock.ignoreByteBuddy=true',
'--enable-preview',
'--add-opens=java.base/java.lang=ALL-UNNAMED',
'--add-opens=java.base/java.io=ALL-UNNAMED',
Expand Down
2 changes: 1 addition & 1 deletion buildSrc/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ version = "1.0.1"
group = "io.nextflow"

dependencies {
implementation ('com.amazonaws:aws-java-sdk-s3:1.12.129')
implementation ('com.amazonaws:aws-java-sdk-s3:1.12.777')
implementation 'com.google.code.gson:gson:2.10.1'
}

Expand Down
Loading

0 comments on commit 6957f2e

Please sign in to comment.