From 068e01801b81b0e21d43ffcbd91a165ba778b269 Mon Sep 17 00:00:00 2001 From: pat-s Date: Tue, 3 Sep 2024 16:56:15 +0200 Subject: [PATCH] rename pkg --- .woodpecker/build.yaml | 10 +++++----- DESCRIPTION | 2 +- README.md | 11 +++++++++-- man/archive_package.Rd | 3 ++- 4 files changed, 17 insertions(+), 9 deletions(-) diff --git a/.woodpecker/build.yaml b/.woodpecker/build.yaml index 2a0205e..b0f16f8 100644 --- a/.woodpecker/build.yaml +++ b/.woodpecker/build.yaml @@ -34,10 +34,10 @@ steps: # download latest package version (avoid having to rebuild image every time) # rscript_startup arg: required to pass down global option to future workers https://github.com/HenrikBengtsson/future/issues/134#issuecomment-2245666169 - git clone https://pat-s:$$git_ro_token@git.devxy.io/devxy/arm64-r-binaries.git . - - rm -rf /mnt/cache/R-pkgs/00LOCK-arm64-r-binaries /mnt/cache/R-pkgs/00LOCK-rBinaries + - rm -rf /mnt/cache/R-pkgs/00LOCK-arm64-r-binaries /mnt/cache/R-pkgs/00LOCK-bincraftR # for some reason this one is often corrupt on redhat-9 - rm -rf /mnt/cache/R-pkgs/RPostgres /mnt/cache/pkgcache/R/pkgcache - - R -q -e 'devtools::install(); packageVersion("rBinaries")' + - R -q -e 'devtools::install(); packageVersion("bincraftR")' - mkdir -p /root/.R && /bin/bash -c 'echo -e "CXX_STD = CXX14\nCC=ccache gcc\nCPP=ccache gcc\nCXX=ccache g++\nCXX11=ccache g++\nCXX14=ccache g++\nCXX17=ccache g++\nF77=ccache /usr/bin/gfortran\nFC=ccache /usr/bin/gfortran" >> /root/.R/Makevars' # manually install some packages into the cache so that some builds don't fail # Hmisc -> ABCanalysis @@ -45,7 +45,7 @@ steps: # more complicated system dependencies which pak cannot resolve - mkdir -p /mnt/cache/pkgcache /mnt/cache/R-pkgs /mnt/cache/ccache /mnt/cache/packages # set additional repos: important as otherwise some packages cannot be resolved (e.g. INLA). Also: setting our own binary repos so we can make use of them for dep installation at some point - - R -q -e 'options(crayon.enabled = TRUE, Ncpus = 4, future.globals.onReference = NULL, repos = structure(c(getOption("repos"),INLA="https://inla.r-inla-download.org/R/stable"))); pkgs = tools::CRAN_package_db()[[1]][${BLOCK}]; pkgs = setdiff(pkgs, c("biplotbootGUI", "cncaGUI", "dynBiplotGUI", "ade4TkGUI", "BlockmodelingGUI", "cncaGUI", "EventDetectGUI", "irtGUI", "KappaGUI", "magickGUI", "miniGUI", "multibiplotGUI", "TextMiningGUI", "later", "RclusTool", "Rcmdr", "RcmdrMisc", "RcmdrPlugin.aRnova", "RcmdrPlugin.BiclustGUI", "RcmdrPlugin.BWS1", "RcmdrPlugin.BWS2", "RcmdrPlugin.BWS3", "RcmdrPlugin.cpd", "RcmdrPlugin.DCCV", "RcmdrPlugin.DCE", "RcmdrPlugin.depthTools", "RcmdrPlugin.DoE", "RcmdrPlugin.EACSPIR", "RcmdrPlugin.EBM", "RcmdrPlugin.EcoVirtual", "RcmdrPlugin.Export", "RcmdrPlugin.EZR", "RcmdrPlugin.FactoMineR", "RcmdrPlugin.GWRM", "RcmdrPlugin.HH", "RcmdrPlugin.KMggplot2", "RcmdrPlugin.MA", "RcmdrPlugin.MPAStats", "RcmdrPlugin.NMBU", "RcmdrPlugin.orloca", "RcmdrPlugin.PcaRobust", "RcmdrPlugin.RiskDemo", "RcmdrPlugin.RMTCJags", "RcmdrPlugin.ROC", "RcmdrPlugin.sos" , "RcmdrPlugin.survival", "RcmdrPlugin.TeachingDemos", "RcmdrPlugin.TeachStat", "RcmdrPlugin.temis", "RcmdrPlugin.UCA" , "RcmdrPlugin.WorldFlora", "sf", "StratigrapheR", "tcltk2", "TVMM", "uHMM", "RInno")); library(rBinaries); future::plan("multisession", workers = 4, rscript_startup = quote(options(crayon.enabled = TRUE))); foo = lapply(pkgs, function(x) build_binary_package(x, build_for_minor=FALSE, debug = FALSE, force = T, platform = "${PLATFORM}"))' + - R -q -e 'options(crayon.enabled = TRUE, Ncpus = 4, future.globals.onReference = NULL, repos = structure(c(getOption("repos"),INLA="https://inla.r-inla-download.org/R/stable"))); pkgs = tools::CRAN_package_db()[[1]][${BLOCK}]; pkgs = setdiff(pkgs, c("biplotbootGUI", "cncaGUI", "dynBiplotGUI", "ade4TkGUI", "BlockmodelingGUI", "cncaGUI", "EventDetectGUI", "irtGUI", "KappaGUI", "magickGUI", "miniGUI", "multibiplotGUI", "TextMiningGUI", "later", "RclusTool", "Rcmdr", "RcmdrMisc", "RcmdrPlugin.aRnova", "RcmdrPlugin.BiclustGUI", "RcmdrPlugin.BWS1", "RcmdrPlugin.BWS2", "RcmdrPlugin.BWS3", "RcmdrPlugin.cpd", "RcmdrPlugin.DCCV", "RcmdrPlugin.DCE", "RcmdrPlugin.depthTools", "RcmdrPlugin.DoE", "RcmdrPlugin.EACSPIR", "RcmdrPlugin.EBM", "RcmdrPlugin.EcoVirtual", "RcmdrPlugin.Export", "RcmdrPlugin.EZR", "RcmdrPlugin.FactoMineR", "RcmdrPlugin.GWRM", "RcmdrPlugin.HH", "RcmdrPlugin.KMggplot2", "RcmdrPlugin.MA", "RcmdrPlugin.MPAStats", "RcmdrPlugin.NMBU", "RcmdrPlugin.orloca", "RcmdrPlugin.PcaRobust", "RcmdrPlugin.RiskDemo", "RcmdrPlugin.RMTCJags", "RcmdrPlugin.ROC", "RcmdrPlugin.sos" , "RcmdrPlugin.survival", "RcmdrPlugin.TeachingDemos", "RcmdrPlugin.TeachStat", "RcmdrPlugin.temis", "RcmdrPlugin.UCA" , "RcmdrPlugin.WorldFlora", "sf", "StratigrapheR", "tcltk2", "TVMM", "uHMM", "RInno")); library(bincraftR); future::plan("multisession", workers = 4, rscript_startup = quote(options(crayon.enabled = TRUE))); foo = lapply(pkgs, function(x) build_binary_package(x, build_for_minor=FALSE, debug = FALSE, force = T, platform = "${PLATFORM}"))' backend_options: kubernetes: ### PROD @@ -85,10 +85,10 @@ steps: # commands: # # download latest package version (avoid having to rebuild image every time) # # rscript_startup arg: required to pass down global option to future workers https://github.com/HenrikBengtsson/future/issues/134#issuecomment-2245666169 - # - R -q -e 'pak::local_install(); packageVersion("rBinaries")' + # - R -q -e 'pak::local_install(); packageVersion("bincraftR")' # - R -q -e 'pak::pak(c("dyfanjones/s3fs", "pat-s/desc@description-from-remote", "pat-s/cranlike@s3"))' # - cd /mnt/cache/packages - # - R -q -e 'options(crayon.enabled = TRUE); library(rBinaries); upload_package_index()' + # - R -q -e 'options(crayon.enabled = TRUE); library(bincraftR); upload_package_index()' # backend_options: # kubernetes: # resources: diff --git a/DESCRIPTION b/DESCRIPTION index 135e251..f042f2e 100644 --- a/DESCRIPTION +++ b/DESCRIPTION @@ -1,4 +1,4 @@ -Package: rBinaries +Package: bincraftR Title: Toolbox for building R package binaries on Linux Version: 0.0.0.9000 Authors@R: diff --git a/README.md b/README.md index fb48e34..c1b0da6 100644 --- a/README.md +++ b/README.md @@ -2,7 +2,7 @@ ## Workflow -Most of the work is done through the R package `rBinaries`. +Most of the work is done through the R package `bincraftR`. - `build_binary_package()` - `install_system_dependencies()` @@ -146,4 +146,11 @@ Dependency not available: Either because the dependency was not declared or erro ## Packages skipped on purpose -- `biplotbootGUI` - requires Bwidget which is hardly installable on any distribution and causes a lot of issues due to the need of a virtual frame buffer \ No newline at end of file +- `biplotbootGUI` - requires Bwidget which is hardly installable on any distribution and causes a lot of issues due to the need of a virtual frame buffer + + +## CDN + +- Perma-cache enabled for three different regions (DE, US, Asia) + smart cache for other edge servers +- `CacheControl = "no-cache"` for all PACKAGES* files to ensure users always get the latest version (as these files change daily) +- diff --git a/man/archive_package.Rd b/man/archive_package.Rd index a38cca6..fe58177 100644 --- a/man/archive_package.Rd +++ b/man/archive_package.Rd @@ -12,7 +12,8 @@ archive_package( local_build_root = ".", endpoint = "https://s3.eu-central-003.backblazeb2.com", region = "eu-central-003", - bucket = "devxy-arm64-r-binaries" + bucket = "devxy-arm64-r-binaries", + pause = NULL ) } \description{