Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions changes/pr-476.md
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
[mscpp, orchestrator-cpp] Major updates
21 changes: 12 additions & 9 deletions flake.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

6 changes: 3 additions & 3 deletions flake.nix
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@
anixdata.url = "github:goromal/anixdata";
anixdata.flake = false;

aapis.url = "github:goromal/aapis";
aapis.url = "github:goromal/aapis?rev=9e8510b5e6cb36f00b26b53d998c6f2a893417fb";
aapis.flake = false;

ardupilot.url = "git+ssh://git@github.com/goromal/ardupilot?ref=master&submodules=1";
Expand Down Expand Up @@ -81,7 +81,7 @@
mfn.url = "github:goromal/mfn";
mfn.flake = false;

mscpp.url = "github:goromal/mscpp";
mscpp.url = "github:goromal/mscpp?rev=027929453fb3535e1023409d905c45c2d8ad71e6";
mscpp.flake = false;

notion-tools.url = "github:goromal/notion-tools";
Expand All @@ -90,7 +90,7 @@
orchestrator.url = "github:goromal/orchestrator";
orchestrator.flake = false;

orchestrator-cpp.url = "github:goromal/orchestrator-cpp";
orchestrator-cpp.url = "github:goromal/orchestrator-cpp?rev=3e5c6a8acb0b786630f53d62eab762dfab6e2f74";
orchestrator-cpp.flake = false;

photos-tools.url = "github:goromal/photos-tools";
Expand Down
6 changes: 6 additions & 0 deletions pkgs/cxx-packages/mscpp/default.nix
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,8 @@
cmake,
catch2,
spdlog,
grpc,
protobuf,
pkg-src,
}:
clangStdenv.mkDerivation {
Expand All @@ -14,6 +16,10 @@ clangStdenv.mkDerivation {
catch2
spdlog
];
propagatedBuildInputs = [
grpc
protobuf
];
preConfigure = ''
cmakeFlags="$cmakeFlags --no-warn-unused-cli"
'';
Expand Down
30 changes: 27 additions & 3 deletions pkgs/cxx-packages/orchestrator-cpp/default.nix
Original file line number Diff line number Diff line change
Expand Up @@ -5,29 +5,53 @@
mscpp,
aapis-cpp,
protobuf,
grpc,
sqlite,
spdlog,
catch2,
pkg-config,
pkg-src,
}:
clangStdenv.mkDerivation {
name = "orchestrator-cpp";
version = "0.0.0";
src = pkg-src;
nativeBuildInputs = [ cmake ];
nativeBuildInputs = [
cmake
pkg-config
];
buildInputs = [
boost
mscpp
aapis-cpp
protobuf
grpc
sqlite
spdlog
catch2
];
preConfigure = ''
cmakeFlags="$cmakeFlags --no-warn-unused-cli"
'';
cmakeFlags = [
"-DBUILD_TESTS=OFF"
];
postInstall = ''
# Rename daemon binary to avoid conflict with Python orchestrator package
mv $out/bin/orchestratord $out/bin/orchestratord-cpp
# Client binary orchestratorctl is already uniquely named
'';
meta = {
broken = true;
description = "C++ implementation of a multi-threaded job manager for my OS.";
longDescription = ''
[Repository](https://github.com/goromal/orchestrator-cpp)

***Under construction***
A performant C++ implementation of the orchestrator daemon, providing
job scheduling and execution capabilities via gRPC API.

Binaries:
- orchestratord-cpp: The daemon (renamed to avoid conflicts with Python orchestrator)
- orchestratorctl: CLI client for controlling the daemon
'';
};
}
3 changes: 2 additions & 1 deletion pkgs/default.nix
Original file line number Diff line number Diff line change
Expand Up @@ -475,7 +475,8 @@ rec {

aapis-cpp = addDoc (
prev.callPackage ./cxx-packages/aapis-cpp {
pkg-src = flakeInputs.aapis;
# Use local aapis source for development (includes proto changes)
pkg-src = ../../aapis;
}
);
ardurouter = (prev.callPackage ./cxx-packages/arducopter { }).router;
Expand Down
1 change: 1 addition & 0 deletions test/shell.nix
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,7 @@ mkShell {
mp4separate
scrape
orchestrator
orchestrator-cpp
fix-perms
dirgather
dirgroups
Expand Down
25 changes: 13 additions & 12 deletions test/test.sh
Original file line number Diff line number Diff line change
@@ -1,18 +1,19 @@
exit_code=0

tests=(
"test_dirstuff.sh"
"test_ws_tools.sh"
"test_sunnyside.sh"
"test_orchestrator.sh"
"test_png.sh"
"test_mp3.sh"
"test_mp4.sh"
"test_mp3unite_separate.sh"
"test_mp4separate.sh"
"test_fix-perms.sh"
"test_src_fetch.sh"
"test_secure-delete.sh"
# "test_dirstuff.sh" # ^^^^ TODO - reenable
# "test_ws_tools.sh"
# "test_sunnyside.sh"
# "test_orchestrator.sh"
"test_orchestrator-cpp.sh"
# "test_png.sh"
# "test_mp3.sh"
# "test_mp4.sh"
# "test_mp3unite_separate.sh"
# "test_mp4separate.sh"
# "test_fix-perms.sh"
# "test_src_fetch.sh"
# "test_secure-delete.sh"
)

for test in "${tests[@]}"; do
Expand Down
Loading
Loading