From 8f08fd360154abdbedd579e5e0cf1e7c5c5a3028 Mon Sep 17 00:00:00 2001 From: A Wokaty Date: Tue, 6 May 2025 16:23:29 -0400 Subject: [PATCH 1/3] Make meta dbs --- propagation/3.21/updateReposPkgs-bioc.sh | 11 ++++++++ propagation/3.22/updateReposPkgs-bioc.sh | 11 ++++++++ utils/makeMetaDbs.R | 33 ++++++++++++++++++++++++ 3 files changed, 55 insertions(+) create mode 100644 utils/makeMetaDbs.R diff --git a/propagation/3.21/updateReposPkgs-bioc.sh b/propagation/3.21/updateReposPkgs-bioc.sh index 63648e99..5eae549c 100755 --- a/propagation/3.21/updateReposPkgs-bioc.sh +++ b/propagation/3.21/updateReposPkgs-bioc.sh @@ -17,6 +17,10 @@ WIN_CONTRIB="$REPOS_ROOT/bin/windows/contrib/$R_VERSION" MAC_BIG_SUR_x86_64_CONTRIB="$REPOS_ROOT/bin/macosx/big-sur-x86_64/contrib/$R_VERSION" MAC_BIG_SUR_arm64_CONTRIB="$REPOS_ROOT/bin/macosx/big-sur-arm64/contrib/$R_VERSION" +META_SRC="$SRC_CONTRIB/Meta" +META_R_EXPR="source('/home/biocbuild/BBS/utils/makeMetaDbs.R')" +MEAT_PATH="/home/biocbuild/bbs-$BIOC_VERSION-bioc/meat" + if [ ! -f "$PROPAGATION_DB_FILE" ]; then echo "ERROR: $PROPAGATION_DB_FILE not found. Did postrun.sh run?" exit 1 @@ -72,6 +76,13 @@ for i in `ls $MANUALS_SRC`; do mkdir -p $MANUALS_DEST/$pkg/man cp --update --verbose $MANUALS_SRC/$i $MANUALS_DEST/$pkg/man done +echo "" +echo "========================================================================" +/bin/date +echo "------------------------------------------------------------------------" + +echo "Updating $META_SRC with aliases and cross refences dbs..." +$Rscript -e "$META_R_EXPR; try(makeMetaDbs('$PROPAGATION_DB_FILE', '$MEAT_PATH', '$REPOS_ROOT', '$META_SRC'))" echo "DONE." exit 0 diff --git a/propagation/3.22/updateReposPkgs-bioc.sh b/propagation/3.22/updateReposPkgs-bioc.sh index ba4aeccd..60b65810 100755 --- a/propagation/3.22/updateReposPkgs-bioc.sh +++ b/propagation/3.22/updateReposPkgs-bioc.sh @@ -17,6 +17,10 @@ WIN_CONTRIB="$REPOS_ROOT/bin/windows/contrib/$R_VERSION" MAC_BIG_SUR_x86_64_CONTRIB="$REPOS_ROOT/bin/macosx/big-sur-x86_64/contrib/$R_VERSION" MAC_BIG_SUR_arm64_CONTRIB="$REPOS_ROOT/bin/macosx/big-sur-arm64/contrib/$R_VERSION" +META_SRC="$SRC_CONTRIB/Meta" +META_R_EXPR="source('/home/biocbuild/BBS/utils/makeMetaDbs.R')" +MEAT_PATH="/home/biocbuild/bbs-$BIOC_VERSION-bioc/meat" + if [ ! -f "$PROPAGATION_DB_FILE" ]; then echo "ERROR: $PROPAGATION_DB_FILE not found. Did postrun.sh run?" exit 1 @@ -72,6 +76,13 @@ for i in `ls $MANUALS_SRC`; do mkdir -p $MANUALS_DEST/$pkg/man cp --update --verbose $MANUALS_SRC/$i $MANUALS_DEST/$pkg/man done +echo "" +echo "========================================================================" +/bin/date +echo "------------------------------------------------------------------------" + +echo "Updating $META_SRC with aliases and cross refences dbs..." +$Rscript -e "$META_R_EXPR; try(makeMetaDbs('$PROPAGATION_DB_FILE', '$MEAT_PATH', '$REPOS_ROOT', '$META_SRC'))" echo "DONE." exit 0 diff --git a/utils/makeMetaDbs.R b/utils/makeMetaDbs.R new file mode 100644 index 00000000..ec0926a1 --- /dev/null +++ b/utils/makeMetaDbs.R @@ -0,0 +1,33 @@ +makeMetaDbs <- function(db_filepath, repos_root, meta_path) { + + meat_dir <- Sys.getenv("BBS_MEAT_PATH") + prop_status <- read.dcf(db_filepath) + + pkgs <- c() + for (i in 1:dim(prop_status)[2]) { + pkg_type_stage <- strsplit(colnames(prop_status)[i], "#")[[1]] + if ("source" %in% pkg_type_stage && + strsplit(prop_status[i], ",")[[1]][1] %in% c("YES", "UNNEEDED")) { + pkgs <- c(pkgs, pkg_type_stage[1]) + } + } + + web_dir <- file.path(repos_root, "web", "packages") + meta_dir <- file.path(meta_path) + if (!dir.exists(meta_dir)) { + dir.create(meta_dir, recursive = TRUE) + } + + pkg_paths <- file.path(meat_dir, pkgs) + for (pkg_path in pkg_paths) { + biocViews::build_db_from_source(pkg_path, repos_root) + } + + aliases_db_file <- file.path(meta_dir, "aliases.rds") + meta_aliases_db <- biocViews::build_meta_aliases_db(web_dir, aliases_db_file) + saveRDS(meta_aliases_db, aliases_db_file, version = 2) + + rdxrefs_db_file <- file.path(meta_dir, "rdxrefs.rds") + meta_rdxrefs_db <- biocViews::build_meta_rdxrefs_db(web_dir, rdxrefs_db_file) + saveRDS(meta_rdxrefs_db, rdxrefs_db_file, version = 2) +} From 92af6a72909a83a93402e915d76c9516e001ead3 Mon Sep 17 00:00:00 2001 From: A Wokaty Date: Wed, 4 Jun 2025 09:54:45 -0400 Subject: [PATCH 2/3] Remove meta db creation for 3.21 --- propagation/3.21/updateReposPkgs-bioc.sh | 11 ----------- 1 file changed, 11 deletions(-) diff --git a/propagation/3.21/updateReposPkgs-bioc.sh b/propagation/3.21/updateReposPkgs-bioc.sh index 5eae549c..63648e99 100755 --- a/propagation/3.21/updateReposPkgs-bioc.sh +++ b/propagation/3.21/updateReposPkgs-bioc.sh @@ -17,10 +17,6 @@ WIN_CONTRIB="$REPOS_ROOT/bin/windows/contrib/$R_VERSION" MAC_BIG_SUR_x86_64_CONTRIB="$REPOS_ROOT/bin/macosx/big-sur-x86_64/contrib/$R_VERSION" MAC_BIG_SUR_arm64_CONTRIB="$REPOS_ROOT/bin/macosx/big-sur-arm64/contrib/$R_VERSION" -META_SRC="$SRC_CONTRIB/Meta" -META_R_EXPR="source('/home/biocbuild/BBS/utils/makeMetaDbs.R')" -MEAT_PATH="/home/biocbuild/bbs-$BIOC_VERSION-bioc/meat" - if [ ! -f "$PROPAGATION_DB_FILE" ]; then echo "ERROR: $PROPAGATION_DB_FILE not found. Did postrun.sh run?" exit 1 @@ -76,13 +72,6 @@ for i in `ls $MANUALS_SRC`; do mkdir -p $MANUALS_DEST/$pkg/man cp --update --verbose $MANUALS_SRC/$i $MANUALS_DEST/$pkg/man done -echo "" -echo "========================================================================" -/bin/date -echo "------------------------------------------------------------------------" - -echo "Updating $META_SRC with aliases and cross refences dbs..." -$Rscript -e "$META_R_EXPR; try(makeMetaDbs('$PROPAGATION_DB_FILE', '$MEAT_PATH', '$REPOS_ROOT', '$META_SRC'))" echo "DONE." exit 0 From 8322516a91c5bf73401182eb5c7726eaf769c3df Mon Sep 17 00:00:00 2001 From: A Wokaty Date: Wed, 4 Jun 2025 09:55:07 -0400 Subject: [PATCH 3/3] Add meta db creation for experiments, annotations --- propagation/3.22/updateReposPkgs-data-annotation.sh | 11 +++++++++++ propagation/3.22/updateReposPkgs-data-experiment.sh | 11 +++++++++++ 2 files changed, 22 insertions(+) diff --git a/propagation/3.22/updateReposPkgs-data-annotation.sh b/propagation/3.22/updateReposPkgs-data-annotation.sh index da8d1316..01bd5b6a 100755 --- a/propagation/3.22/updateReposPkgs-data-annotation.sh +++ b/propagation/3.22/updateReposPkgs-data-annotation.sh @@ -14,6 +14,10 @@ PROPAGATION_DB_FILE="$BBS_OUTGOING_DIR/../PROPAGATION_STATUS_DB.txt" REPOS_ROOT="$HOME/PACKAGES/$BIOC_VERSION/data/annotation" SRC_CONTRIB="$REPOS_ROOT/src/contrib" +META_SRC="$SRC_CONTRIB/Meta" +META_R_EXPR="source('/home/biocbuild/BBS/utils/makeMetaDbs.R')" +MEAT_PATH="/home/biocbuild/bbs-$BIOC_VERSION-data-annotation/meat" + if [ ! -f "$PROPAGATION_DB_FILE" ]; then echo "ERROR: $PROPAGATION_DB_FILE not found. Did postrun.sh run?" exit 1 @@ -58,6 +62,13 @@ for i in `ls $MANUALS_SRC`; do mkdir -p $MANUALS_DEST/$pkg/man cp --update --verbose $MANUALS_SRC/$i $MANUALS_DEST/$pkg/man done +echo "" +echo "========================================================================" +/bin/date +echo "------------------------------------------------------------------------" + +echo "Updating $META_SRC with aliases and cross refences dbs..." +$Rscript -e "$META_R_EXPR; try(makeMetaDbs('$PROPAGATION_DB_FILE', '$MEAT_PATH', '$REPOS_ROOT', '$META_SRC'))" echo "DONE." exit 0 diff --git a/propagation/3.22/updateReposPkgs-data-experiment.sh b/propagation/3.22/updateReposPkgs-data-experiment.sh index ffaa53ab..35ba19e6 100755 --- a/propagation/3.22/updateReposPkgs-data-experiment.sh +++ b/propagation/3.22/updateReposPkgs-data-experiment.sh @@ -14,6 +14,10 @@ PROPAGATION_DB_FILE="$BBS_OUTGOING_DIR/../PROPAGATION_STATUS_DB.txt" REPOS_ROOT="$HOME/PACKAGES/$BIOC_VERSION/data/experiment" SRC_CONTRIB="$REPOS_ROOT/src/contrib" +META_SRC="$SRC_CONTRIB/Meta" +META_R_EXPR="source('/home/biocbuild/BBS/utils/makeMetaDbs.R')" +MEAT_PATH="/home/biocbuild/bbs-$BIOC_VERSION-data-experiment/meat" + if [ ! -f "$PROPAGATION_DB_FILE" ]; then echo "ERROR: $PROPAGATION_DB_FILE not found. Did postrun.sh run?" exit 1 @@ -58,6 +62,13 @@ for i in `ls $MANUALS_SRC`; do mkdir -p $MANUALS_DEST/$pkg/man cp --update --verbose $MANUALS_SRC/$i $MANUALS_DEST/$pkg/man done +echo "" +echo "========================================================================" +/bin/date +echo "------------------------------------------------------------------------" + +echo "Updating $META_SRC with aliases and cross refences dbs..." +$Rscript -e "$META_R_EXPR; try(makeMetaDbs('$PROPAGATION_DB_FILE', '$MEAT_PATH', '$REPOS_ROOT', '$META_SRC'))" echo "DONE." exit 0