Commit a027efbe authored by Alberto Miranda's avatar Alberto Miranda ♨️
Browse files

Merge branch 'amiranda/127-refactor-cli-for-scord-and-scord-ctl' into 'main'

Resolve "Refactor CLI for scord and scord-ctl"

Closes #127

See merge request !91
parents 9d13a456 7f423f54
Loading
Loading
Loading
Loading
Loading
+14 −16
Original line number Diff line number Diff line
@@ -220,29 +220,27 @@ FetchContent_Declare(
FetchContent_MakeAvailable(spdlog)
set_target_properties(spdlog PROPERTIES POSITION_INDEPENDENT_CODE ON)

### file_options: required for reading configuration files
message(STATUS "[${PROJECT_NAME}] Downloading and building file_options")
### rapidyaml: required for reading configuration files
message(STATUS "[${PROJECT_NAME}] Downloading and building rapidyaml")
FetchContent_Declare(
  file_options
  GIT_REPOSITORY https://storage.bsc.es/gitlab/utils/file_options
  GIT_TAG bdb4f7f7f2dd731815241fc41afe6373df8f732a # v0.1.0-pre
  GIT_SHALLOW ON
  GIT_PROGRESS ON
  ryml
  GIT_REPOSITORY https://github.com/biojppm/rapidyaml.git
  GIT_TAG b35ccb150282760cf5c2d316895cb86bd161ac89 #v0.5.0
  GIT_SHALLOW OFF # ensure submodules are checked out
)

FetchContent_MakeAvailable(file_options)
FetchContent_MakeAvailable(ryml)
set_target_properties(ryml PROPERTIES POSITION_INDEPENDENT_CODE ON)

### genopts: required for generating file_options schemas
message(STATUS "[${PROJECT_NAME}] Downloading and building genopts")
FetchContent_Declare(
  genopts
  GIT_REPOSITORY https://storage.bsc.es/gitlab/utils/genopts
  GIT_TAG c456c2d8ec92f26d9074b123446261103e5c847c # v0.1.0-pre
### CLI11: used for parsing command-line options
message(STATUS "[${PROJECT_NAME}] Searching for CLI11")
FetchContent_Declare(cli11
  GIT_REPOSITORY https://github.com/CLIUtils/CLI11
  GIT_TAG 291c58789c031208f08f4f261a858b5b7083e8e2 # v2.3.2
  GIT_SHALLOW ON
  GIT_PROGRESS ON
)

FetchContent_MakeAvailable(genopts)
FetchContent_MakeAvailable(cli11)

### expected: required for using tl::expected in the C++ library implementation
### until std::expected makes it to C++
+1 −3
Original line number Diff line number Diff line
@@ -127,7 +127,6 @@ and need to be available in the system:
8.0/6.0 or later.
- [CMake](https://cmake.org) 3.19 or later.
- pkg-config 0.29.1 (earlier versions will probably work but haven't been tested).
- [yaml-cpp](https://github.com/jbeder/yaml-cpp) version 0.6.2 and later.
- [Margo](https://github.com/mochi-hpc/mochi-margo) version 0.9.8 and later, and its dependencies:
  - [Argobots](https://github.com/pmodels/argobots) version 1.1 or later.
  - [Mercury](https://github.com/mercury-hpc/mercury) version 2.0.1 or later.
@@ -150,8 +149,7 @@ build process.
- [spdlog](https://github.com/gabime/spdlog) version 1.9.2 or later.
- [Catch2](https://github.com/catchorg/Catch2) version 3.0.1 or later.
- [tl/expected](https://github.com/TartanLlama/expected).
- [file_options](https://storage.bsc.es/gitlab/utils/file_options).
- [gen_opts](https://storage.bsc.es/gitlab/utils/genopts).
- [Rapid YAML](https://github.com/biojppm/rapidyaml) version 0.5.0 and later.

> **ℹ️** **Important**  
Margo and Argobots use `pkg-config` to ensure they compile and link correctly
+4 −17
Original line number Diff line number Diff line
## vim: set filetype=yaml:

## global service settings
global_settings: [

  # if true, dump log messages to syslog
  use_syslog: false,
global_settings:

  # log file
  log_file: "@CMAKE_INSTALL_FULL_LOCALSTATEDIR@/@CMAKE_PROJECT_NAME@/@CMAKE_PROJECT_NAME@.log",
  logfile: "@CMAKE_INSTALL_FULL_LOCALSTATEDIR@/@CMAKE_PROJECT_NAME@/@CMAKE_PROJECT_NAME@.log"

  # path to pidfile
  pidfile: "@CMAKE_INSTALL_FULL_RUNSTATEDIR@/@CMAKE_PROJECT_NAME@/@CMAKE_PROJECT_NAME@.pid",

  # transport protocol used for communication
  transport_protocol: "@SCORD_TRANSPORT_PROTOCOL@",
  rundir: "@CMAKE_INSTALL_FULL_RUNSTATEDIR@/@CMAKE_PROJECT_NAME@"

  # address to bind to
  bind_address: "@SCORD_BIND_ADDRESS@",

  # incoming port for remote connections
  remote_port: @SCORD_BIND_PORT@,

  # number of worker threads to serve I/O requests
  workers: 4,
]
  address: "@SCORD_TRANSPORT_PROTOCOL@://@SCORD_BIND_ADDRESS@:@SCORD_BIND_PORT@"
+0 −1
Original line number Diff line number Diff line
@@ -31,7 +31,6 @@ if(SCORD_BUILD_TESTS)
  file(MAKE_DIRECTORY ${TEST_DIRECTORY})

  set(TEST_ENV)
  list(APPEND TEST_ENV SCORD_LOG=1)
  list(APPEND TEST_ENV SCORD_LOG_OUTPUT=${TEST_DIRECTORY}/scord_daemon.log)

  add_test(start_scord_daemon
+0 −4
Original line number Diff line number Diff line
@@ -29,10 +29,6 @@ add_subdirectory(utils)
target_include_directories(_utils INTERFACE ${CMAKE_CURRENT_SOURCE_DIR})
add_library(common::utils ALIAS _utils)

add_subdirectory(config)
target_include_directories(_config INTERFACE ${CMAKE_CURRENT_SOURCE_DIR})
add_library(common::config ALIAS _config)

add_subdirectory(logger)
target_include_directories(_logger INTERFACE ${CMAKE_CURRENT_SOURCE_DIR})
add_library(common::logger ALIAS _logger)
Loading