From fe9eb4d4f85b90ffde4f386d45413ef49cf2c35d Mon Sep 17 00:00:00 2001
From: Dominik Brilhaus <brilhaus@nfdi4plants.org>
Date: Tue, 6 Aug 2024 15:33:50 +0200
Subject: [PATCH] trying to use renv docker with cwl

---
 workflows/R-renv-docker/Dockerfile           |  9 +++---
 workflows/R-renv-docker/docker-test          | 14 ++++++++++
 workflows/R-renv-docker/renv-test-docker.cwl | 29 ++++++++++++++++++++
 workflows/R-renv-docker/renv-test.R          | 12 --------
 workflows/R-renv-docker/test                 | 14 ----------
 5 files changed, 48 insertions(+), 30 deletions(-)
 create mode 100644 workflows/R-renv-docker/docker-test
 create mode 100644 workflows/R-renv-docker/renv-test-docker.cwl
 delete mode 100644 workflows/R-renv-docker/renv-test.R
 delete mode 100644 workflows/R-renv-docker/test

diff --git a/workflows/R-renv-docker/Dockerfile b/workflows/R-renv-docker/Dockerfile
index 81d77b9..ecb28d3 100644
--- a/workflows/R-renv-docker/Dockerfile
+++ b/workflows/R-renv-docker/Dockerfile
@@ -1,10 +1,11 @@
 ## Use pre-built base image coming with R and required system libraries
-
 FROM rstudio/r-base:4.3-jammy
 
 ## Install package `renv` to Docker image
 RUN R -e "install.packages('renv', repos = c(CRAN = 'https://cloud.r-project.org'))"
 
-## pull in a manifest file and restore it
-COPY renv.lock ./
-RUN R -e 'renv::restore()'
\ No newline at end of file
+## Pull in renv.lock and restore it
+COPY *renv.lock ./
+RUN R -e "renv::restore()"
+
+
diff --git a/workflows/R-renv-docker/docker-test b/workflows/R-renv-docker/docker-test
new file mode 100644
index 0000000..9776b42
--- /dev/null
+++ b/workflows/R-renv-docker/docker-test
@@ -0,0 +1,14 @@
+"x"
+"1" "list(platform = \"x86_64-pc-linux-gnu\", arch = \"x86_64\", os = \"linux-gnu\", system = \"x86_64, linux-gnu\", status = \"\", major = \"4\", minor = \"3.3\", year = \"2024\", month = \"02\", day = \"29\", `svn rev` = \"86002\", language = \"R\", version.string = \"R version 4.3.3 (2024-02-29)\", nickname = \"Angel Food Cake\")"
+"2" "x86_64-pc-linux-gnu (64-bit)"
+"3" "LC_CTYPE=C.UTF-8;LC_NUMERIC=C;LC_TIME=C.UTF-8;LC_COLLATE=C.UTF-8;LC_MONETARY=C.UTF-8;LC_MESSAGES=C.UTF-8;LC_PAPER=C.UTF-8;LC_NAME=C;LC_ADDRESS=C;LC_TELEPHONE=C;LC_MEASUREMENT=C.UTF-8;LC_IDENTIFICATION=C"
+"4" "UTC"
+"5" "system (glibc)"
+"6" "Ubuntu 22.04.4 LTS"
+"7" "c(\"Mersenne-Twister\", \"Inversion\", \"Rejection\")"
+"8" "c(\"stats\", \"graphics\", \"grDevices\", \"utils\", \"datasets\", \"methods\", \"base\")"
+"9" "list(compiler = list(Package = \"compiler\", Version = \"4.3.3\", Priority = \"base\", Title = \"The R Compiler Package\", Author = \"Luke Tierney <luke-tierney@uiowa.edu>\", Maintainer = \"R Core Team <do-use-Contact-address@r-project.org>\", Contact = \"R-help mailing list <r-help@r-project.org>\", Description = \"Byte code compiler for R.\", License = \"Part of R 4.3.3\", Built = \"R 4.3.3; ; 2024-08-01 23:55:49 UTC; unix\"))"
+"10" "default"
+"11" "/usr/lib/x86_64-linux-gnu/openblas-pthread/libblas.so.3"
+"12" "/usr/lib/x86_64-linux-gnu/openblas-pthread/libopenblasp-r0.3.20.so"
+"13" "3.10.0"
diff --git a/workflows/R-renv-docker/renv-test-docker.cwl b/workflows/R-renv-docker/renv-test-docker.cwl
new file mode 100644
index 0000000..907a5f6
--- /dev/null
+++ b/workflows/R-renv-docker/renv-test-docker.cwl
@@ -0,0 +1,29 @@
+#!/usr/bin/env cwl-runner
+cwlVersion: v1.2
+class: CommandLineTool
+
+requirements:
+    ShellCommandRequirement: {}
+    InitialWorkDirRequirement:
+      listing:
+        - entryname: renv.lock
+          entry:
+            $include: "./renv.lock"
+    DockerRequirement:
+        dockerFile: {$include: "./Dockerfile"}
+        dockerImageId: "renv-docker-test"
+
+inputs: []
+
+outputs:
+    outfile:
+        type: File
+        outputBinding:
+            glob: "docker-test"
+
+baseCommand: [R]
+
+arguments:
+    - valueFrom: -e 'write.table(as.character(sessionInfo()),file="docker-test")'
+      shellQuote: false
+
diff --git a/workflows/R-renv-docker/renv-test.R b/workflows/R-renv-docker/renv-test.R
deleted file mode 100644
index b6b1fcf..0000000
--- a/workflows/R-renv-docker/renv-test.R
+++ /dev/null
@@ -1,12 +0,0 @@
-
-
-
-
-library("BiocManager")
-library("sleuth")
-
-print("hello")
-x=as.character(sessionInfo())
-
-write.table(as.character(sessionInfo()),file="test")
-
diff --git a/workflows/R-renv-docker/test b/workflows/R-renv-docker/test
deleted file mode 100644
index 03146a8..0000000
--- a/workflows/R-renv-docker/test
+++ /dev/null
@@ -1,14 +0,0 @@
-"x"
-"1" "list(platform = \"x86_64-apple-darwin20\", arch = \"x86_64\", os = \"darwin20\", system = \"x86_64, darwin20\", status = \"\", major = \"4\", minor = \"4.1\", year = \"2024\", month = \"06\", day = \"14\", `svn rev` = \"86737\", language = \"R\", version.string = \"R version 4.4.1 (2024-06-14)\", nickname = \"Race for Your Life\")"
-"2" "x86_64-apple-darwin20"
-"3" "C"
-"4" "Europe/Berlin"
-"5" "internal"
-"6" "macOS Sonoma 14.5"
-"7" "c(\"Mersenne-Twister\", \"Inversion\", \"Rejection\")"
-"8" "c(\"stats\", \"graphics\", \"grDevices\", \"utils\", \"datasets\", \"methods\", \"base\")"
-"9" "list(compiler = list(Package = \"compiler\", Version = \"4.4.1\", Priority = \"base\", Title = \"The R Compiler Package\", Author = \"Luke Tierney <luke-tierney@uiowa.edu>\", Maintainer = \"R Core Team <do-use-Contact-address@r-project.org>\", Contact = \"R-help mailing list <r-help@r-project.org>\", Description = \"Byte code compiler for R.\", License = \"Part of R 4.4.1\", Built = \"R 4.4.1; ; 2024-06-15 17:30:44 UTC; unix\"))"
-"10" "default"
-"11" "/Library/Frameworks/R.framework/Versions/4.4-x86_64/Resources/lib/libRblas.0.dylib"
-"12" "/Library/Frameworks/R.framework/Versions/4.4-x86_64/Resources/lib/libRlapack.dylib"
-"13" "3.12.0"
-- 
GitLab