add nextflow d30e48d
This commit is contained in:
3
nextflow/test-e2e/.gitignore
vendored
Normal file
3
nextflow/test-e2e/.gitignore
vendored
Normal file
@@ -0,0 +1,3 @@
|
||||
.nextflow
|
||||
nextflow
|
||||
build-info.properties
|
||||
11
nextflow/test-e2e/Dockerfile
Normal file
11
nextflow/test-e2e/Dockerfile
Normal file
@@ -0,0 +1,11 @@
|
||||
FROM amazoncorretto:17-al2023
|
||||
COPY .nextflow /.nextflow
|
||||
COPY nextflow /usr/bin/nextflow
|
||||
ENV NXF_HOME=/.nextflow
|
||||
RUN nextflow info
|
||||
RUN NXF_PLUGINS_DEFAULT=false nextflow plugin install xpack-amzn,xpack-google
|
||||
|
||||
FROM scratch
|
||||
COPY --from=0 /.nextflow /.nextflow
|
||||
COPY --from=0 /usr/bin/nextflow /usr/bin/nextflow
|
||||
|
||||
92
nextflow/test-e2e/run.sh
Normal file
92
nextflow/test-e2e/run.sh
Normal file
@@ -0,0 +1,92 @@
|
||||
#
|
||||
# Copyright 2013-2026, Seqera Labs
|
||||
#
|
||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||
# you may not use this file except in compliance with the License.
|
||||
# You may obtain a copy of the License at
|
||||
#
|
||||
# http://www.apache.org/licenses/LICENSE-2.0
|
||||
#
|
||||
# Unless required by applicable law or agreed to in writing, software
|
||||
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
# See the License for the specific language governing permissions and
|
||||
# limitations under the License.
|
||||
#
|
||||
|
||||
# cleanup
|
||||
rm -rf .nextflow && mkdir .nextflow
|
||||
# copy nextflow dependencies
|
||||
(cd ..
|
||||
export NXF_PLUGINS_DIR=$PWD/build/plugins
|
||||
make releaseInfo assemble installScratch
|
||||
)
|
||||
|
||||
# copy nextflow plugins
|
||||
cp -r ../build/plugins .nextflow/
|
||||
# copy nextflow launcher script
|
||||
cp ../nextflow . && chmod +x nextflow
|
||||
cp ../modules/nextflow/src/main/resources/META-INF/build-info.properties .
|
||||
source build-info.properties
|
||||
|
||||
if [ -z "$version" ]; then
|
||||
echo "Error: version is empty or missing"; exit 1
|
||||
fi
|
||||
if [ -z "$build" ]; then
|
||||
echo "Error: build is empty or missing"; exit 1
|
||||
fi
|
||||
if [ -z "$commitId" ]; then
|
||||
echo "Error: commitId is empty or missing"; exit 1
|
||||
fi
|
||||
|
||||
echo "version : $version"
|
||||
echo "build : $build"
|
||||
echo "commit id: $commitId"
|
||||
|
||||
#
|
||||
# build a scratch container image with assembled nextflow runtime and plugins
|
||||
#
|
||||
tag=${version}-${commitId}
|
||||
base=${base:-'public.cr.seqera.io/platform/nf-launcher:j17-base'}
|
||||
repository=${repository:-'public.cr.seqera.io/snapshots/nextflow-scratch'}
|
||||
image=${repository}:${tag}
|
||||
|
||||
docker buildx build \
|
||||
--platform linux/amd64 \
|
||||
--push \
|
||||
--progress=plain \
|
||||
--tag ${image} \
|
||||
--build-arg TARGETPLATFORM=linux/amd64 \
|
||||
.
|
||||
echo "Nextflow snapshots launcher image $image"
|
||||
|
||||
#
|
||||
# Create an ephemeral container with the scratch image and base Platform launcher image
|
||||
#
|
||||
launcher=$(wave -i ${base} --include ${image} --platform linux/amd64 --config-env NXF_HOME=/.nextflow --config-env NXF_SYNTAX_PARSER=v1)
|
||||
echo "Running Platform tests using image launcher: $launcher"
|
||||
|
||||
# determining the e2e test environment checking the $COMMIT_MESSAGE
|
||||
# that is set by GitHub action workflow. If it does not exist fallback
|
||||
# to the commit message in the git rpeo
|
||||
if [ -z "$COMMIT_MESSAGE" ]; then
|
||||
COMMIT_MESSAGE=$(git show -s --format='%s')
|
||||
echo "Commit message [from git]: $COMMIT_MESSAGE"
|
||||
else
|
||||
echo "Commit message [from gha]: $COMMIT_MESSAGE"
|
||||
fi
|
||||
if echo "$COMMIT_MESSAGE" | grep -q "\[e2e prod\]"; then
|
||||
ENVIRONMENT="production"
|
||||
else
|
||||
ENVIRONMENT="staging"
|
||||
fi
|
||||
|
||||
#
|
||||
# Finally launch the showcase automation
|
||||
# see https://github.com/seqeralabs/showcase-automation/
|
||||
echo "Launching seqera-showcase-${ENVIRONMENT}"
|
||||
gh workflow run \
|
||||
seqera-showcase-${ENVIRONMENT}.yml \
|
||||
--repo seqeralabs/showcase-automation \
|
||||
-f launch_container=${launcher}
|
||||
|
||||
Reference in New Issue
Block a user