fix: bincraftr url for install
All checks were successful
ci/crow/cron/process-updates-alpine-320-arm64 Pipeline was successful
ci/crow/cron/process-updates-redhat-8-arm64 Pipeline was successful
ci/crow/cron/process-updates-redhat-8-amd64 Pipeline was successful
ci/crow/cron/process-updates-alpine-320-amd64 Pipeline was successful
ci/crow/cron/process-updates-ubuntu-2404-amd64 Pipeline was successful
ci/crow/cron/process-updates-redhat-9-arm64 Pipeline was successful
ci/crow/cron/process-updates-alpine-321-amd64 Pipeline was successful
ci/crow/cron/process-updates-ubuntu-2204-amd64 Pipeline was successful
ci/crow/cron/process-updates-redhat-9-amd64 Pipeline was successful
ci/crow/cron/process-updates-ubuntu-2404-arm64 Pipeline was successful

This commit is contained in:
Patrick Schratz 2025-05-29 17:14:14 +02:00
commit b769276679
Signed by: pat-s
GPG key ID: 3C6318841EF78925
8 changed files with 32 additions and 32 deletions

View file

@ -64,6 +64,6 @@ RUN mkdir -p /mnt/cache/packages /mnt/cache/pkgcache /mnt/cache/R-pkgs
# encoding -> https://github.com/r-hub/r-minimal/blob/fa9c117313e05860a0d20b113e5f794c51be8b8c/Dockerfile#L84
RUN sed -i 's/,//g' /opt/R/${R_VERSION}/lib/R/library/utils/iconvlist
RUN R -q -e 'pak::pak("git::https://gitlab.com/devxy/r-package-binaries/bincraftr.git", dependencies = TRUE)'
RUN R -q -e 'pak::pak("git::https://codefloe.com/rpkgs/bincraftr.git", dependencies = TRUE)'
CMD ["/bin/bash"]

View file

@ -5,7 +5,7 @@ RUN apk add -q --no-cache curl tar make lapack lapack-dev blas blas-dev gcc gfor
# These usually are not packaged in OS repositories and need to be installed from source
# - JAGS (needed for runjags which itself is again a dependency of many packages)
RUN curl -s -L -O https://sourceforge.net/projects/mcmc-jags/files/JAGS/4.x/Source/JAGS-4.3.2.tar.gz && \
tar -xzf JAGS-4.3.2.tar.gz && cd JAGS-4.3.2 && ./configure --enable-silent-rules && make 2>&1
tar -xzf JAGS-4.3.2.tar.gz && cd JAGS-4.3.2 && ./configure --enable-silent-rules && make 2>&1
FROM alpine:3.21 AS final
@ -27,7 +27,7 @@ COPY --link --from=jags /JAGS-4.3.2 /JAGS-4.3.2
# # xvfb: for graphical pkgs requiring tcl, like gWidgets2tcltk
RUN apk add -q --no-cache curl tar make blas blas-dev gcc gfortran g++ htop git cmake tk-dev xvfb xvfb-run xorg-server xauth xinit xz libdeflate libdeflate-dev
### CUSTOM DEPENDENCIES
### CUSTOM DEPENDENCIES
# linux-headers: ps
# libxml2-dev: xml2
@ -43,7 +43,7 @@ RUN apk add --no-cache --update --repository=https://dl-cdn.alpinelinux.org/alpi
# https://github.com/RcppCore/Rcpp/issues/448#issuecomment-220148774
# LDFLAGS+=-fPIC -> arrow (https://github.com/r-hub/r-minimal/blob/main/examples/arrow/Dockerfile)
# dbarts: CFLAGS += -flax-vector-conversions (https://github.com/vdorie/dbarts/issues/66)
# CXXFLAGS: -> Rcpp
# CXXFLAGS: -> Rcpp
# -DDMLC_USE_FOPEN64=0 -> xgboost (https://github.com/dmlc/xgboost/issues/8595)
# can't set ccache for gfortran because of https://gitlab.com/roigrp/solver/highs/-/issues/4
RUN mkdir -p /root/.R && bash -c 'echo -e "CXX_STD = CXX14\nCXXFLAGS=-D__MUSL__ -DDMLC_USE_FOPEN64=0\nCPPFLAGS=-D__MUSL__ -DDMLC_USE_FOPEN64=0\nCFLAGS += -flax-vector-conversions\nLDFLAGS+=-fPIC\nCC=ccache gcc\nCPP=gcc -E\nCXXCPP=gcc -e\nCXX=ccache g++\nCXX11=ccache g++\nCXX14=ccache g++\nCXX17=ccache g++\nF77=gfortran\nFC=gfortran" > /root/.R/Makevars'
@ -64,6 +64,6 @@ RUN mkdir -p /mnt/cache/packages /mnt/cache/pkgcache /mnt/cache/R-pkgs
# encoding -> https://github.com/r-hub/r-minimal/blob/fa9c117313e05860a0d20b113e5f794c51be8b8c/Dockerfile#L84
RUN sed -i 's/,//g' /opt/R/${R_VERSION}/lib/R/library/utils/iconvlist
RUN R -q -e 'pak::pak("git::https://gitlab.com/devxy/r-package-binaries/bincraftr.git", dependencies = TRUE)'
RUN R -q -e 'pak::pak("git::https://codefloe.com/rpkgs/bincraftr.git", dependencies = TRUE)'
CMD ["/bin/bash"]
CMD ["/bin/bash"]

View file

@ -3,16 +3,16 @@ ARG RED_HAT_DEV_PW
RUN subscription-manager register --username mail@devxy.io --password "$RED_HAT_DEV_PW" && subscription-manager repos --enable codeready-builder-for-rhel-8-$(arch)-rpms
RUN dnf install -y https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm && dnf install -y epel-release
RUN dnf install -y -q gcc-c++ lapack-devel make git ca-certificates
RUN dnf install -y -q gcc-c++ lapack-devel make git ca-certificates
# These usually are not packaged in OS repositories and need to be installed from source
# - JAGS (needed for runjags which itself is again a dependency of many packages)
RUN curl -s -L -O https://sourceforge.net/projects/mcmc-jags/files/JAGS/4.x/Source/JAGS-4.3.2.tar.gz && \
tar -xzf JAGS-4.3.2.tar.gz && cd JAGS-4.3.2 && ./configure --enable-silent-rules && make 2>&1
tar -xzf JAGS-4.3.2.tar.gz && cd JAGS-4.3.2 && ./configure --enable-silent-rules && make 2>&1
FROM redhat/ubi8 AS final
# renovate datasource=docker depName=rocker/r-ver
# renovate datasource=docker depName=rocker/r-ver
ARG R_VERSION=4.4.3
ARG RED_HAT_DEV_PW
ENV PATH=/opt/R/${R_VERSION}/bin:$PATH
@ -35,7 +35,7 @@ RUN dnf install -y https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.n
# libfftw3-dev: ravetools -> actually auto-detect but somehow doesn't work in container?
RUN dnf install -y -q make lapack-devel git gcc gcc-c++ fontconfig-devel fribidi-devel libjpeg-turbo-devel libtiff-devel postgresql-devel htop libgit2_1.7-devel libxml2-devel hiredis ccache cmake xorg-x11-server-Xvfb ImageMagick-c++-devel ImageMagick-devel xz pkg-config mecab-devel fftw-devel tk-devel automake readline-devel
### CUSTOM DEPENDENCIES
### CUSTOM DEPENDENCIES
# - Chromium should be auto-installed once pkgdepends merges the latest system-requirements rule changes
RUN dnf install -y chromium
@ -57,6 +57,6 @@ RUN bash -c 'echo -e "PKG_SYSREQS = TRUE\nPKG_SYSREQS_VERBOSE = TRUE\nPKG_SYSREQ
RUN mkdir -p /mnt/cache/packages /mnt/cache/pkgcache /mnt/cache/R-pkgs
RUN R -q -e 'install.packages("gert", repos = "cloud.r-project.org")'
RUN R -q -e 'pak::pak("git::https://gitlab.com/devxy/r-package-binaries/bincraftr.git", dependencies = TRUE)'
RUN R -q -e 'pak::pak("git::https://codefloe.com/rpkgs/bincraftr.git", dependencies = TRUE)'
CMD ["/bin/bash"]
CMD ["/bin/bash"]

View file

@ -3,16 +3,16 @@ ARG RED_HAT_DEV_PW
RUN subscription-manager register --username mail@devxy.io --password "$RED_HAT_DEV_PW" && subscription-manager repos --enable codeready-builder-for-rhel-9-$(arch)-rpms
RUN dnf install -y https://dl.fedoraproject.org/pub/epel/epel-release-latest-9.noarch.rpm && dnf install -y epel-release
RUN dnf install -y -q gcc-c++ lapack-devel make git ca-certificates
RUN dnf install -y -q gcc-c++ lapack-devel make git ca-certificates
# These usually are not packaged in OS repositories and need to be installed from source
# - JAGS (needed for runjags which itself is again a dependency of many packages)
RUN curl -s -L -O https://sourceforge.net/projects/mcmc-jags/files/JAGS/4.x/Source/JAGS-4.3.2.tar.gz && \
tar -xzf JAGS-4.3.2.tar.gz && cd JAGS-4.3.2 && ./configure --enable-silent-rules && make 2>&1
tar -xzf JAGS-4.3.2.tar.gz && cd JAGS-4.3.2 && ./configure --enable-silent-rules && make 2>&1
FROM redhat/ubi9 AS final
# renovate datasource=docker depName=rocker/r-ver
# renovate datasource=docker depName=rocker/r-ver
ARG R_VERSION=4.4.3
ARG RED_HAT_DEV_PW
ENV PATH=/opt/R/${R_VERSION}/bin:$PATH
@ -35,7 +35,7 @@ RUN dnf install -y https://dl.fedoraproject.org/pub/epel/epel-release-latest-9.n
# libfftw3-dev: ravetools -> actually auto-detect but somehow doesn't work in container?
RUN dnf install -y -q make lapack-devel git gcc gcc-c++ fontconfig-devel fribidi-devel libjpeg-turbo-devel libtiff-devel postgresql-devel htop libgit2-devel libxml2-devel hiredis ccache cmake xorg-x11-server-Xvfb ImageMagick-c++-devel ImageMagick-devel xz pkg-config mecab-devel fftw-devel tk-devel automake readline-devel
### CUSTOM DEPENDENCIES
### CUSTOM DEPENDENCIES
# - Chromium should be auto-installed once pkgdepends merges the latest system-requirements rule changes
RUN dnf install -y chromium
@ -56,6 +56,6 @@ RUN bash -c 'echo -e "PKG_SYSREQS = TRUE\nPKG_SYSREQS_VERBOSE = TRUE\nPKG_SYSREQ
# these dirs will later be used by the CI with existing mounts
RUN mkdir -p /mnt/cache/packages /mnt/cache/pkgcache /mnt/cache/R-pkgs
RUN R -q -e 'pak::pak("git::https://gitlab.com/devxy/r-package-binaries/bincraftr.git", dependencies = TRUE)'
RUN R -q -e 'pak::pak("git::https://codefloe.com/rpkgs/bincraftr.git", dependencies = TRUE)'
CMD ["/bin/bash"]
CMD ["/bin/bash"]

View file

@ -54,6 +54,6 @@ RUN apt install -y locales && echo "en_US.UTF-8 UTF-8" >> /etc/locale.gen \
&& locale-gen en_US.utf8 \
&& /usr/sbin/update-locale LANG=en_US.UTF-8
RUN R -q -e 'pak::pak("git::https://gitlab.com/devxy/r-package-binaries/bincraftr.git", dependencies = TRUE)'
RUN R -q -e 'pak::pak("git::https://codefloe.com/rpkgs/bincraftr.git", dependencies = TRUE)'
CMD ["/bin/bash"]

View file

@ -3,14 +3,14 @@ FROM ubuntu:noble AS jags
RUN apt update && apt install -y --no-install-recommends curl make ca-certificates gcc g++ gfortran liblapack-dev
# These usually are not packaged in OS repositories and need to be installed from source
# - JAGS (needed for runjags which itself is again a dependency of many packages)
RUN curl -q -L -O https://sourceforge.net/projects/mcmc-jags/files/JAGS/4.x/Source/JAGS-4.3.2.tar.gz && tar -xzf JAGS-4.3.2.tar.gz && cd JAGS-4.3.2 && ./configure --enable-silent-rules && make 2>&1
RUN curl -q -L -O https://sourceforge.net/projects/mcmc-jags/files/JAGS/4.x/Source/JAGS-4.3.2.tar.gz && tar -xzf JAGS-4.3.2.tar.gz && cd JAGS-4.3.2 && ./configure --enable-silent-rules && make 2>&1
FROM ubuntu:noble AS final
ARG R_VERSION=4.4.3
ENV PATH=/opt/R/${R_VERSION}/bin:$PATH
ENV TZ="Europe/Berlin"
ENV DEBIAN_FRONTEND=noninteractive
ENV DEBIAN_FRONTEND=noninteractive
ARG ARCH=arm64
ENV NCPUS=2
@ -27,7 +27,7 @@ COPY --link --from=jags /JAGS-4.3.2 /JAGS-4.3.2
# libfftw3-dev: ravetools -> actually auto-detect but somehow doesn't work in container?
RUN apt update && apt install -y --no-install-recommends gdebi-core g++ gfortran libbz2-dev libblas-dev libicu-dev liblapack-dev liblzma-dev libpaper-utils libpcre2-dev libtcl8.6 libtk8.6 libxt6 unzip zip zlib1g-dev libpcre3-dev libopenblas-dev curl ca-certificates make ccache htop libgit2-dev git libpq-dev libxml2-dev libgit2-dev cmake xvfb libcurl4-openssl-dev xz-utils tcl tk tk-dev tk-table pkg-config libmecab-dev libfftw3-dev automake
### CUSTOM DEPENDENCIES
### CUSTOM DEPENDENCIES
# - Chromium should be auto-installed once pkgdepends merges the latest system-requirements rule changes
RUN apt-get install -y software-properties-common && \
add-apt-repository -y ppa:xtradeb/apps && \
@ -54,6 +54,6 @@ RUN apt install -y locales && echo "en_US.UTF-8 UTF-8" >> /etc/locale.gen \
&& locale-gen en_US.utf8 \
&& /usr/sbin/update-locale LANG=en_US.UTF-8
RUN R -q -e 'pak::pak("git::https://gitlab.com/devxy/r-package-binaries/bincraftr.git", dependencies = TRUE)'
RUN R -q -e 'pak::pak("git::https://codefloe.com/rpkgs/bincraftr.git", dependencies = TRUE)'
CMD ["/bin/bash"]
CMD ["/bin/bash"]

View file

@ -1,4 +1,4 @@
# R -q -e 'pak::pak("git::https://gitlab.com/devxy/r-package-binaries/bincraftr.git")'
# R -q -e 'pak::pak("git::https://codefloe.com/rpkgs/bincraftr.git")'
# remotes::install_gitlab("devxy/r-package-binaries/bincraftR")
library(bincraftR)

View file

@ -20,7 +20,7 @@ generate_urls() {
local domain="$1"
local arch="$2"
local os_id="$3"
# Array of resource paths (can be modified or extended as needed)
local resources=(
"src/contrib/PACKAGES"
@ -28,7 +28,7 @@ generate_urls() {
"src/contrib/PACKAGES.rds"
"src/contrib/PACKAGES.db"
)
local urls=()
for resource in "${resources[@]}"; do
local target_url="https://${domain}/${arch}/${os_id}/latest/${resource}"
@ -36,23 +36,23 @@ generate_urls() {
encoded=$(urlencode "$target_url")
urls+=( "https://api.bunny.net/purge?url=${encoded}&async=false" )
done
echo "${urls[@]}"
}
# Function to process multiple domains.
# Usage: process_domains <BUNNY_API_KEY> <ARCH> <OS_ID> domain1 [domain2 ... domainN]
# Usage: process_domains <BUNNYNET_API_KEY> <ARCH> <OS_ID> domain1 [domain2 ... domainN]
purge_cdn_cache() {
local api_key="$1"
local arch="$2"
local os_id="$3"
shift 3 # Remove the first three arguments, leaving the domains
for domain in "$@"; do
# Generate the list of URLs for the current domain
local urls
urls=($(generate_urls "$domain" "$arch" "$os_id"))
# Purge each URL
for url in "${urls[@]}"; do
purge "$api_key" "$url"
@ -61,4 +61,4 @@ purge_cdn_cache() {
}
# Example usage:
# purge_cdn_cache "$BUNNY_API_KEY" "$ARCH" "$OS_ID" "domain1.com" "domain2.com"
# purge_cdn_cache "$BUNNYNET_API_KEY" "$ARCH" "$OS_ID" "domain1.com" "domain2.com"