build-cran-binaries/local/missing-cran-packages.R
2024-12-23 14:36:45 +01:00

39 lines
1.9 KiB
R

### Scope: Lists packages which are missing any tarball in S3 compared to the CRAN pkg listing
library(bincraftR)
library(dplyr)
s3fs::s3_file_system(
aws_access_key_id = Sys.getenv("HETZNER_S3_ACCESS_KEY_K3S"),
aws_secret_access_key = Sys.getenv("HETZNER_S3_SECRET_KEY_K3S"),
endpoint = "https://fsn1.your-objectstorage.com",
region_name = "fsn1",
refresh = T
)
s3fs::s3_dir_ls("s3://devxy-r-package-binaries")
files <- s3fs::s3_dir_ls(sprintf("devxy-r-package-binaries/amd64/jammy/latest/src/contrib")) # done
files <- s3fs::s3_dir_ls(sprintf("devxy-r-package-binaries/amd64/noble/latest/src/contrib")) # done
files <- s3fs::s3_dir_ls(sprintf("devxy-r-package-binaries/amd64/rhel8/latest/src/contrib")) # done
files <- s3fs::s3_dir_ls(sprintf("devxy-r-package-binaries/amd64/rhel9/latest/src/contrib")) # done
files <- s3fs::s3_dir_ls(sprintf("devxy-r-package-binaries/amd64/alpine320/latest/src/contrib")) # done
files <- s3fs::s3_dir_ls(sprintf("devxy-r-package-binaries/arm64/jammy/latest/src/contrib")) # done
files <- s3fs::s3_dir_ls(sprintf("devxy-r-package-binaries/arm64/noble/latest/src/contrib")) # done
files <- s3fs::s3_dir_ls(sprintf("devxy-r-package-binaries/arm64/rhel8/latest/src/contrib")) # done
files <- s3fs::s3_dir_ls(sprintf("devxy-r-package-binaries/arm64/rhel9/latest/src/contrib")) # done
files <- s3fs::s3_dir_ls(sprintf("devxy-r-package-binaries/arm64/alpine320/latest/src/contrib"))
files_b=basename(files)
files_b_split = sapply(strsplit(basename(files_b), "_"), function(x) x[1])
cran_pkgs <- tools::CRAN_package_db() |>
filter(`Date/Publication` <= "2024-12-02") |>
pull(Package)
pkgs = setdiff(cran_pkgs, files_b_split)
formatted_pkgs <- gsub('"', "'", capture.output(dput(as.character(na.omit(pkgs[1:900])))))
formatted_pkgs_one_line <- paste(formatted_pkgs, collapse = " ")
cat(formatted_pkgs_one_line, "\n", sep = "")
clipr::write_clip(formatted_pkgs_one_line)