Loading cli/scord_query.cpp +1 −2 Original line number Diff line number Diff line Loading @@ -84,11 +84,10 @@ main(int argc, char* argv[]) { fmt::print(stdout, "Job metadata:\n" " adhoc_controller_address: {}\n" " adhoc_controller: {}\n" " io_procs: {}\n", info.adhoc_controller_address(), info.io_procs()); } catch(const std::exception& ex) { fmt::print(stderr, "Error: {}\n", ex.what()); return EXIT_FAILURE; Loading plugins/slurm/systemd/cargo@.service.in 0 → 100644 +11 −0 Original line number Diff line number Diff line [Unit] Description=Cargo parallel data stager [Service] Type=simple EnvironmentFile=%S/cargo/%I.cfg ExecStart=@CMAKE_INSTALL_FULL_DATADIR@/@PROJECT_NAME@/slurm/cargoctl start -s ${CARGO_ADDRESS} -H ${CARGO_HOSTS} -n ${CARGO_NUM_NODES} ExecStop=@CMAKE_INSTALL_FULL_DATADIR@/@PROJECT_NAME@/slurm/cargoctl stop -s ${CARGO_ADDRESS} Restart=no PrivateTmp=true NoNewPrivileges=true src/lib/scord/types.hpp +15 −5 Original line number Diff line number Diff line Loading @@ -242,7 +242,7 @@ struct adhoc_storage { explicit ctx(ADM_adhoc_context_t ctx); explicit operator ADM_adhoc_context_t() const; std::string std::string const& controller_address() const; execution_mode exec_mode() const; Loading Loading @@ -292,7 +292,7 @@ struct adhoc_storage { type() const; std::uint64_t id() const; adhoc_storage::ctx adhoc_storage::ctx const& context() const; adhoc_storage::resources Loading Loading @@ -474,8 +474,15 @@ class job_info { public: job_info() = default; constexpr explicit job_info(std::uint32_t procs_for_io) : m_procs_for_io(procs_for_io) {} explicit job_info(std::string adhoc_controller_address, std::uint32_t procs_for_io) : m_adhoc_address(std::move(adhoc_controller_address)), m_procs_for_io(procs_for_io) {} constexpr std::string const& adhoc_controller_address() const { return m_adhoc_address; } /** * @brief Get the number of processes that should be used for I/O. Loading @@ -491,9 +498,11 @@ private: template <class Archive> void serialize(Archive& ar) { ar & m_adhoc_address; ar & m_procs_for_io; } std::string m_adhoc_address; std::uint32_t m_procs_for_io; }; Loading Loading @@ -670,7 +679,8 @@ struct fmt::formatter<scord::job_info> : formatter<std::string_view> { template <typename FormatContext> auto format(const scord::job_info& ji, FormatContext& ctx) const { return format_to(ctx.out(), "{{io_procs: {}}}", ji.io_procs()); return format_to(ctx.out(), "{{adhoc_controller: {}, io_procs: {}}}", ji.adhoc_controller_address(), ji.io_procs()); } }; Loading src/lib/types.cpp +3 −3 Original line number Diff line number Diff line Loading @@ -583,7 +583,7 @@ adhoc_storage::ctx::operator ADM_adhoc_context_t() const { m_should_flush); } std::string std::string const& adhoc_storage::ctx::controller_address() const { return m_controller_address; } Loading Loading @@ -640,7 +640,7 @@ public: return m_id; } adhoc_storage::ctx adhoc_storage::ctx const& context() const { return m_ctx; } Loading Loading @@ -740,7 +740,7 @@ adhoc_storage::id() const { return m_pimpl->id(); } adhoc_storage::ctx adhoc_storage::ctx const& adhoc_storage::context() const { return m_pimpl->context(); } Loading src/scord/internal_types.cpp +11 −3 Original line number Diff line number Diff line Loading @@ -29,10 +29,13 @@ namespace scord::internal { job_metadata::job_metadata(scord::job job, scord::job::resources resources, scord::job::requirements requirements) job_metadata::job_metadata( scord::job job, scord::job::resources resources, scord::job::requirements requirements, std::shared_ptr<internal::adhoc_storage_metadata> adhoc_metadata_ptr) : m_job(std::move(job)), m_resources(std::move(resources)), m_requirements(std::move(requirements)) {} m_requirements(std::move(requirements)), m_adhoc_metadata_ptr(std::move(adhoc_metadata_ptr)) {} scord::job job_metadata::job() const { Loading Loading @@ -71,6 +74,11 @@ adhoc_storage_metadata::uuid() const { return m_uuid; } std::string const& adhoc_storage_metadata::controller_address() const { return m_adhoc_storage.context().controller_address(); } void adhoc_storage_metadata::update(scord::adhoc_storage::resources new_resources) { m_adhoc_storage.update(std::move(new_resources)); Loading Loading
cli/scord_query.cpp +1 −2 Original line number Diff line number Diff line Loading @@ -84,11 +84,10 @@ main(int argc, char* argv[]) { fmt::print(stdout, "Job metadata:\n" " adhoc_controller_address: {}\n" " adhoc_controller: {}\n" " io_procs: {}\n", info.adhoc_controller_address(), info.io_procs()); } catch(const std::exception& ex) { fmt::print(stderr, "Error: {}\n", ex.what()); return EXIT_FAILURE; Loading
plugins/slurm/systemd/cargo@.service.in 0 → 100644 +11 −0 Original line number Diff line number Diff line [Unit] Description=Cargo parallel data stager [Service] Type=simple EnvironmentFile=%S/cargo/%I.cfg ExecStart=@CMAKE_INSTALL_FULL_DATADIR@/@PROJECT_NAME@/slurm/cargoctl start -s ${CARGO_ADDRESS} -H ${CARGO_HOSTS} -n ${CARGO_NUM_NODES} ExecStop=@CMAKE_INSTALL_FULL_DATADIR@/@PROJECT_NAME@/slurm/cargoctl stop -s ${CARGO_ADDRESS} Restart=no PrivateTmp=true NoNewPrivileges=true
src/lib/scord/types.hpp +15 −5 Original line number Diff line number Diff line Loading @@ -242,7 +242,7 @@ struct adhoc_storage { explicit ctx(ADM_adhoc_context_t ctx); explicit operator ADM_adhoc_context_t() const; std::string std::string const& controller_address() const; execution_mode exec_mode() const; Loading Loading @@ -292,7 +292,7 @@ struct adhoc_storage { type() const; std::uint64_t id() const; adhoc_storage::ctx adhoc_storage::ctx const& context() const; adhoc_storage::resources Loading Loading @@ -474,8 +474,15 @@ class job_info { public: job_info() = default; constexpr explicit job_info(std::uint32_t procs_for_io) : m_procs_for_io(procs_for_io) {} explicit job_info(std::string adhoc_controller_address, std::uint32_t procs_for_io) : m_adhoc_address(std::move(adhoc_controller_address)), m_procs_for_io(procs_for_io) {} constexpr std::string const& adhoc_controller_address() const { return m_adhoc_address; } /** * @brief Get the number of processes that should be used for I/O. Loading @@ -491,9 +498,11 @@ private: template <class Archive> void serialize(Archive& ar) { ar & m_adhoc_address; ar & m_procs_for_io; } std::string m_adhoc_address; std::uint32_t m_procs_for_io; }; Loading Loading @@ -670,7 +679,8 @@ struct fmt::formatter<scord::job_info> : formatter<std::string_view> { template <typename FormatContext> auto format(const scord::job_info& ji, FormatContext& ctx) const { return format_to(ctx.out(), "{{io_procs: {}}}", ji.io_procs()); return format_to(ctx.out(), "{{adhoc_controller: {}, io_procs: {}}}", ji.adhoc_controller_address(), ji.io_procs()); } }; Loading
src/lib/types.cpp +3 −3 Original line number Diff line number Diff line Loading @@ -583,7 +583,7 @@ adhoc_storage::ctx::operator ADM_adhoc_context_t() const { m_should_flush); } std::string std::string const& adhoc_storage::ctx::controller_address() const { return m_controller_address; } Loading Loading @@ -640,7 +640,7 @@ public: return m_id; } adhoc_storage::ctx adhoc_storage::ctx const& context() const { return m_ctx; } Loading Loading @@ -740,7 +740,7 @@ adhoc_storage::id() const { return m_pimpl->id(); } adhoc_storage::ctx adhoc_storage::ctx const& adhoc_storage::context() const { return m_pimpl->context(); } Loading
src/scord/internal_types.cpp +11 −3 Original line number Diff line number Diff line Loading @@ -29,10 +29,13 @@ namespace scord::internal { job_metadata::job_metadata(scord::job job, scord::job::resources resources, scord::job::requirements requirements) job_metadata::job_metadata( scord::job job, scord::job::resources resources, scord::job::requirements requirements, std::shared_ptr<internal::adhoc_storage_metadata> adhoc_metadata_ptr) : m_job(std::move(job)), m_resources(std::move(resources)), m_requirements(std::move(requirements)) {} m_requirements(std::move(requirements)), m_adhoc_metadata_ptr(std::move(adhoc_metadata_ptr)) {} scord::job job_metadata::job() const { Loading Loading @@ -71,6 +74,11 @@ adhoc_storage_metadata::uuid() const { return m_uuid; } std::string const& adhoc_storage_metadata::controller_address() const { return m_adhoc_storage.context().controller_address(); } void adhoc_storage_metadata::update(scord::adhoc_storage::resources new_resources) { m_adhoc_storage.update(std::move(new_resources)); Loading