diff --git a/.woodpecker/alpine-321-amd64-install-deps.yaml b/.woodpecker/alpine-321-amd64-install-deps.yaml index 5a86c73..de02d5c 100644 --- a/.woodpecker/alpine-321-amd64-install-deps.yaml +++ b/.woodpecker/alpine-321-amd64-install-deps.yaml @@ -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"' diff --git a/.woodpecker/alpine-321-arm64-install-deps.yaml b/.woodpecker/alpine-321-arm64-install-deps.yaml index 0565023..def6ed8 100644 --- a/.woodpecker/alpine-321-arm64-install-deps.yaml +++ b/.woodpecker/alpine-321-arm64-install-deps.yaml @@ -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"' diff --git a/.woodpecker/build-alpine-321-amd64-9-single.yaml b/.woodpecker/build-alpine-321-amd64-9-single.yaml new file mode 100644 index 0000000..6448632 --- /dev/null +++ b/.woodpecker/build-alpine-321-amd64-9-single.yaml @@ -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::int_type' {aka 'int'} to 'char' [-Wnarrowing] -> https://github.com/GAMS-dev/transfer-r/issues/2 + # filters: -> 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} \ No newline at end of file diff --git a/.woodpecker/build-alpine-321-amd64-9.yaml b/.woodpecker/build-alpine-321-amd64-9.yaml index d45aaca..372eeb2 100644 --- a/.woodpecker/build-alpine-321-amd64-9.yaml +++ b/.woodpecker/build-alpine-321-amd64-9.yaml @@ -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"' diff --git a/.woodpecker/build-alpine-321-arm64-1.yaml b/.woodpecker/build-alpine-321-arm64-1.yaml index 509fde7..c15e3a2 100644 --- a/.woodpecker/build-alpine-321-arm64-1.yaml +++ b/.woodpecker/build-alpine-321-arm64-1.yaml @@ -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' diff --git a/.woodpecker/build-alpine-321-arm64-10.yaml b/.woodpecker/build-alpine-321-arm64-10.yaml index b8972a1..f0a0422 100644 --- a/.woodpecker/build-alpine-321-arm64-10.yaml +++ b/.woodpecker/build-alpine-321-arm64-10.yaml @@ -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' diff --git a/.woodpecker/build-alpine-321-arm64-2.yaml b/.woodpecker/build-alpine-321-arm64-2.yaml index d5b655d..a6b365a 100644 --- a/.woodpecker/build-alpine-321-arm64-2.yaml +++ b/.woodpecker/build-alpine-321-arm64-2.yaml @@ -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' diff --git a/.woodpecker/build-alpine-321-arm64-3.yaml b/.woodpecker/build-alpine-321-arm64-3.yaml index 9b328ce..6627d9a 100644 --- a/.woodpecker/build-alpine-321-arm64-3.yaml +++ b/.woodpecker/build-alpine-321-arm64-3.yaml @@ -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' diff --git a/.woodpecker/build-alpine-321-arm64-4.yaml b/.woodpecker/build-alpine-321-arm64-4.yaml index 78b8397..32236ad 100644 --- a/.woodpecker/build-alpine-321-arm64-4.yaml +++ b/.woodpecker/build-alpine-321-arm64-4.yaml @@ -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' diff --git a/.woodpecker/build-alpine-321-arm64-5.yaml b/.woodpecker/build-alpine-321-arm64-5.yaml index 2ab4bc4..3047d56 100644 --- a/.woodpecker/build-alpine-321-arm64-5.yaml +++ b/.woodpecker/build-alpine-321-arm64-5.yaml @@ -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' diff --git a/.woodpecker/build-alpine-321-arm64-6.yaml b/.woodpecker/build-alpine-321-arm64-6.yaml index 09b7f56..f55a646 100644 --- a/.woodpecker/build-alpine-321-arm64-6.yaml +++ b/.woodpecker/build-alpine-321-arm64-6.yaml @@ -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' diff --git a/.woodpecker/build-alpine-321-arm64-7.yaml b/.woodpecker/build-alpine-321-arm64-7.yaml index 0e4a62c..6c3d96d 100644 --- a/.woodpecker/build-alpine-321-arm64-7.yaml +++ b/.woodpecker/build-alpine-321-arm64-7.yaml @@ -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' diff --git a/.woodpecker/build-alpine-321-arm64-8.yaml b/.woodpecker/build-alpine-321-arm64-8.yaml index 5d31933..13abde3 100644 --- a/.woodpecker/build-alpine-321-arm64-8.yaml +++ b/.woodpecker/build-alpine-321-arm64-8.yaml @@ -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' diff --git a/.woodpecker/build-alpine-321-arm64-9.yaml b/.woodpecker/build-alpine-321-arm64-9-single.yaml similarity index 91% rename from .woodpecker/build-alpine-321-arm64-9.yaml rename to .woodpecker/build-alpine-321-arm64-9-single.yaml index 0869f22..be0f925 100644 --- a/.woodpecker/build-alpine-321-arm64-9.yaml +++ b/.woodpecker/build-alpine-321-arm64-9-single.yaml @@ -10,34 +10,7 @@ when: 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: 'Build binaries' image: docker.io/devxygmbh/arm64-binaries-r-alpine-321 pull: true @@ -108,14 +81,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' diff --git a/.woodpecker/update-package-index-ubuntu-2204-amd64.yaml b/.woodpecker/update-package-index-ubuntu-2204-amd64.yaml index 78e04b9..c8fda6c 100644 --- a/.woodpecker/update-package-index-ubuntu-2204-amd64.yaml +++ b/.woodpecker/update-package-index-ubuntu-2204-amd64.yaml @@ -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 diff --git a/.woodpecker/update-package-index-ubuntu-2404-amd64.yaml b/.woodpecker/update-package-index-ubuntu-2404-amd64.yaml index 5056c5f..dfc6ca3 100644 --- a/.woodpecker/update-package-index-ubuntu-2404-amd64.yaml +++ b/.woodpecker/update-package-index-ubuntu-2404-amd64.yaml @@ -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