neurogenomics / rworkflows

Continuous integration for R packages. 🔀 Automates testing ✅, documentation website building 📦, & containerised deployment 🐳.
https://neurogenomics.github.io/rworkflows/
73 stars 7 forks source link

Modified Dockerfile keeps failing (dev branch) #120

Open bschilder opened 10 months ago

bschilder commented 10 months ago

main version: https://github.com/neurogenomics/rworkflows/blob/09581233056d17fcf6d6ed357cb481855d4f7691/inst/templates/Dockerfile

dev version: https://github.com/neurogenomics/rworkflows/blob/4a4a612f74df8a886b48c8385a7f48073ac73ddb/inst/templates/Dockerfile

Getting some very vague errors on GHA logs: https://pipelinesghubeus24.actions.githubusercontent.com/NSMuTs1Efb2Yd6vGGXxlmWi1SqGbCkESeqfJA47Bnz4EB0LfTX/_apis/pipelines/1/runs/873/signedlogcontent/3?urlExpires=2023-11-17T18%3A03%3A20.9580236Z&urlSigningMethod=HMACV1&urlSignature=gNBAss%2FURIZMrXf6aGSEkCjaBzyaRUtq6Y8YZnROl38%3D

2023-11-17T13:53:26.9994907Z #5 647.8 ** testing if installed package keeps a record of temporary installation path
2023-11-17T13:53:26.9995006Z #5 647.8 * DONE (BiocPkgTools)
2023-11-17T13:53:26.9995141Z #5 647.8 
2023-11-17T13:53:26.9995288Z #5 647.8 The downloaded source packages are in
2023-11-17T13:53:26.9995476Z #5 647.8   ‘/tmp/Rtmp6Baos4/downloaded_packages’
2023-11-17T13:53:26.9995709Z #5 647.8 Error: Failed to install 'rworkflows' from local:
2023-11-17T13:53:26.9995885Z #5 647.8   ! System command 'R' failed
2023-11-17T13:53:26.9995979Z #5 647.8 Execution halted
2023-11-17T13:53:26.9997833Z #5 ERROR: process "/bin/sh -c Rscript -e 'options(download.file.method=\"libcurl\", crayon.enabled=TRUE, timeout=2000);                 if(!require(\"BiocManager\",quietly=TRUE)) install.packages(\"BiocManager\");                 repos <- BiocManager::repositories();                 remotes::install_local(repos=repos, dependencies=TRUE, build_vignettes=FALSE, upgrade=TRUE, force=TRUE);'" did not complete successfully: exit code: 1
2023-11-17T13:53:26.9997931Z ------
2023-11-17T13:53:26.9999442Z  > [8/9] RUN Rscript -e 'options(download.file.method="libcurl", crayon.enabled=TRUE, timeout=2000);                 if(!require("BiocManager",quietly=TRUE)) install.packages("BiocManager");                 repos <- BiocManager::repositories();                 remotes::install_local(repos=repos, dependencies=TRUE, build_vignettes=FALSE, upgrade=TRUE, force=TRUE);':
2023-11-17T13:53:26.9999536Z ------
2023-11-17T13:53:27.0001312Z process "/bin/sh -c Rscript -e 'options(download.file.method=\"libcurl\", crayon.enabled=TRUE, timeout=2000);                 if(!require(\"BiocManager\",quietly=TRUE)) install.packages(\"BiocManager\");                 repos <- BiocManager::repositories();                 remotes::install_local(repos=repos, dependencies=TRUE, build_vignettes=FALSE, upgrade=TRUE, force=TRUE);'" did not complete successfully: exit code: 1
2023-11-17T13:53:27.0001468Z Error: exit status 1
2023-11-17T13:53:27.0001549Z Usage:
2023-11-17T13:53:27.0001698Z   github-actions build-push [flags]
2023-11-17T13:53:27.0001705Z 
2023-11-17T13:53:27.0001780Z Flags:
2023-11-17T13:53:27.0001926Z   -h, --help   help for build-push
2023-11-17T13:53:27.0001934Z 

Can't seem to figure out why this is happening. I've checked the syntax a million times to ensure it's not something simple.

Main differences are:

1. systems deps now distributed via rworkflows::dependencies_linux()

...instead of:

RUN apt-get update && \
    apt-get install -y \
    git-core \
    libcurl4-openssl-dev \
    libgit2-dev \
    libicu-dev \
    libssl-dev \
    make pandoc \
    pandoc-citeproc \
    zlib1g-dev \
    xfonts-100dpi \
    xfonts-75dpi \
    biber \
    libsbml5-dev \
    qpdf \
    cmake \
    && apt-get clean \
    && rm -rf /var/lib/apt/lists/*

Maybe some of these cleanup steps are necessary when building the container? Though I think these might just be helping make the container a bit smaller in the end.

    && apt-get clean \
    && rm -rf /var/lib/apt/lists/*

Also, these are some extra deps I was previously including only in the Dockerfile:

 "git-core",
 "libicu-dev",
 "zlib1g-dev" ,
 "xfonts-100dpi",
 "xfonts-75dpi" ,
 "biber" ,
 "libsbml5-dev",
 "cmake",
 "pandoc" ,
 "pandoc-citeproc"

2. System dep installation now comes before ARG PKG setup steps, not after

But thought I'd tried both and neither works.

3. Changes to the rworkflows action