Commit a50a7e6c authored by Ramon Nou's avatar Ramon Nou
Browse files

Merge branch 'rnou/163-dataclay-integration' into 'main'

Resolve "Root issues and stage-out with SPANK"

At the end, stage-out in root installation was never implemented, so this merge request does it:
1. Stage-in (and waiting until copy happens, bool in trasfer_datasets)
2. Stage-out (and waiting until copy happens)
3. terminates adhoc fs
4. removes adhoc fs directory.

Some issues with needed environment variables solved, however LIBGKFS_HOSTS_FILE and GKFS_DAEMON and GKFS_CLIENT should be defined in the environment as they are installation dependant.

See merge request !126
parents c26920b1 360fe5b6
Loading
Loading
Loading
Loading
Loading
+2 −2
Original line number Diff line number Diff line
@@ -30,7 +30,7 @@ cmake_minimum_required(VERSION 3.19)

project(
  scord
  VERSION 0.3.4
  VERSION 0.3.6
  LANGUAGES C CXX
)

@@ -312,7 +312,7 @@ find_package(RedisPlusPlus 1.3.3 REQUIRED)

### Cargo: required for transferring datasets between storage tiers
message(STATUS "[${PROJECT_NAME}] Checking for Cargo")
find_package(Cargo 0.3.1 REQUIRED)
find_package(Cargo 0.3.6 REQUIRED)

message(STATUS "[${PROJECT_NAME}] Checking for Hiredis")
find_package(hiredis REQUIRED)
+1 −1
Original line number Diff line number Diff line
/******************************************************************************
 * Copyright 2021-2022, Barcelona Supercomputing Center (BSC), Spain
 * Copyright 2021-2024, Barcelona Supercomputing Center (BSC), Spain
 *
 * This software was partially supported by the EuroHPC-funded project ADMIRE
 *   (Project ID: 956748, https://www.admire-eurohpc.eu).
+6 −3
Original line number Diff line number Diff line
@@ -31,6 +31,7 @@ struct query_config {
    std::string progname;
    std::string server_address;
    std::uint32_t job_id{};
    bool verbose{};
};

query_config
@@ -47,6 +48,7 @@ parse_command_line(int argc, char* argv[]) {
            ->required();
    app.add_option("job_id", cfg.job_id, "Job ID")->required();

    app.add_option("-v, --verbose  ", cfg.verbose, "Enable verbose output");
    try {
        app.parse(argc, argv);
        return cfg;
@@ -81,13 +83,14 @@ main(int argc, char* argv[]) {

        scord::job_info info =
                scord::query(scord::server{protocol, address}, cfg.job_id);

        if (cfg.verbose)
        fmt::print(stdout,
                   "Job metadata:\n"
                   "  adhoc_controller: {}\n"
                   "  adhoc_uuid: {}\n"
                   "  io_procs: {}\n",
                   info.adhoc_controller_address(), info.io_procs());

                   info.adhoc_controller_address(), info.uuid(), info.io_procs());
        else fmt::print(stdout,"{}\n", info.uuid());
    } catch(const std::exception& ex) {
        fmt::print(stderr, "Error: {}\n", ex.what());
        return EXIT_FAILURE;
+1 −1
Original line number Diff line number Diff line
@@ -117,7 +117,7 @@ main(int argc, char* argv[]) {
    ADM_transfer_t tx;

    ret = ADM_transfer_datasets(server, job, sources, sources_len, targets,
                                targets_len, limits, limits_len, mapping, &tx);
                                targets_len, limits, limits_len, mapping, &tx, false);

    if(ret != ADM_SUCCESS) {
        fprintf(stderr,
+1 −1
Original line number Diff line number Diff line
@@ -117,7 +117,7 @@ main(int argc, char* argv[]) {
    ADM_transfer_t tx;

    ret = ADM_transfer_datasets(server, job, sources, sources_len, targets,
                                targets_len, limits, limits_len, mapping, &tx);
                                targets_len, limits, limits_len, mapping, &tx, false);

    if(ret != ADM_SUCCESS) {
        fprintf(stderr,
Loading