Commit Graph

38 Commits

Author SHA1 Message Date
8c3e6a2845 Separate Daemon and Network logic into separate packages
In a world where the daemon can manage more than one network, the Daemon
is really responsible only for knowing which networks are currently
joined, creating/joining/leaving networks, and routing incoming RPC
requests to the correct network handler as needed.

The new network package, with its Network interface, inherits most of
the logic that Daemon used to have, leaving Daemon only the parts needed
for the functionality just described. There's a lot of cleanup done here
in order to really nail down the separation of concerns between the two,
especially around directory creation.
2024-09-09 16:34:00 +02:00
ee30199c4c Automatically choose IP for new hosts 2024-07-21 17:10:28 +02:00
1411370b0e Write new host to garage as part of CreateHost 2024-07-20 12:36:21 +02:00
d2710db8f1 State CA signing key in secrets store, eliminate admin bundle 2024-07-14 13:11:18 +02:00
86abdb6ae1 Propagate garage RPC secret with created host bootstrap 2024-07-14 11:58:39 +02:00
b5059be7fa Move create-bootstrap logic into daemon, rename to hosts create 2024-07-13 16:31:52 +02:00
cb8fef38c4 Move create-nebula-cert into nebula create-cert, move most logic into daemon 2024-07-13 16:08:13 +02:00
736b23429c Do proper type-based validation or hostnames and ipnets 2024-07-12 15:31:43 +02:00
1ee396c976 Use RPC for create-bootstrap 2024-07-09 15:14:29 +02:00
279c79a9f1 Replace admin create-network with network create over RPC 2024-07-09 11:43:17 +02:00
f9d033b89f Implement Daemon.CreateNetwork, but it's not yet used or tested 2024-07-07 20:01:10 +02:00
7d8b274445 Implement JoinNetwork RPC method, and accompanying sub-command 2024-07-07 12:44:49 +02:00
81368821b7 Refactor Daemon into Children and DaemonRestarter into Daemon 2024-07-06 15:36:48 +02:00
179059fd3d Rename ISLE_SOCKET_PATH and refactor how it's loaded a bit 2024-07-06 14:26:06 +02:00
05e91cd657 Move daemon restarting logic into daemon package 2024-06-24 18:55:36 +02:00
c3609252a5 Implement RPC socket and use it to list hosts 2024-06-23 14:37:10 +02:00
8a1c8d2ed6 Use XDG_STATE_HOME rather than XDG_DATA_HOME for storing bootstrap 2024-06-17 17:20:26 +02:00
dee4af012e Fix tests.sh verbose output redirection 2024-06-11 16:57:31 +02:00
68f417b5ba Upgrade garage to v1.0.0
This required switching all garage admin API calls to the new v1
versions, and redoing how the global bucket key is created so it is
created via the "create key" API call.
2024-06-11 16:57:31 +02:00
2768be00d8 Refactor how host data is signed, now it's simpler and probably more secure 2024-06-10 22:33:26 +02:00
f13a08abfb Use JSON instead of YAML for files which aren't intended for human editing 2024-06-10 18:56:36 +02:00
Brian Picciano
a7429bd176 Update testing notest 2023-11-07 22:42:14 +01:00
Brian Picciano
5ee80b1b7d Add tests for DNS 2023-09-06 21:55:05 +02:00
Brian Picciano
96a3ecfe14 Perform garage tests on each of the running nodes 2023-09-06 21:06:03 +02:00
Brian Picciano
8dcc436aaa Refactor tests some more, use shared across all of them 2023-09-05 23:14:40 +02:00
Brian Picciano
ceab16d05f move admin tests into their own subdir 2023-09-04 21:40:11 +02:00
Brian Picciano
3c3bd8649a Fix minio-client creating config directory in user's home 2023-09-04 21:38:28 +02:00
Brian Picciano
98e5f4c98c Add create-bootstrap test case 2023-09-04 20:56:48 +02:00
Brian Picciano
0a482607d5 Move temp directory creation into test/utils 2023-09-04 19:56:15 +02:00
Brian Picciano
73db21f841 add more checks to 01-create-network test 2023-09-03 18:08:14 +02:00
Brian Picciano
56f38ad451 Refactor how tests are organized 2023-09-01 20:24:42 +02:00
Brian Picciano
a77617ae96 Add test for network creation 2023-09-01 17:20:03 +02:00
Brian Picciano
ae70278a9f Add --keep-tmp flag to test script 2023-09-01 17:19:48 +02:00
Brian Picciano
d2d25d3621 Set XDG variables on a per-test basis 2023-09-01 16:18:23 +02:00
Brian Picciano
bc798acffa Have tests each create a separate tmpdir, and cd into it 2023-08-31 22:07:36 +02:00
Brian Picciano
48675ee095 Fix output of error logs in verbose testing 2023-08-31 21:46:56 +02:00
Brian Picciano
aa0d489e88 Add verbose flag to test shell script 2023-08-30 20:08:40 +02:00
Brian Picciano
e66f67da4a Super basic testing framework 2023-08-30 18:16:19 +02:00