diff options
author | Munyoki Kilyungi | 2025-05-07 10:17:25 +0300 |
---|---|---|
committer | Munyoki Kilyungi | 2025-05-08 08:59:17 +0300 |
commit | 541a6bf83ee23ad98fa5e0d8801d966d7ffaaa6a (patch) | |
tree | d430a048afc22ee623c22147fdf6805797779727 | |
parent | 7d6f539a93e30885c756bb5dbe384223fb6abcab (diff) | |
download | gn-machines-541a6bf83ee23ad98fa5e0d8801d966d7ffaaa6a.tar.gz |
Add "--init-rdf" option.
Signed-off-by: Munyoki Kilyungi <me@bonfacemunyoki.com>
-rwxr-xr-x | genenetwork-local-container.sh | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/genenetwork-local-container.sh b/genenetwork-local-container.sh index bbdf01c..39be629 100755 --- a/genenetwork-local-container.sh +++ b/genenetwork-local-container.sh @@ -42,6 +42,7 @@ SYSTEM_DIRECTORIES=( GN_PROJECTS=( "genenetwork2:git@github.com:genenetwork/genenetwork2" "genenetwork3:git@github.com:genenetwork/genenetwork3" + "gn-transform-databases:https://git.genenetwork.org/gn-transform-databases/" "gn-auth:https://git.genenetwork.org/gn-auth" "gn-docs:https://git.genenetwork.org/gn-docs" ) @@ -350,3 +351,34 @@ if [ "$1" = "--init-sql" ]; then log INFO "Database import completed successfully" exit 0 fi + +if [ "$1" = "--init-rdf" ]; then + # Check for required tools + for cmd in guix; do + if ! command -v "$cmd" &> /dev/null; then + log ERROR "Required command '$cmd' not found" + exit 1 + fi + done + + log INFO "Please make sure your container is running for this to work" + log INFO "This takes some time to run" + # Check if directory exists and is accessible + if [ -d "$BASE_DIR/var/lib/data" ]; then + if [ -w "$BASE_DIR/var/lib/data" ]; then + log "DEBUG" "Directory exists and is writable: $BASE_DIR/var/lib/data" + else + log "WARNING" "Directory exists but is not writable: $BASE_DIR/var/lib/data. Making this writable" + sudo chown -R "$USER" "$BASE_DIR/var/lib/data" + fi + continue + fi + curr_dir="$PWD" + cd "$BASE_DIR/gn-transform-databases" + guix shell -m "manifest.scm" -- guile "generate-ttl-files.scm" \ + --settings "$curr_dir/etc/conn.scm" --output "$BASE_DIR/var/lib/data" + guix shell guile-dbi -m "manifest.scm" -- guile load-rdf.scm \ + "$curr_dir/etc/conn.scm" + cd $curr_dir + exit 0 +fi |