Compare commits

..

2 Commits

Author SHA1 Message Date
a8d0af6d77 chore: gitignore and mise 2026-05-19 00:43:50 +02:00
7a68546afa fix: Dockerfile.dev that actually works 2026-05-19 00:43:10 +02:00
3 changed files with 59 additions and 3 deletions

1
.gitignore vendored Normal file
View File

@@ -0,0 +1 @@
cleanup-volume-claim.sh

4
mise.toml Normal file
View File

@@ -0,0 +1,4 @@
[tools]
go='1.25.6'
java = "21.0.2"
groovy = "4.0.28"

View File

@@ -1,12 +1,63 @@
FROM eclipse-temurin:17-jre FROM eclipse-temurin:17-jdk AS build
WORKDIR /opt/nextflow WORKDIR /opt/nextflow
COPY . /opt/nextflow COPY . /opt/nextflow
RUN chmod +x /opt/nextflow/launch.sh /opt/nextflow/nextflow || true RUN chmod +x ./gradlew ./launch.sh ./nextflow || true
RUN ./gradlew clean assemble exportClasspath
RUN mkdir -p /opt/nextflow-runtime/lib \
&& i=0; \
tr ':' '\n' < /opt/nextflow/.launch.classpath | while read -r path; do \
if [ -f "$path" ]; then \
name="$(basename "$path")"; \
target="/opt/nextflow-runtime/lib/$name"; \
runtime_path="/opt/nextflow/lib/$name"; \
if [ -e "$target" ]; then \
i=$((i+1)); \
target="/opt/nextflow-runtime/lib/${i}-$name"; \
runtime_path="/opt/nextflow/lib/${i}-$name"; \
fi; \
cp "$path" "$target"; \
echo "$runtime_path" >> /opt/nextflow-runtime/.launch.classpath.lines; \
fi; \
done \
&& paste -sd ':' /opt/nextflow-runtime/.launch.classpath.lines > /opt/nextflow-runtime/.launch.classpath
RUN mkdir -p /opt/nextflow-runtime/plugins \
&& cp /opt/nextflow/launch.sh /opt/nextflow-runtime/launch.sh \
&& cp /opt/nextflow/nextflow /opt/nextflow-runtime/nextflow \
&& cp -a /opt/nextflow/plugins/nf-k8s /opt/nextflow-runtime/plugins/nf-k8s
FROM eclipse-temurin:17-jre
WORKDIR /opt/nextflow
COPY --from=build /opt/nextflow-runtime /opt/nextflow
RUN chmod +x /opt/nextflow/launch.sh \
&& cp /opt/nextflow/launch.sh /opt/nextflow/nextflow \
&& chmod +x /opt/nextflow/nextflow \
&& echo "nextflow-dvfs-dev-image 0.1" > /opt/nextflow/DEV_IMAGE_MARKER
RUN mkdir -p /opt/nextflow/conf \
&& cat > /opt/nextflow/conf/scm <<'EOF'
providers {
mygitea {
platform = 'gitea'
server = 'https://gitea.kleine.eulenhexe.de'
endpoint = 'https://gitea.kleine.eulenhexe.de/api/v1'
}
}
EOF
ENV PATH="/opt/nextflow:${PATH}" ENV PATH="/opt/nextflow:${PATH}"
ENV NXF_HOME="/opt/nextflow/.nextflow" ENV NXF_HOME="/tmp/.nextflow"
ENV NXF_PLUGINS_MODE="dev"
ENV NXF_PLUGINS_DIR="/opt/nextflow/plugins"
ENV NXF_SCM_FILE="/opt/nextflow/conf/scm"
ENTRYPOINT ["/opt/nextflow/launch.sh"] ENTRYPOINT ["/opt/nextflow/launch.sh"]