From e9aeb5f0bacb79f834ba47a21911bffe9465f1b7 Mon Sep 17 00:00:00 2001 From: Elizabeth Perl Date: Thu, 31 Oct 2024 16:15:18 -0400 Subject: [PATCH] try test models update fix --- .github/workflows/update-ss3-models.yml | 65 +++++++++++++------------ 1 file changed, 35 insertions(+), 30 deletions(-) diff --git a/.github/workflows/update-ss3-models.yml b/.github/workflows/update-ss3-models.yml index 6ceb8a9..27f3405 100644 --- a/.github/workflows/update-ss3-models.yml +++ b/.github/workflows/update-ss3-models.yml @@ -46,45 +46,50 @@ jobs: mod_dir_name <- dirs_test[grepl("model", dirs_test)] mod_dir_name <- gsub(".*\\./", "", mod_dir_name) - update_ref_files <- function(new_mod_path, ss_examples_folder = file.path(getwd(), mod_dir_name)) { - mod_name <- basename(new_mod_path) - git_mod_path <- file.path(ss_examples_folder, mod_name) - # list model files that need to be moved - files_to_move <- c("ss.par", "ss3.par", "ss_summary.sso", "warning.sso") - # copy model files from new_mod_path folder to the git_mod_path folder, - results_of_move <- lapply(files_to_move, - function(x, new_mod_path, git_mod_path) { - file.remove(file.path(git_mod_path, x)) - file.copy(from = file.path(new_mod_path, x), - to = file.path(git_mod_path, x), - overwrite = FALSE) - #to make sure worked: - worked <- file.exists(file.path(git_mod_path, x)) - }, new_mod_path = new_mod_path, git_mod_path = git_mod_path) - if(all(unlist(results_of_move) == TRUE)) { - files_replaced <- TRUE - } else { - files_replaced <- FALSE - } - files_replaced - } - + update_ref_files <- function(new_mod_path, mod_dir_name) { + ss_examples_folder <- file.path(getwd(), mod_dir_name) + mod_name <- basename(new_mod_path) + git_mod_path <- file.path(ss_examples_folder, mod_name) + # list model files that need to be moved + files_to_move <- c("ss.par", "ss3.par", "ss_summary.sso", "warning.sso") + # copy model files from new_mod_path folder to the git_mod_path folder, + results_of_move <- lapply(files_to_move, + function(x, new_mod_path, git_mod_path) { + # file.remove(file.path(git_mod_path, x)) + file.copy(from = file.path(new_mod_path, x), + to = file.path(git_mod_path, x), + overwrite = TRUE) + #to make sure worked: + worked <- file.exists(file.path(git_mod_path, x)) + }, new_mod_path = new_mod_path, git_mod_path = git_mod_path) + if(all(unlist(results_of_move) == TRUE)) { + files_replaced <- TRUE + } else { + files_replaced <- FALSE + } + files_replaced + } + new_mod_dir_name <- "new_models" r4ss::populate_multiple_folders(outerdir.old = mod_dir_name, outerdir.new = new_mod_dir_name, exe.file = NULL, verbose = FALSE) - purrr::map( - .x = file.path(new_mod_dir_name, list.files(new_mod_dir_name)), - .f = r4ss::run, - exe = "/usr/local/bin/ss3", - verbose = TRUE) - + purrr::map( + .x = file.path(new_mod_dir_name, list.files(new_mod_dir_name)), + .f = r4ss::run, + exe = "/usr/local/bin/ss3", + verbose = TRUE) + new_mod_runs_folder <- file.path(new_mod_dir_name) new_mod_path_list <- list.dirs(new_mod_runs_folder, recursive = FALSE, full.names = TRUE) - run_result <- lapply(new_mod_path_list, update_ref_files) + run_result <- purrr::map( + .x = new_mod_path_list, + .f = update_ref_files, + mod_dir_name = mod_dir_name) + run_result r4ss::populate_multiple_folders(outerdir.old = new_mod_dir_name,