cdn caching
This commit is contained in:
parent
76c99fad23
commit
657d368ca3
16 changed files with 384 additions and 369 deletions
|
|
@ -3,8 +3,6 @@ when:
|
|||
evaluate: 'build == "all"'
|
||||
- event: manual
|
||||
evaluate: 'build == "alpine-321-amd64"'
|
||||
- event: manual
|
||||
evaluate: 'build == "alpine-321-amd64-1"'
|
||||
- event: manual
|
||||
evaluate: 'build == "all-amd64"'
|
||||
|
||||
|
|
|
|||
|
|
@ -3,8 +3,6 @@ when:
|
|||
evaluate: 'build == "all"'
|
||||
- event: manual
|
||||
evaluate: 'build == "alpine-321-arm64"'
|
||||
- event: manual
|
||||
evaluate: 'build == "alpine-321-arm64-1"'
|
||||
- event: manual
|
||||
evaluate: 'build == "all-arm64"'
|
||||
|
||||
|
|
|
|||
107
.woodpecker/build-alpine-321-amd64-9-single.yaml
Normal file
107
.woodpecker/build-alpine-321-amd64-9-single.yaml
Normal file
|
|
@ -0,0 +1,107 @@
|
|||
when:
|
||||
- event: manual
|
||||
evaluate: 'build == "all"'
|
||||
- event: manual
|
||||
evaluate: 'build == "alpine-321-amd64"'
|
||||
- event: manual
|
||||
evaluate: 'build == "alpine-321-amd64-9"'
|
||||
- event: manual
|
||||
evaluate: 'build == "all-amd64"'
|
||||
|
||||
skip_clone: true
|
||||
|
||||
steps:
|
||||
- name: 'Build binaries'
|
||||
image: docker.io/devxygmbh/amd64-binaries-r-alpine-321
|
||||
pull: true
|
||||
environment:
|
||||
RED_HAT_DEV_PW:
|
||||
from_secret: red_hat_dev_pw
|
||||
AWS_ACCESS_KEY_ID:
|
||||
from_secret: aws_access_key_id
|
||||
AWS_SECRET_ACCESS_KEY:
|
||||
from_secret: aws_secret_access_key
|
||||
PGPASS:
|
||||
from_secret: pgpass
|
||||
GIT_RO_TOKEN:
|
||||
from_secret: git_ro_token
|
||||
GITHUB_PAT:
|
||||
from_secret: github_pat
|
||||
# normal env vars
|
||||
GIT_USER: pat-s
|
||||
# set the location of the 'pkgcache' cache dir which persists the R package dependencies needed to install the packages themselves
|
||||
R_PKG_CACHE_DIR: /mnt/cache/pkgcache
|
||||
R_LIBS_USER: /mnt/cache/R-pkgs
|
||||
CCACHE_DIR: /mnt/cache/ccache
|
||||
PLATFORM: alpine-321
|
||||
BLOCK_START: 17601
|
||||
BLOCK_END: 19800
|
||||
ARCH: amd64
|
||||
NCPUS: 2
|
||||
STRATEGY: sequential
|
||||
volumes:
|
||||
- amd64-binaries-r-dep-cache-alpine-321:/mnt/cache
|
||||
commands:
|
||||
- git clone https://pat-s:$$GIT_RO_TOKEN@git.devxy.io/devxy/r-pkg-binaries.git .
|
||||
- R -q -e 'packageVersion("bincraftR")'
|
||||
- mkdir -p /mnt/cache/pkgcache /mnt/cache/R-pkgs /mnt/cache/ccache /mnt/cache/packages
|
||||
# Windows-only: 'RInno', 'KeyboardSimulator', 'R2PPT', 'RWinEdt', 'blatr', 'excel.link', 'spectrino', 'taskscheduleR', 'MDSGUI', 'BiplotGUI', 'R2wd'
|
||||
- xvfb-run R -q -e "options(crayon.enabled = TRUE, Ncpus = $NCPUS, future.globals.onReference = NULL); pak::sysreqs_db_update(); if (file.exists(sprintf('/mnt/cache/%s.txt', Sys.getenv('CI_WORKFLOW_NAME')))) block_start = as.character(data.table::fread(sprintf('/mnt/cache/%s.txt', Sys.getenv('CI_WORKFLOW_NAME')), sep = '\t')) else block_start = Sys.getenv('BLOCK_START'); pkgs = as.character(available.packages('cloud.r-project.org/src/contrib')[, 'Package'])[block_start:$BLOCK_END]; pkgs = setdiff(pkgs, c('RInno', 'MediaNews', 'DoE.base', 'DoE.wrapper', 'FrF2', 'FrF2.catlg128', 'eha', 'gRain', 'gRbase', 'doBy', 'IDPmisc', 'RVAideMemoire', 'pbkrtest', 'seewave', 'RInno', 'KeyboardSimulator', 'R2PPT', 'RWinEdt', 'blatr', 'excel.link', 'spectrino', 'taskscheduleR', 'MDSGUI', 'BiplotGUI', 'R2wd')); progressr::handlers('cli'); progressr::handlers(global = TRUE); foo = lapply(pkgs, function(x) bincraftR::build_binary_package(x, debug = FALSE, force = TRUE, platform = 'alpine-321'))"
|
||||
### Manual pkg builds
|
||||
# webshot2, tabledown, TestAnaAPP, trekcolors, Spectran, SimNPH, RPushbullet, SimDesign, simCAT, SIAmodules, shinytest2, ShinyItemAnalysis, shinyIRT, shiny.benchmark, scDIFtest, RSP, qtkit, PROsetta, prettifyAddins, PerFit, outlierensembles, nomnoml, mxfda, MultBiplotR, mstDIF, mdsr, makepipe, lordif, kequate, jstager, jrt, irtreliability, irtQ, irtpwr, irtGUI, irtawsi, GRShiny, GPCMlasso, googletraffic, giacR, flps, flow, faoutlier, equateIRT, EnrichIntersect, EFA.dimensions, DFIT, D3mirt, ctgdist, CoTiMA, ConvertPar, bscui, BifactorIndicesCalculator, autoFC, airt: wait for https://github.com/rstudio/r-system-requirements/pull/178
|
||||
# RInno: Windows-only
|
||||
# skedastic: waiting for ROI.plugin.qpoases (https://gitlab.com/roigrp/solver/ROI.plugin.qpoases/-/issues/1)
|
||||
# rswipl: ccache issues: https://github.com/mgondan/rswipl/issues/3 -> solved
|
||||
# Rpoppler: https://github.com/rstudio/r-system-requirements/pull/179/
|
||||
# ROracle: sysdep missing -> create rule
|
||||
# ROI.plugin.qpoases: https://gitlab.com/roigrp/solver/ROI.plugin.qpoases/-/issues/1
|
||||
# ROI.plugin.cplex: checking for cplex... no -> requires propriatary software IBM Cplex
|
||||
# RmecabKo: fatal error: mecab.h: No such file or directory
|
||||
# rmarchingcubes: error: narrowing conversion of '-1' from 'int' to 'char' [-Wnarrowing] -> https://github.com/shwilks/rmarchingcubes/issues/3
|
||||
# RcppMeCab: /bin/bash: line 2: mecab-config: command not found -> https://github.com/rstudio/r-system-requirements/pull/180
|
||||
# Rcplex: checking for cplex... no -> requires propriatary software IBM Cplex
|
||||
# Rblpapi: Unknown architecture: aarch64. Exiting. -> https://github.com/Rblp/Rblpapi/issues/399
|
||||
# Rbeast: aarch64 issue -> https://github.com/zhaokg/Rbeast/issues/29
|
||||
# ravetools: checking for FFTW... configure: error: Package requirements (fftw3) were not met: -> fftw3 rule needed
|
||||
# Racmacs -> rmarchingcubes
|
||||
# minic: /usr/include/c++/13/bits/stl_algo.h:5805:5: note: template argument deduction/substitution failed:
|
||||
# KSgeneral -> aligned_mem.h:6:10: fatal error: mm_malloc.h: No such file or directory -> https://github.com/d-dimitrova/KSgeneral/issues/1
|
||||
# gpuR -> /usr/bin/ld: cannot find -lOpenCL: No such file or directory -> no GPU avail
|
||||
# clrng -> gpuR
|
||||
# BRugs: configure: error: OpenBUGS 3.2.2 or later not found. as it is only one package, not doing anything
|
||||
# gamstransfer -> gdx/src/gdlib/gmsstrm.cpp:85:70: error: narrowing conversion of '-1' from 'std::char_traits<char>::int_type' {aka 'int'} to 'char' [-Wnarrowing] -> https://github.com/GAMS-dev/transfer-r/issues/2
|
||||
# filters: <simpleError: `target` must be a character vector containing no `NA` values.> -> email sent
|
||||
# magickGUI, biplotbootGUI
|
||||
# ymd (alpine, voi)
|
||||
# tfrmtbuilder -> V8 (alpine)
|
||||
# Rcmdr (alpine)
|
||||
# readstata13 (alpine)
|
||||
# - xvfb-run R -q -e 'options(crayon.enabled = TRUE, Ncpus = $NCPUS, future.globals.onReference = NULL); pkgs = c( "RcmdrPlugin.orloca", "RcmdrPlugin.PcaRobust", "RcmdrPlugin.RiskDemo", "RcmdrPlugin.RMTCJags", "RcmdrPlugin.ROC", "RcmdrPlugin.sos" , "RcmdrPlugin.survival", "RcmdrPlugin.TeachingDemos", "RcmdrPlugin.TeachStat", "RcmdrPlugin.temis", "RcmdrPlugin.UCA", "RcmdrPlugin.WorldFlora", "streamDAG", "stan4bart", "snplinkage", "saeHB.panel.beta", "rTwig", "rswipl", "RPointCloud", "rPDBapi", "rolog", "rmcfs", "rjags", "ResultModelManager", "RcppCWB", "RcmdrPlugin.WorldFlora", "RcmdrPlugin.UCA", "RcmdrPlugin.temis", "RcmdrPlugin.TeachStat", "RcmdrPlugin.TeachingDemos", "RcmdrPlugin.survival", "RcmdrPlugin.sos", "RcmdrPlugin.ROC", "RcmdrPlugin.RMTCJags", "RcmdrPlugin.RiskDemo", "RcmdrPlugin.PcaRobust", "RclusTool", "Rbeast", "rayrender", "quanteda.textmodels", "polmineR", "plotBart", "NlinTS", "ndtv", "overtureR", "mathml", "magickGUI", "lgpr", "KappaGUI", "historicalborrow", "GSODR", "GRIDCOPULA", "googleAnalyticsR", "fluidsynth", "EventDetectGUI", "evalITR", "EBcoBART", "deeptrafo", "dbarts", "CRE", "countSTAR", "bartMan", "bartCause", "altmeta", "EthSEQ", "dartR.spatial", "dartR.sim", "gwid", "Mega2R", "priorCON", "prior3D", "MCARtest", "designmatch", "highs", "ROI.plugin.highs", "GPCMlasso"); library(bincraftR); options(progressr.enable = TRUE); foo = lapply(pkgs, function(x) build_binary_package(x, debug = FALSE, force = TRUE, platform = "amd64"))'
|
||||
backend_options:
|
||||
kubernetes:
|
||||
resources:
|
||||
requests:
|
||||
memory: 5Gi
|
||||
cpu: 1000m
|
||||
limits:
|
||||
memory: 20Gi
|
||||
cpu: 2000m
|
||||
nodeSelector:
|
||||
kubernetes.io/arch: amd64
|
||||
node.kubernetes.io/instance-type: AX42
|
||||
tolerations:
|
||||
- key: 'CI'
|
||||
operator: 'Equal'
|
||||
value: 'true'
|
||||
effect: 'NoSchedule'
|
||||
|
||||
- name: 'ntfy'
|
||||
image: binwiederhier/ntfy:v2.11.0
|
||||
when:
|
||||
- status: [failure]
|
||||
environment:
|
||||
NTFY_TOKEN:
|
||||
from_secret: ntfy_token
|
||||
commands: |
|
||||
BUILD_INDEX=$(cat build_index.txt)
|
||||
ntfy publish --tags=no_entry_sign --token $NTFY_TOKEN -t "Run '${CI_REPO}' failed at $BUILD_INDEX" --click="${CI_PIPELINE_URL}" --actions="view, Open build, ${CI_PIPELINE_URL}, clear=true;" ntfy.devxy.io/ci-builds Workflow: ${CI_WORKFLOW_NAME} Commit message: ${CI_COMMIT_MESSAGE} Commit Author: ${CI_COMMIT_AUTHOR}
|
||||
|
|
@ -3,8 +3,6 @@ when:
|
|||
evaluate: 'build == "all"'
|
||||
- event: manual
|
||||
evaluate: 'build == "alpine-321-amd64"'
|
||||
- event: manual
|
||||
evaluate: 'build == "alpine-321-amd64-9"'
|
||||
- event: manual
|
||||
evaluate: 'build == "all-amd64"'
|
||||
|
||||
|
|
|
|||
|
|
@ -14,29 +14,22 @@ depends_on:
|
|||
- alpine-321-arm64-install-deps
|
||||
|
||||
steps:
|
||||
- name: 'Warming up'
|
||||
image: busybox:latest
|
||||
failure: ignore
|
||||
commands:
|
||||
- sleep 300
|
||||
- echo 'Warmed Up'
|
||||
backend_options:
|
||||
kubernetes:
|
||||
resources:
|
||||
requests:
|
||||
memory: 13Gi
|
||||
cpu: 3000m
|
||||
limits:
|
||||
memory: 13Gi
|
||||
cpu: 3000m
|
||||
nodeSelector:
|
||||
kubernetes.io/arch: arm64
|
||||
node.kubernetes.io/instance-type: cax31
|
||||
tolerations:
|
||||
- key: 'CI'
|
||||
operator: 'Equal'
|
||||
value: 'true'
|
||||
effect: 'NoSchedule'
|
||||
# - name: 'Warming up'
|
||||
# image: busybox:latest
|
||||
# failure: ignore
|
||||
# commands:
|
||||
# - sleep 300
|
||||
# - echo 'Warmed Up'
|
||||
# backend_options:
|
||||
# kubernetes:
|
||||
# nodeSelector:
|
||||
# kubernetes.io/arch: arm64
|
||||
# node.kubernetes.io/instance-type: cax41
|
||||
# tolerations:
|
||||
# - key: 'CI'
|
||||
# operator: 'Equal'
|
||||
# value: 'true'
|
||||
# effect: 'NoSchedule'
|
||||
|
||||
- name: 'Build binaries'
|
||||
image: docker.io/devxygmbh/arm64-binaries-r-alpine-321
|
||||
|
|
@ -108,14 +101,14 @@ steps:
|
|||
kubernetes:
|
||||
resources:
|
||||
requests:
|
||||
memory: 10Gi
|
||||
memory: 5Gi
|
||||
cpu: 1000m
|
||||
limits:
|
||||
memory: 14Gi
|
||||
memory: 20Gi
|
||||
cpu: 2000m
|
||||
nodeSelector:
|
||||
kubernetes.io/arch: arm64
|
||||
node.kubernetes.io/instance-type: cax31
|
||||
node.kubernetes.io/instance-type: cax41
|
||||
tolerations:
|
||||
- key: 'CI'
|
||||
operator: 'Equal'
|
||||
|
|
|
|||
|
|
@ -12,31 +12,24 @@ skip_clone: true
|
|||
|
||||
depends_on:
|
||||
- alpine-321-arm64-install-deps
|
||||
|
||||
|
||||
steps:
|
||||
- name: 'Warming up'
|
||||
image: busybox:latest
|
||||
failure: ignore
|
||||
commands:
|
||||
- sleep 300
|
||||
- echo 'Warmed Up'
|
||||
backend_options:
|
||||
kubernetes:
|
||||
resources:
|
||||
requests:
|
||||
memory: 13Gi
|
||||
cpu: 3000m
|
||||
limits:
|
||||
memory: 13Gi
|
||||
cpu: 3000m
|
||||
nodeSelector:
|
||||
kubernetes.io/arch: arm64
|
||||
node.kubernetes.io/instance-type: cax31
|
||||
tolerations:
|
||||
- key: 'CI'
|
||||
operator: 'Equal'
|
||||
value: 'true'
|
||||
effect: 'NoSchedule'
|
||||
# - name: 'Warming up'
|
||||
# image: busybox:latest
|
||||
# failure: ignore
|
||||
# commands:
|
||||
# - sleep 300
|
||||
# - echo 'Warmed Up'
|
||||
# backend_options:
|
||||
# kubernetes:
|
||||
# nodeSelector:
|
||||
# kubernetes.io/arch: arm64
|
||||
# node.kubernetes.io/instance-type: cax41
|
||||
# tolerations:
|
||||
# - key: 'CI'
|
||||
# operator: 'Equal'
|
||||
# value: 'true'
|
||||
# effect: 'NoSchedule'
|
||||
|
||||
- name: 'Build binaries'
|
||||
image: docker.io/devxygmbh/arm64-binaries-r-alpine-321
|
||||
|
|
@ -108,14 +101,14 @@ steps:
|
|||
kubernetes:
|
||||
resources:
|
||||
requests:
|
||||
memory: 10Gi
|
||||
memory: 5Gi
|
||||
cpu: 1000m
|
||||
limits:
|
||||
memory: 14Gi
|
||||
memory: 20Gi
|
||||
cpu: 2000m
|
||||
nodeSelector:
|
||||
kubernetes.io/arch: arm64
|
||||
node.kubernetes.io/instance-type: cax31
|
||||
node.kubernetes.io/instance-type: cax41
|
||||
tolerations:
|
||||
- key: 'CI'
|
||||
operator: 'Equal'
|
||||
|
|
|
|||
|
|
@ -14,29 +14,22 @@ depends_on:
|
|||
- alpine-321-arm64-install-deps
|
||||
|
||||
steps:
|
||||
- name: 'Warming up'
|
||||
image: busybox:latest
|
||||
failure: ignore
|
||||
commands:
|
||||
- sleep 300
|
||||
- echo 'Warmed Up'
|
||||
backend_options:
|
||||
kubernetes:
|
||||
resources:
|
||||
requests:
|
||||
memory: 13Gi
|
||||
cpu: 3000m
|
||||
limits:
|
||||
memory: 13Gi
|
||||
cpu: 3000m
|
||||
nodeSelector:
|
||||
kubernetes.io/arch: arm64
|
||||
node.kubernetes.io/instance-type: cax31
|
||||
tolerations:
|
||||
- key: 'CI'
|
||||
operator: 'Equal'
|
||||
value: 'true'
|
||||
effect: 'NoSchedule'
|
||||
# - name: 'Warming up'
|
||||
# image: busybox:latest
|
||||
# failure: ignore
|
||||
# commands:
|
||||
# - sleep 300
|
||||
# - echo 'Warmed Up'
|
||||
# backend_options:
|
||||
# kubernetes:
|
||||
# nodeSelector:
|
||||
# kubernetes.io/arch: arm64
|
||||
# node.kubernetes.io/instance-type: cax41
|
||||
# tolerations:
|
||||
# - key: 'CI'
|
||||
# operator: 'Equal'
|
||||
# value: 'true'
|
||||
# effect: 'NoSchedule'
|
||||
|
||||
- name: 'Build binaries'
|
||||
image: docker.io/devxygmbh/arm64-binaries-r-alpine-321
|
||||
|
|
@ -109,14 +102,14 @@ steps:
|
|||
kubernetes:
|
||||
resources:
|
||||
requests:
|
||||
memory: 10Gi
|
||||
memory: 5Gi
|
||||
cpu: 1000m
|
||||
limits:
|
||||
memory: 14Gi
|
||||
memory: 20Gi
|
||||
cpu: 2000m
|
||||
nodeSelector:
|
||||
kubernetes.io/arch: arm64
|
||||
node.kubernetes.io/instance-type: cax31
|
||||
node.kubernetes.io/instance-type: cax41
|
||||
tolerations:
|
||||
- key: 'CI'
|
||||
operator: 'Equal'
|
||||
|
|
|
|||
|
|
@ -14,29 +14,22 @@ depends_on:
|
|||
- alpine-321-arm64-install-deps
|
||||
|
||||
steps:
|
||||
- name: 'Warming up'
|
||||
image: busybox:latest
|
||||
failure: ignore
|
||||
commands:
|
||||
- sleep 300
|
||||
- echo 'Warmed Up'
|
||||
backend_options:
|
||||
kubernetes:
|
||||
resources:
|
||||
requests:
|
||||
memory: 13Gi
|
||||
cpu: 3000m
|
||||
limits:
|
||||
memory: 13Gi
|
||||
cpu: 3000m
|
||||
nodeSelector:
|
||||
kubernetes.io/arch: arm64
|
||||
node.kubernetes.io/instance-type: cax31
|
||||
tolerations:
|
||||
- key: 'CI'
|
||||
operator: 'Equal'
|
||||
value: 'true'
|
||||
effect: 'NoSchedule'
|
||||
# - name: 'Warming up'
|
||||
# image: busybox:latest
|
||||
# failure: ignore
|
||||
# commands:
|
||||
# - sleep 300
|
||||
# - echo 'Warmed Up'
|
||||
# backend_options:
|
||||
# kubernetes:
|
||||
# nodeSelector:
|
||||
# kubernetes.io/arch: arm64
|
||||
# node.kubernetes.io/instance-type: cax41
|
||||
# tolerations:
|
||||
# - key: 'CI'
|
||||
# operator: 'Equal'
|
||||
# value: 'true'
|
||||
# effect: 'NoSchedule'
|
||||
|
||||
- name: 'Build binaries'
|
||||
image: docker.io/devxygmbh/arm64-binaries-r-alpine-321
|
||||
|
|
@ -108,14 +101,14 @@ steps:
|
|||
kubernetes:
|
||||
resources:
|
||||
requests:
|
||||
memory: 10Gi
|
||||
memory: 5Gi
|
||||
cpu: 1000m
|
||||
limits:
|
||||
memory: 14Gi
|
||||
memory: 20Gi
|
||||
cpu: 2000m
|
||||
nodeSelector:
|
||||
kubernetes.io/arch: arm64
|
||||
node.kubernetes.io/instance-type: cax31
|
||||
node.kubernetes.io/instance-type: cax41
|
||||
tolerations:
|
||||
- key: 'CI'
|
||||
operator: 'Equal'
|
||||
|
|
|
|||
|
|
@ -12,31 +12,24 @@ skip_clone: true
|
|||
|
||||
depends_on:
|
||||
- alpine-321-arm64-install-deps
|
||||
|
||||
|
||||
steps:
|
||||
- name: 'Warming up'
|
||||
image: busybox:latest
|
||||
failure: ignore
|
||||
commands:
|
||||
- sleep 300
|
||||
- echo 'Warmed Up'
|
||||
backend_options:
|
||||
kubernetes:
|
||||
resources:
|
||||
requests:
|
||||
memory: 13Gi
|
||||
cpu: 3000m
|
||||
limits:
|
||||
memory: 13Gi
|
||||
cpu: 3000m
|
||||
nodeSelector:
|
||||
kubernetes.io/arch: arm64
|
||||
node.kubernetes.io/instance-type: cax31
|
||||
tolerations:
|
||||
- key: 'CI'
|
||||
operator: 'Equal'
|
||||
value: 'true'
|
||||
effect: 'NoSchedule'
|
||||
# - name: 'Warming up'
|
||||
# image: busybox:latest
|
||||
# failure: ignore
|
||||
# commands:
|
||||
# - sleep 300
|
||||
# - echo 'Warmed Up'
|
||||
# backend_options:
|
||||
# kubernetes:
|
||||
# nodeSelector:
|
||||
# kubernetes.io/arch: arm64
|
||||
# node.kubernetes.io/instance-type: cax41
|
||||
# tolerations:
|
||||
# - key: 'CI'
|
||||
# operator: 'Equal'
|
||||
# value: 'true'
|
||||
# effect: 'NoSchedule'
|
||||
|
||||
- name: 'Build binaries'
|
||||
image: docker.io/devxygmbh/arm64-binaries-r-alpine-321
|
||||
|
|
@ -108,14 +101,14 @@ steps:
|
|||
kubernetes:
|
||||
resources:
|
||||
requests:
|
||||
memory: 10Gi
|
||||
memory: 5Gi
|
||||
cpu: 1000m
|
||||
limits:
|
||||
memory: 14Gi
|
||||
memory: 20Gi
|
||||
cpu: 2000m
|
||||
nodeSelector:
|
||||
kubernetes.io/arch: arm64
|
||||
node.kubernetes.io/instance-type: cax31
|
||||
node.kubernetes.io/instance-type: cax41
|
||||
tolerations:
|
||||
- key: 'CI'
|
||||
operator: 'Equal'
|
||||
|
|
|
|||
|
|
@ -12,31 +12,24 @@ skip_clone: true
|
|||
|
||||
depends_on:
|
||||
- alpine-321-arm64-install-deps
|
||||
|
||||
|
||||
steps:
|
||||
- name: 'Warming up'
|
||||
image: busybox:latest
|
||||
failure: ignore
|
||||
commands:
|
||||
- sleep 300
|
||||
- echo 'Warmed Up'
|
||||
backend_options:
|
||||
kubernetes:
|
||||
resources:
|
||||
requests:
|
||||
memory: 13Gi
|
||||
cpu: 3000m
|
||||
limits:
|
||||
memory: 13Gi
|
||||
cpu: 3000m
|
||||
nodeSelector:
|
||||
kubernetes.io/arch: arm64
|
||||
node.kubernetes.io/instance-type: cax31
|
||||
tolerations:
|
||||
- key: 'CI'
|
||||
operator: 'Equal'
|
||||
value: 'true'
|
||||
effect: 'NoSchedule'
|
||||
# - name: 'Warming up'
|
||||
# image: busybox:latest
|
||||
# failure: ignore
|
||||
# commands:
|
||||
# - sleep 300
|
||||
# - echo 'Warmed Up'
|
||||
# backend_options:
|
||||
# kubernetes:
|
||||
# nodeSelector:
|
||||
# kubernetes.io/arch: arm64
|
||||
# node.kubernetes.io/instance-type: cax41
|
||||
# tolerations:
|
||||
# - key: 'CI'
|
||||
# operator: 'Equal'
|
||||
# value: 'true'
|
||||
# effect: 'NoSchedule'
|
||||
|
||||
- name: 'Build binaries'
|
||||
image: docker.io/devxygmbh/arm64-binaries-r-alpine-321
|
||||
|
|
@ -108,14 +101,14 @@ steps:
|
|||
kubernetes:
|
||||
resources:
|
||||
requests:
|
||||
memory: 10Gi
|
||||
memory: 5Gi
|
||||
cpu: 1000m
|
||||
limits:
|
||||
memory: 14Gi
|
||||
memory: 20Gi
|
||||
cpu: 2000m
|
||||
nodeSelector:
|
||||
kubernetes.io/arch: arm64
|
||||
node.kubernetes.io/instance-type: cax31
|
||||
node.kubernetes.io/instance-type: cax41
|
||||
tolerations:
|
||||
- key: 'CI'
|
||||
operator: 'Equal'
|
||||
|
|
|
|||
|
|
@ -12,31 +12,24 @@ skip_clone: true
|
|||
|
||||
depends_on:
|
||||
- alpine-321-arm64-install-deps
|
||||
|
||||
|
||||
steps:
|
||||
- name: 'Warming up'
|
||||
image: busybox:latest
|
||||
failure: ignore
|
||||
commands:
|
||||
- sleep 300
|
||||
- echo 'Warmed Up'
|
||||
backend_options:
|
||||
kubernetes:
|
||||
resources:
|
||||
requests:
|
||||
memory: 13Gi
|
||||
cpu: 3000m
|
||||
limits:
|
||||
memory: 13Gi
|
||||
cpu: 3000m
|
||||
nodeSelector:
|
||||
kubernetes.io/arch: arm64
|
||||
node.kubernetes.io/instance-type: cax31
|
||||
tolerations:
|
||||
- key: 'CI'
|
||||
operator: 'Equal'
|
||||
value: 'true'
|
||||
effect: 'NoSchedule'
|
||||
# - name: 'Warming up'
|
||||
# image: busybox:latest
|
||||
# failure: ignore
|
||||
# commands:
|
||||
# - sleep 300
|
||||
# - echo 'Warmed Up'
|
||||
# backend_options:
|
||||
# kubernetes:
|
||||
# nodeSelector:
|
||||
# kubernetes.io/arch: arm64
|
||||
# node.kubernetes.io/instance-type: cax41
|
||||
# tolerations:
|
||||
# - key: 'CI'
|
||||
# operator: 'Equal'
|
||||
# value: 'true'
|
||||
# effect: 'NoSchedule'
|
||||
|
||||
- name: 'Build binaries'
|
||||
image: docker.io/devxygmbh/arm64-binaries-r-alpine-321
|
||||
|
|
@ -108,14 +101,14 @@ steps:
|
|||
kubernetes:
|
||||
resources:
|
||||
requests:
|
||||
memory: 10Gi
|
||||
memory: 5Gi
|
||||
cpu: 1000m
|
||||
limits:
|
||||
memory: 14Gi
|
||||
memory: 20Gi
|
||||
cpu: 2000m
|
||||
nodeSelector:
|
||||
kubernetes.io/arch: arm64
|
||||
node.kubernetes.io/instance-type: cax31
|
||||
node.kubernetes.io/instance-type: cax41
|
||||
tolerations:
|
||||
- key: 'CI'
|
||||
operator: 'Equal'
|
||||
|
|
|
|||
|
|
@ -12,31 +12,24 @@ skip_clone: true
|
|||
|
||||
depends_on:
|
||||
- alpine-321-arm64-install-deps
|
||||
|
||||
|
||||
steps:
|
||||
- name: 'Warming up'
|
||||
image: busybox:latest
|
||||
failure: ignore
|
||||
commands:
|
||||
- sleep 300
|
||||
- echo 'Warmed Up'
|
||||
backend_options:
|
||||
kubernetes:
|
||||
resources:
|
||||
requests:
|
||||
memory: 13Gi
|
||||
cpu: 3000m
|
||||
limits:
|
||||
memory: 13Gi
|
||||
cpu: 3000m
|
||||
nodeSelector:
|
||||
kubernetes.io/arch: arm64
|
||||
node.kubernetes.io/instance-type: cax31
|
||||
tolerations:
|
||||
- key: 'CI'
|
||||
operator: 'Equal'
|
||||
value: 'true'
|
||||
effect: 'NoSchedule'
|
||||
# - name: 'Warming up'
|
||||
# image: busybox:latest
|
||||
# failure: ignore
|
||||
# commands:
|
||||
# - sleep 300
|
||||
# - echo 'Warmed Up'
|
||||
# backend_options:
|
||||
# kubernetes:
|
||||
# nodeSelector:
|
||||
# kubernetes.io/arch: arm64
|
||||
# node.kubernetes.io/instance-type: cax41
|
||||
# tolerations:
|
||||
# - key: 'CI'
|
||||
# operator: 'Equal'
|
||||
# value: 'true'
|
||||
# effect: 'NoSchedule'
|
||||
|
||||
- name: 'Build binaries'
|
||||
image: docker.io/devxygmbh/arm64-binaries-r-alpine-321
|
||||
|
|
@ -108,14 +101,14 @@ steps:
|
|||
kubernetes:
|
||||
resources:
|
||||
requests:
|
||||
memory: 10Gi
|
||||
memory: 5Gi
|
||||
cpu: 1000m
|
||||
limits:
|
||||
memory: 14Gi
|
||||
memory: 20Gi
|
||||
cpu: 2000m
|
||||
nodeSelector:
|
||||
kubernetes.io/arch: arm64
|
||||
node.kubernetes.io/instance-type: cax31
|
||||
node.kubernetes.io/instance-type: cax41
|
||||
tolerations:
|
||||
- key: 'CI'
|
||||
operator: 'Equal'
|
||||
|
|
|
|||
|
|
@ -12,31 +12,24 @@ skip_clone: true
|
|||
|
||||
depends_on:
|
||||
- alpine-321-arm64-install-deps
|
||||
|
||||
|
||||
steps:
|
||||
- name: 'Warming up'
|
||||
image: busybox:latest
|
||||
failure: ignore
|
||||
commands:
|
||||
- sleep 300
|
||||
- echo 'Warmed Up'
|
||||
backend_options:
|
||||
kubernetes:
|
||||
resources:
|
||||
requests:
|
||||
memory: 13Gi
|
||||
cpu: 3000m
|
||||
limits:
|
||||
memory: 13Gi
|
||||
cpu: 3000m
|
||||
nodeSelector:
|
||||
kubernetes.io/arch: arm64
|
||||
node.kubernetes.io/instance-type: cax31
|
||||
tolerations:
|
||||
- key: 'CI'
|
||||
operator: 'Equal'
|
||||
value: 'true'
|
||||
effect: 'NoSchedule'
|
||||
# - name: 'Warming up'
|
||||
# image: busybox:latest
|
||||
# failure: ignore
|
||||
# commands:
|
||||
# - sleep 300
|
||||
# - echo 'Warmed Up'
|
||||
# backend_options:
|
||||
# kubernetes:
|
||||
# nodeSelector:
|
||||
# kubernetes.io/arch: arm64
|
||||
# node.kubernetes.io/instance-type: cax41
|
||||
# tolerations:
|
||||
# - key: 'CI'
|
||||
# operator: 'Equal'
|
||||
# value: 'true'
|
||||
# effect: 'NoSchedule'
|
||||
|
||||
- name: 'Build binaries'
|
||||
image: docker.io/devxygmbh/arm64-binaries-r-alpine-321
|
||||
|
|
@ -108,14 +101,14 @@ steps:
|
|||
kubernetes:
|
||||
resources:
|
||||
requests:
|
||||
memory: 10Gi
|
||||
memory: 5Gi
|
||||
cpu: 1000m
|
||||
limits:
|
||||
memory: 14Gi
|
||||
memory: 20Gi
|
||||
cpu: 2000m
|
||||
nodeSelector:
|
||||
kubernetes.io/arch: arm64
|
||||
node.kubernetes.io/instance-type: cax31
|
||||
node.kubernetes.io/instance-type: cax41
|
||||
tolerations:
|
||||
- key: 'CI'
|
||||
operator: 'Equal'
|
||||
|
|
|
|||
107
.woodpecker/build-alpine-321-arm64-9-single.yaml
Normal file
107
.woodpecker/build-alpine-321-arm64-9-single.yaml
Normal file
|
|
@ -0,0 +1,107 @@
|
|||
when:
|
||||
- event: manual
|
||||
evaluate: 'build == "all"'
|
||||
- event: manual
|
||||
evaluate: 'build == "alpine-321-arm64"'
|
||||
- event: manual
|
||||
evaluate: 'build == "alpine-321-arm64-9"'
|
||||
- event: manual
|
||||
evaluate: 'build == "all-arm64"'
|
||||
|
||||
skip_clone: true
|
||||
|
||||
steps:
|
||||
- name: 'Build binaries'
|
||||
image: docker.io/devxygmbh/arm64-binaries-r-alpine-321
|
||||
pull: true
|
||||
environment:
|
||||
RED_HAT_DEV_PW:
|
||||
from_secret: red_hat_dev_pw
|
||||
AWS_ACCESS_KEY_ID:
|
||||
from_secret: aws_access_key_id
|
||||
AWS_SECRET_ACCESS_KEY:
|
||||
from_secret: aws_secret_access_key
|
||||
PGPASS:
|
||||
from_secret: pgpass
|
||||
GIT_RO_TOKEN:
|
||||
from_secret: git_ro_token
|
||||
GITHUB_PAT:
|
||||
from_secret: github_pat
|
||||
# normal env vars
|
||||
GIT_USER: pat-s
|
||||
# set the location of the 'pkgcache' cache dir which persists the R package dependencies needed to install the packages themselves
|
||||
R_PKG_CACHE_DIR: /mnt/cache/pkgcache
|
||||
R_LIBS_USER: /mnt/cache/R-pkgs
|
||||
CCACHE_DIR: /mnt/cache/ccache
|
||||
PLATFORM: alpine-321
|
||||
BLOCK_START: 17601
|
||||
BLOCK_END: 19800
|
||||
ARCH: arm64
|
||||
NCPUS: 2
|
||||
STRATEGY: sequential
|
||||
volumes:
|
||||
- arm64-binaries-r-dep-cache-alpine-321:/mnt/cache
|
||||
commands:
|
||||
- git clone https://pat-s:$$GIT_RO_TOKEN@git.devxy.io/devxy/r-pkg-binaries.git .
|
||||
- R -q -e 'packageVersion("bincraftR")'
|
||||
- mkdir -p /mnt/cache/pkgcache /mnt/cache/R-pkgs /mnt/cache/ccache /mnt/cache/packages
|
||||
# Windows-only: 'RInno', 'KeyboardSimulator', 'R2PPT', 'RWinEdt', 'blatr', 'excel.link', 'spectrino', 'taskscheduleR', 'MDSGUI', 'BiplotGUI', 'R2wd'
|
||||
- xvfb-run R -q -e "options(crayon.enabled = TRUE, Ncpus = $NCPUS, future.globals.onReference = NULL); pak::sysreqs_db_update(); if (file.exists(sprintf('/mnt/cache/%s.txt', Sys.getenv('CI_WORKFLOW_NAME')))) block_start = as.character(data.table::fread(sprintf('/mnt/cache/%s.txt', Sys.getenv('CI_WORKFLOW_NAME')), sep = '\t')) else block_start = Sys.getenv('BLOCK_START'); pkgs = as.character(available.packages('cloud.r-project.org/src/contrib')[, 'Package'])[block_start:$BLOCK_END]; pkgs = setdiff(pkgs, c('RInno', 'MediaNews', 'DoE.base', 'DoE.wrapper', 'FrF2', 'FrF2.catlg128', 'eha', 'gRain', 'gRbase', 'doBy', 'IDPmisc', 'RVAideMemoire', 'pbkrtest', 'seewave', 'RInno', 'KeyboardSimulator', 'R2PPT', 'RWinEdt', 'blatr', 'excel.link', 'spectrino', 'taskscheduleR', 'MDSGUI', 'BiplotGUI', 'R2wd')); progressr::handlers('cli'); progressr::handlers(global = TRUE); foo = lapply(pkgs, function(x) bincraftR::build_binary_package(x, debug = FALSE, force = TRUE, platform = 'alpine-321'))"
|
||||
### Manual pkg builds
|
||||
# webshot2, tabledown, TestAnaAPP, trekcolors, Spectran, SimNPH, RPushbullet, SimDesign, simCAT, SIAmodules, shinytest2, ShinyItemAnalysis, shinyIRT, shiny.benchmark, scDIFtest, RSP, qtkit, PROsetta, prettifyAddins, PerFit, outlierensembles, nomnoml, mxfda, MultBiplotR, mstDIF, mdsr, makepipe, lordif, kequate, jstager, jrt, irtreliability, irtQ, irtpwr, irtGUI, irtawsi, GRShiny, GPCMlasso, googletraffic, giacR, flps, flow, faoutlier, equateIRT, EnrichIntersect, EFA.dimensions, DFIT, D3mirt, ctgdist, CoTiMA, ConvertPar, bscui, BifactorIndicesCalculator, autoFC, airt: wait for https://github.com/rstudio/r-system-requirements/pull/178
|
||||
# RInno: Windows-only
|
||||
# skedastic: waiting for ROI.plugin.qpoases (https://gitlab.com/roigrp/solver/ROI.plugin.qpoases/-/issues/1)
|
||||
# rswipl: ccache issues: https://github.com/mgondan/rswipl/issues/3 -> solved
|
||||
# Rpoppler: https://github.com/rstudio/r-system-requirements/pull/179/
|
||||
# ROracle: sysdep missing -> create rule
|
||||
# ROI.plugin.qpoases: https://gitlab.com/roigrp/solver/ROI.plugin.qpoases/-/issues/1
|
||||
# ROI.plugin.cplex: checking for cplex... no -> requires propriatary software IBM Cplex
|
||||
# RmecabKo: fatal error: mecab.h: No such file or directory
|
||||
# rmarchingcubes: error: narrowing conversion of '-1' from 'int' to 'char' [-Wnarrowing] -> https://github.com/shwilks/rmarchingcubes/issues/3
|
||||
# RcppMeCab: /bin/bash: line 2: mecab-config: command not found -> https://github.com/rstudio/r-system-requirements/pull/180
|
||||
# Rcplex: checking for cplex... no -> requires propriatary software IBM Cplex
|
||||
# Rblpapi: Unknown architecture: aarch64. Exiting. -> https://github.com/Rblp/Rblpapi/issues/399
|
||||
# Rbeast: aarch64 issue -> https://github.com/zhaokg/Rbeast/issues/29
|
||||
# ravetools: checking for FFTW... configure: error: Package requirements (fftw3) were not met: -> fftw3 rule needed
|
||||
# Racmacs -> rmarchingcubes
|
||||
# minic: /usr/include/c++/13/bits/stl_algo.h:5805:5: note: template argument deduction/substitution failed:
|
||||
# KSgeneral -> aligned_mem.h:6:10: fatal error: mm_malloc.h: No such file or directory -> https://github.com/d-dimitrova/KSgeneral/issues/1
|
||||
# gpuR -> /usr/bin/ld: cannot find -lOpenCL: No such file or directory -> no GPU avail
|
||||
# clrng -> gpuR
|
||||
# BRugs: configure: error: OpenBUGS 3.2.2 or later not found. as it is only one package, not doing anything
|
||||
# gamstransfer -> gdx/src/gdlib/gmsstrm.cpp:85:70: error: narrowing conversion of '-1' from 'std::char_traits<char>::int_type' {aka 'int'} to 'char' [-Wnarrowing] -> https://github.com/GAMS-dev/transfer-r/issues/2
|
||||
# filters: <simpleError: `target` must be a character vector containing no `NA` values.> -> email sent
|
||||
# magickGUI, biplotbootGUI
|
||||
# ymd (alpine, voi)
|
||||
# tfrmtbuilder -> V8 (alpine)
|
||||
# Rcmdr (alpine)
|
||||
# readstata13 (alpine)
|
||||
# - xvfb-run R -q -e 'options(crayon.enabled = TRUE, Ncpus = $NCPUS, future.globals.onReference = NULL); pkgs = c( "RcmdrPlugin.orloca", "RcmdrPlugin.PcaRobust", "RcmdrPlugin.RiskDemo", "RcmdrPlugin.RMTCJags", "RcmdrPlugin.ROC", "RcmdrPlugin.sos" , "RcmdrPlugin.survival", "RcmdrPlugin.TeachingDemos", "RcmdrPlugin.TeachStat", "RcmdrPlugin.temis", "RcmdrPlugin.UCA", "RcmdrPlugin.WorldFlora", "streamDAG", "stan4bart", "snplinkage", "saeHB.panel.beta", "rTwig", "rswipl", "RPointCloud", "rPDBapi", "rolog", "rmcfs", "rjags", "ResultModelManager", "RcppCWB", "RcmdrPlugin.WorldFlora", "RcmdrPlugin.UCA", "RcmdrPlugin.temis", "RcmdrPlugin.TeachStat", "RcmdrPlugin.TeachingDemos", "RcmdrPlugin.survival", "RcmdrPlugin.sos", "RcmdrPlugin.ROC", "RcmdrPlugin.RMTCJags", "RcmdrPlugin.RiskDemo", "RcmdrPlugin.PcaRobust", "RclusTool", "Rbeast", "rayrender", "quanteda.textmodels", "polmineR", "plotBart", "NlinTS", "ndtv", "overtureR", "mathml", "magickGUI", "lgpr", "KappaGUI", "historicalborrow", "GSODR", "GRIDCOPULA", "googleAnalyticsR", "fluidsynth", "EventDetectGUI", "evalITR", "EBcoBART", "deeptrafo", "dbarts", "CRE", "countSTAR", "bartMan", "bartCause", "altmeta", "EthSEQ", "dartR.spatial", "dartR.sim", "gwid", "Mega2R", "priorCON", "prior3D", "MCARtest", "designmatch", "highs", "ROI.plugin.highs", "GPCMlasso"); library(bincraftR); options(progressr.enable = TRUE); foo = lapply(pkgs, function(x) build_binary_package(x, debug = FALSE, force = TRUE, platform = "arm64"))'
|
||||
backend_options:
|
||||
kubernetes:
|
||||
resources:
|
||||
requests:
|
||||
memory: 5Gi
|
||||
cpu: 1000m
|
||||
limits:
|
||||
memory: 20Gi
|
||||
cpu: 2000m
|
||||
nodeSelector:
|
||||
kubernetes.io/arch: arm64
|
||||
node.kubernetes.io/instance-type: cax41
|
||||
tolerations:
|
||||
- key: 'CI'
|
||||
operator: 'Equal'
|
||||
value: 'true'
|
||||
effect: 'NoSchedule'
|
||||
|
||||
- name: 'ntfy'
|
||||
image: binwiederhier/ntfy:v2.11.0
|
||||
when:
|
||||
- status: [failure]
|
||||
environment:
|
||||
NTFY_TOKEN:
|
||||
from_secret: ntfy_token
|
||||
commands: |
|
||||
BUILD_INDEX=$(cat build_index.txt)
|
||||
ntfy publish --tags=no_entry_sign --token $NTFY_TOKEN -t "Run '${CI_REPO}' failed at $BUILD_INDEX" --click="${CI_PIPELINE_URL}" --actions="view, Open build, ${CI_PIPELINE_URL}, clear=true;" ntfy.devxy.io/ci-builds Workflow: ${CI_WORKFLOW_NAME} Commit message: ${CI_COMMIT_MESSAGE} Commit Author: ${CI_COMMIT_AUTHOR}
|
||||
|
|
@ -9,59 +9,61 @@ when:
|
|||
skip_clone: true
|
||||
|
||||
steps:
|
||||
- name: Upload PACKAGES files
|
||||
image: docker.io/devxygmbh/amd64-binaries-r-ubuntu-2204
|
||||
pull: true
|
||||
environment:
|
||||
RED_HAT_DEV_PW:
|
||||
from_secret: red_hat_dev_pw
|
||||
AWS_ACCESS_KEY_ID:
|
||||
from_secret: aws_access_key_id
|
||||
AWS_SECRET_ACCESS_KEY:
|
||||
from_secret: aws_secret_access_key
|
||||
PGPASS:
|
||||
from_secret: pgpass
|
||||
GIT_RO_TOKEN:
|
||||
from_secret: git_ro_token
|
||||
GITHUB_PAT:
|
||||
from_secret: github_pat
|
||||
# normal env vars
|
||||
GIT_USER: pat-s
|
||||
# set the location of the 'pkgcache' cache dir which persists the R package dependencies needed to install the packages themselves
|
||||
R_PKG_CACHE_DIR: /mnt/cache/pkgcache
|
||||
R_LIBS_USER: /mnt/cache/R-pkgs
|
||||
volumes:
|
||||
- amd64-binaries-r-dep-cache-ubuntu-2204:/mnt/cache
|
||||
commands:
|
||||
- git clone https://pat-s:$$GIT_RO_TOKEN@git.devxy.io/devxy/r-pkg-binaries.git .
|
||||
- rm -rf /mnt/cache/packages/*
|
||||
- R -q -e 'pak::pak("git::https://gitlab.com/devxy/r-package-binaries/bincraftr.git")'
|
||||
- R -q -e 'pak::pak("pat-s/cranlike@s3")'
|
||||
- R -q -e 'packageVersion("bincraftR")'
|
||||
- cd /mnt/cache/packages
|
||||
- R -q -e 'options(crayon.enabled = TRUE); library(bincraftR); future::plan("multisession"); library(progressr); handlers(global = TRUE); handlers("progress"); upload_package_index(); warnings()'
|
||||
backend_options:
|
||||
kubernetes:
|
||||
resources:
|
||||
requests:
|
||||
memory: 3000Mi
|
||||
cpu: 2000m
|
||||
limits:
|
||||
memory: 3000Mi
|
||||
cpu: 8000m
|
||||
nodeSelector:
|
||||
kubernetes.io/arch: 'amd64'
|
||||
# - name: Upload PACKAGES files
|
||||
# image: docker.io/devxygmbh/amd64-binaries-r-ubuntu-2204
|
||||
# pull: true
|
||||
# environment:
|
||||
# RED_HAT_DEV_PW:
|
||||
# from_secret: red_hat_dev_pw
|
||||
# AWS_ACCESS_KEY_ID:
|
||||
# from_secret: aws_access_key_id
|
||||
# AWS_SECRET_ACCESS_KEY:
|
||||
# from_secret: aws_secret_access_key
|
||||
# PGPASS:
|
||||
# from_secret: pgpass
|
||||
# GIT_RO_TOKEN:
|
||||
# from_secret: git_ro_token
|
||||
# GITHUB_PAT:
|
||||
# from_secret: github_pat
|
||||
# # normal env vars
|
||||
# GIT_USER: pat-s
|
||||
# # set the location of the 'pkgcache' cache dir which persists the R package dependencies needed to install the packages themselves
|
||||
# R_PKG_CACHE_DIR: /mnt/cache/pkgcache
|
||||
# R_LIBS_USER: /mnt/cache/R-pkgs
|
||||
# volumes:
|
||||
# - amd64-binaries-r-dep-cache-ubuntu-2204:/mnt/cache
|
||||
# commands:
|
||||
# - git clone https://pat-s:$$GIT_RO_TOKEN@git.devxy.io/devxy/r-pkg-binaries.git .
|
||||
# - rm -rf /mnt/cache/packages/*
|
||||
# - R -q -e 'pak::pak("git::https://gitlab.com/devxy/r-package-binaries/bincraftr.git")'
|
||||
# - R -q -e 'pak::pak("pat-s/cranlike@s3")'
|
||||
# - R -q -e 'packageVersion("bincraftR")'
|
||||
# - cd /mnt/cache/packages
|
||||
# - R -q -e 'options(crayon.enabled = TRUE); library(bincraftR); future::plan("multisession"); library(progressr); handlers(global = TRUE); handlers("progress"); upload_package_index(); warnings()'
|
||||
# backend_options:
|
||||
# kubernetes:
|
||||
# resources:
|
||||
# requests:
|
||||
# memory: 3000Mi
|
||||
# cpu: 2000m
|
||||
# limits:
|
||||
# memory: 3000Mi
|
||||
# cpu: 8000m
|
||||
# nodeSelector:
|
||||
# kubernetes.io/arch: 'amd64'
|
||||
|
||||
- name: Purge CDN cache
|
||||
image: byrnedo/alpine-curl:3.20
|
||||
image: alpine:3.21
|
||||
environment:
|
||||
BUNNY_API_KEY:
|
||||
from_secret: BUNNY_API_KEY
|
||||
commands: |
|
||||
curl -v -X POST -H "AccessKey: $BUNNY_API_KEY" https://api.bunny.net/purge?url=https%3A%2F%2Fcran.devxy.io%2Famd64%2Fjammy%2Flatest%2Fsrc%2Fcontrib%2FPACKAGES&async=false
|
||||
curl -v -X POST -H "AccessKey: $BUNNY_API_KEY" https://api.bunny.net/purge?url=https%3A%2F%2Fcran.devxy.io%2Famd64%2Fjammy%2Flatest%2Fsrc%2Fcontrib%2FPACKAGES.gz&async=false
|
||||
curl -v -X POST -H "AccessKey: $BUNNY_API_KEY" https://api.bunny.net/purge?url=https%3A%2F%2Fcran.devxy.io%2Famd64%2Fjammy%2Flatest%2Fsrc%2Fcontrib%2FPACKAGES.rds&async=false
|
||||
curl -v -X POST -H "AccessKey: $BUNNY_API_KEY" https://api.bunny.net/purge?url=https%3A%2F%2Fcran.devxy.io%2Famd64%2Fjammy%2Flatest%2Fsrc%2Fcontrib%2FPACKAGES.db&async=false
|
||||
apk add -q --no-cache curl ca-certificates
|
||||
curl -L -X POST -H "AccessKey: $BUNNY_API_KEY" https://api.bunny.net/purge?url=https%3A%2F%2Fcran.devxy.io%2Famd64%2Fjammy%2Flatest%2Fsrc%2Fcontrib%2FPACKAGES&async=false
|
||||
curl -L -X POST -H "AccessKey: $BUNNY_API_KEY" https://api.bunny.net/purge?url=https%3A%2F%2Fcran.devxy.io%2Famd64%2Fjammy%2Flatest%2Fsrc%2Fcontrib%2FPACKAGES.gz&async=false
|
||||
curl -L -X POST -H "AccessKey: $BUNNY_API_KEY" https://api.bunny.net/purge?url=https%3A%2F%2Fcran.devxy.io%2Famd64%2Fjammy%2Flatest%2Fsrc%2Fcontrib%2FPACKAGES.rds&async=false
|
||||
curl -L -X POST -H "AccessKey: $BUNNY_API_KEY" https://api.bunny.net/purge?url=https%3A%2F%2Fcran.devxy.io%2Famd64%2Fjammy%2Flatest%2Fsrc%2Fcontrib%2FPACKAGES.db&async=false
|
||||
sleep 10
|
||||
|
||||
- name: 'ntfy'
|
||||
image: binwiederhier/ntfy:v2.11.0
|
||||
|
|
|
|||
|
|
@ -9,48 +9,48 @@ when:
|
|||
skip_clone: true
|
||||
|
||||
steps:
|
||||
- name: Upload PACKAGES files
|
||||
image: docker.io/devxygmbh/amd64-binaries-r-ubuntu-2404
|
||||
pull: true
|
||||
environment:
|
||||
RED_HAT_DEV_PW:
|
||||
from_secret: red_hat_dev_pw
|
||||
AWS_ACCESS_KEY_ID:
|
||||
from_secret: aws_access_key_id
|
||||
AWS_SECRET_ACCESS_KEY:
|
||||
from_secret: aws_secret_access_key
|
||||
PGPASS:
|
||||
from_secret: pgpass
|
||||
GIT_RO_TOKEN:
|
||||
from_secret: git_ro_token
|
||||
GITHUB_PAT:
|
||||
from_secret: github_pat
|
||||
# normal env vars
|
||||
GIT_USER: pat-s
|
||||
# set the location of the 'pkgcache' cache dir which persists the R package dependencies needed to install the packages themselves
|
||||
R_PKG_CACHE_DIR: /mnt/cache/pkgcache
|
||||
R_LIBS_USER: /mnt/cache/R-pkgs
|
||||
volumes:
|
||||
- amd64-binaries-r-dep-cache-ubuntu-2404:/mnt/cache
|
||||
commands:
|
||||
- git clone https://pat-s:$$GIT_RO_TOKEN@git.devxy.io/devxy/r-pkg-binaries.git .
|
||||
- rm -rf /mnt/cache/packages/*
|
||||
- R -q -e 'pak::pak("git::https://gitlab.com/devxy/r-package-binaries/bincraftr.git")'
|
||||
- R -q -e 'pak::pak("pat-s/cranlike@s3")'
|
||||
- R -q -e 'packageVersion("bincraftR")'
|
||||
- cd /mnt/cache/packages
|
||||
- R -q -e 'options(crayon.enabled = TRUE); library(bincraftR); future::plan("multisession"); library(progressr); handlers(global = TRUE); handlers("progress"); upload_package_index()'
|
||||
backend_options:
|
||||
kubernetes:
|
||||
resources:
|
||||
requests:
|
||||
memory: 3000Mi
|
||||
cpu: 2000m
|
||||
limits:
|
||||
memory: 3000Mi
|
||||
cpu: 8000m
|
||||
nodeSelector:
|
||||
kubernetes.io/arch: 'amd64'
|
||||
# - name: Upload PACKAGES files
|
||||
# image: docker.io/devxygmbh/amd64-binaries-r-ubuntu-2404
|
||||
# pull: true
|
||||
# environment:
|
||||
# RED_HAT_DEV_PW:
|
||||
# from_secret: red_hat_dev_pw
|
||||
# AWS_ACCESS_KEY_ID:
|
||||
# from_secret: aws_access_key_id
|
||||
# AWS_SECRET_ACCESS_KEY:
|
||||
# from_secret: aws_secret_access_key
|
||||
# PGPASS:
|
||||
# from_secret: pgpass
|
||||
# GIT_RO_TOKEN:
|
||||
# from_secret: git_ro_token
|
||||
# GITHUB_PAT:
|
||||
# from_secret: github_pat
|
||||
# # normal env vars
|
||||
# GIT_USER: pat-s
|
||||
# # set the location of the 'pkgcache' cache dir which persists the R package dependencies needed to install the packages themselves
|
||||
# R_PKG_CACHE_DIR: /mnt/cache/pkgcache
|
||||
# R_LIBS_USER: /mnt/cache/R-pkgs
|
||||
# volumes:
|
||||
# - amd64-binaries-r-dep-cache-ubuntu-2404:/mnt/cache
|
||||
# commands:
|
||||
# - git clone https://pat-s:$$GIT_RO_TOKEN@git.devxy.io/devxy/r-pkg-binaries.git .
|
||||
# - rm -rf /mnt/cache/packages/*
|
||||
# - R -q -e 'pak::pak("git::https://gitlab.com/devxy/r-package-binaries/bincraftr.git")'
|
||||
# - R -q -e 'pak::pak("pat-s/cranlike@s3")'
|
||||
# - R -q -e 'packageVersion("bincraftR")'
|
||||
# - cd /mnt/cache/packages
|
||||
# - R -q -e 'options(crayon.enabled = TRUE); library(bincraftR); future::plan("multisession"); library(progressr); handlers(global = TRUE); handlers("progress"); upload_package_index()'
|
||||
# backend_options:
|
||||
# kubernetes:
|
||||
# resources:
|
||||
# requests:
|
||||
# memory: 3000Mi
|
||||
# cpu: 2000m
|
||||
# limits:
|
||||
# memory: 3000Mi
|
||||
# cpu: 8000m
|
||||
# nodeSelector:
|
||||
# kubernetes.io/arch: 'amd64'
|
||||
|
||||
- name: Purge CDN cache
|
||||
image: byrnedo/alpine-curl:3.20
|
||||
|
|
@ -58,10 +58,12 @@ steps:
|
|||
BUNNY_API_KEY:
|
||||
from_secret: BUNNY_API_KEY
|
||||
commands: |
|
||||
curl -v -X POST -H "AccessKey: $BUNNY_API_KEY" https://api.bunny.net/purge?url=https%3A%2F%2Fcran.devxy.io%2Famd64%2Fnoble%2Flatest%2Fsrc%2Fcontrib%2FPACKAGES&async=false
|
||||
curl -v -X POST -H "AccessKey: $BUNNY_API_KEY" https://api.bunny.net/purge?url=https%3A%2F%2Fcran.devxy.io%2Famd64%2Fnoble%2Flatest%2Fsrc%2Fcontrib%2FPACKAGES.gz&async=false
|
||||
curl -v -X POST -H "AccessKey: $BUNNY_API_KEY" https://api.bunny.net/purge?url=https%3A%2F%2Fcran.devxy.io%2Famd64%2Fnoble%2Flatest%2Fsrc%2Fcontrib%2FPACKAGES.rds&async=false
|
||||
curl -v -X POST -H "AccessKey: $BUNNY_API_KEY" https://api.bunny.net/purge?url=https%3A%2F%2Fcran.devxy.io%2Famd64%2Fnoble%2Flatest%2Fsrc%2Fcontrib%2FPACKAGES.db&async=false
|
||||
apk add -q --no-cache curl ca-certificates
|
||||
curl -L -X POST -H "AccessKey: $BUNNY_API_KEY" https://api.bunny.net/purge?url=https%3A%2F%2Fcran.devxy.io%2Famd64%2Fnoble%2Flatest%2Fsrc%2Fcontrib%2FPACKAGES&async=false
|
||||
curl -L -X POST -H "AccessKey: $BUNNY_API_KEY" https://api.bunny.net/purge?url=https%3A%2F%2Fcran.devxy.io%2Famd64%2Fnoble%2Flatest%2Fsrc%2Fcontrib%2FPACKAGES.gz&async=false
|
||||
curl -L -X POST -H "AccessKey: $BUNNY_API_KEY" https://api.bunny.net/purge?url=https%3A%2F%2Fcran.devxy.io%2Famd64%2Fnoble%2Flatest%2Fsrc%2Fcontrib%2FPACKAGES.rds&async=false
|
||||
curl -L -X POST -H "AccessKey: $BUNNY_API_KEY" https://api.bunny.net/purge?url=https%3A%2F%2Fcran.devxy.io%2Famd64%2Fnoble%2Flatest%2Fsrc%2Fcontrib%2FPACKAGES.db&async=false
|
||||
sleep 10
|
||||
|
||||
- name: 'ntfy'
|
||||
image: binwiederhier/ntfy:v2.11.0
|
||||
|
|
|
|||
Loading…
Reference in a new issue