diff --git a/.crow/build-all-versions-amd64.yaml b/.crow/build-all-versions-amd64.yaml index 51f5b4a..38203a1 100644 --- a/.crow/build-all-versions-amd64.yaml +++ b/.crow/build-all-versions-amd64.yaml @@ -5,6 +5,7 @@ # R_VERSION (4.5) # woodpecker-cli pipeline create --var ARCH=amd64 --var OS=alpine --var OS_VERSION=3.23 --var R_VERSION=4.5 --var task=build-all-amd64 --var K8S_INSTANCE_TYPE=AX42 --branch=main --log-level=info 5 # crow-dev pipeline create --var ARCH=amd64 --var OS=alpine --var OS_VERSION=3.23 --var R_VERSION=4.5 --var task=build-all-amd64 --var K8S_INSTANCE_TYPE=AX42 --branch=main --log-level=info 5 +# crow pipeline create --var ARCH=amd64 --var OS=redhat --var OS_VERSION=10 --var R_VERSION=4.5 --var task=build-all-amd64 --var K8S_INSTANCE_TYPE=AX42 --branch=main --log-level=info 5 when: - event: manual evaluate: 'task == "build-all-amd64"' @@ -32,24 +33,9 @@ matrix: - SPLIT_INTO: 5 SPLIT_INDEX: 5 BACKEND: kubernetes - # - SPLIT_INTO: 10 - # SPLIT_INDEX: 6 - # BACKEND: kubernetes - # - SPLIT_INTO: 10 - # SPLIT_INDEX: 7 - # BACKEND: kubernetes - # - SPLIT_INTO: 10 - # SPLIT_INDEX: 8 - # BACKEND: kubernetes - # - SPLIT_INTO: 10 - # SPLIT_INDEX: 9 - # BACKEND: kubernetes - # - SPLIT_INTO: 10 - # SPLIT_INDEX: 10 - # BACKEND: kubernetes -depends_on: - - build-all-versions-install-deps +# depends_on: +# - build-all-versions-install-deps steps: - name: 'Build binaries' @@ -79,7 +65,7 @@ steps: - ${ARCH}-binaries-r-dep-cache-${OS}-${OS_VERSION//./}:/mnt/cache commands: - git clone -q https://pat-s:$$REPO_RO_TOKEN@git.devxy.io/devxy/build-cran-binaries.git . - - R -q -e 'packageVersion("bincraft")' + - R -q -e 'if (!requireNamespace("bincraft", quietly = TRUE)) pak::pak("git::https://codefloe.com/rpkgs/bincraft.git"); packageVersion("bincraft")' - 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', 'rFUSION', 'MediaNews', 'rFUSION', 'MediaNews' # pkgs = readRDS('/mnt/cache/pkgs_amd64.rds'); diff --git a/.crow/build-all-versions-install-deps.yaml b/.crow/build-all-versions-install-deps.yaml deleted file mode 100644 index 25dce26..0000000 --- a/.crow/build-all-versions-install-deps.yaml +++ /dev/null @@ -1,63 +0,0 @@ -### Required extra vars -# ARCH (amd64) -# OS (alpine) -# OS_VERSION (3.22) -# R_VERSION (4.5) -when: - # - event: manual - # evaluate: 'task == "build-all-arm64"' - - event: manual - evaluate: 'task == "build-all-amd64"' - -skip_clone: true - -labels: - platform: linux/amd64 - backend: kubernetes - -steps: - - name: 'Install common R deps' - image: reg.devxy.io/rpkgs/build-env-alpine:${OS_VERSION}-${R_VERSION} - pull: true - environment: - REPO_RO_TOKEN: - from_secret: REPO_RO_TOKEN - GITHUB_PAT: - from_secret: GITHUB_PAT - HETZNER_S3_ACCESS_KEY_K3S: - from_secret: HETZNER_S3_ACCESS_KEY_K3S - HETZNER_S3_SECRET_KEY_K3S: - from_secret: HETZNER_S3_SECRET_KEY_K3S - # 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 - volumes: - - ${ARCH}-binaries-r-dep-cache-${OS}-${OS_VERSION//./}:/mnt/cache - commands: - - git clone -q https://pat-s:$$REPO_RO_TOKEN@git.devxy.io/devxy/build-cran-binaries.git . - - mkdir -p /mnt/cache/R-pkgs - - rm -rf /mnt/cache/R-pkgs/00LOCK-* /mnt/cache/R-pkgs/bincraft /mnt/cache/pkgcache - - R -q -e 'install.packages("pak", repos = sprintf("https://r-lib.github.io/p/pak/stable/%s/%s/%s", .Platform$pkgType, R.Version()$os, R.Version()$arch))' - - R -q -e 'pak::pak("git::https://codefloe.com/rpkgs/bincraft.git", dependencies = TRUE)' - - R -q -e 'packageVersion("bincraft")' - # - R -q -e "future::plan('multisession', workers = 6L); pkgs = bincraft::query_packages_without_historic_versions('alpine322', 'amd64'); saveRDS(pkgs, '/mnt/cache/pkgs_amd64.rds')" - - R -q -e "future::plan('multisession', workers = 6L); pkgs = bincraft::query_packages_without_historic_versions('alpine323', 'arm64'); saveRDS(pkgs, '/mnt/cache/pkgs_arm64.rds')" - backend_options: - kubernetes: - resources: - requests: - memory: 1000Mi - cpu: 1000m - limits: - memory: 4500Mi - cpu: 8000m - nodeSelector: - kubernetes.io/arch: ${ARCH} - tolerations: - - key: 'CI' - operator: 'Equal' - value: 'true' - effect: 'NoSchedule' diff --git a/build-all-versions-install-deps.yaml b/build-all-versions-install-deps.yaml new file mode 100644 index 0000000..d7c0180 --- /dev/null +++ b/build-all-versions-install-deps.yaml @@ -0,0 +1,63 @@ +# ### Required extra vars +# # ARCH (amd64) +# # OS (alpine) +# # OS_VERSION (3.22) +# # R_VERSION (4.5) +# # when: +# # - event: manual +# # evaluate: 'task == "build-all-arm64"' +# # - event: manual +# # evaluate: 'task == "build-all-amd64"' + +# skip_clone: true + +# labels: +# platform: linux/amd64 +# backend: kubernetes + +# steps: +# - name: 'Install common R deps' +# image: reg.devxy.io/rpkgs/build-env-${OS}:${OS_VERSION}-${R_VERSION} +# pull: true +# environment: +# REPO_RO_TOKEN: +# from_secret: REPO_RO_TOKEN +# GITHUB_PAT: +# from_secret: GITHUB_PAT +# HETZNER_S3_ACCESS_KEY_K3S: +# from_secret: HETZNER_S3_ACCESS_KEY_K3S +# HETZNER_S3_SECRET_KEY_K3S: +# from_secret: HETZNER_S3_SECRET_KEY_K3S +# # 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 +# volumes: +# - ${ARCH}-binaries-r-dep-cache-${OS}-${OS_VERSION//./}:/mnt/cache +# commands: +# - git clone -q https://pat-s:$$REPO_RO_TOKEN@git.devxy.io/devxy/build-cran-binaries.git . +# - mkdir -p /mnt/cache/R-pkgs +# - rm -rf /mnt/cache/R-pkgs/00LOCK-* /mnt/cache/R-pkgs/bincraft /mnt/cache/pkgcache +# - R -q -e 'install.packages("pak", repos = sprintf("https://r-lib.github.io/p/pak/stable/%s/%s/%s", .Platform$pkgType, R.Version()$os, R.Version()$arch))' +# - R -q -e 'pak::pak("git::https://codefloe.com/rpkgs/bincraft.git", dependencies = TRUE)' +# - R -q -e 'packageVersion("bincraft")' +# # - R -q -e "future::plan('multisession', workers = 6L); pkgs = bincraft::query_packages_without_historic_versions('alpine322', 'amd64'); saveRDS(pkgs, '/mnt/cache/pkgs_amd64.rds')" +# - R -q -e "future::plan('multisession', workers = 6L); pkgs = bincraft::query_packages_without_historic_versions('alpine323', 'arm64'); saveRDS(pkgs, '/mnt/cache/pkgs_arm64.rds')" +# backend_options: +# kubernetes: +# resources: +# requests: +# memory: 1000Mi +# cpu: 1000m +# limits: +# memory: 4500Mi +# cpu: 8000m +# nodeSelector: +# kubernetes.io/arch: ${ARCH} +# tolerations: +# - key: 'CI' +# operator: 'Equal' +# value: 'true' +# effect: 'NoSchedule'