Commit graph

53 commits

Author SHA1 Message Date
6015d85b73 WIP: looks better, but the Diplonat new function is still full of shit - I'll investigate
Some checks failed
continuous-integration/drone/push Build is failing
2021-09-22 17:02:25 +02:00
a464aabe25 WIP: I'm lost with Boxes and opaque types
Some checks failed
continuous-integration/drone/push Build is failing
2021-09-22 15:52:50 +02:00
006f84e3b0 WIP: rewrote body of 'new(...)' for FirewallActor and IgdActor using match; clearer intent
All checks were successful
continuous-integration/drone/push Build is passing
2021-09-22 14:47:58 +02:00
f5ac36e21f WIP: rewrote runtime.rs using match to convey intent better 2021-09-22 14:46:57 +02:00
beefcd7ade WIP: removed useless '.clone()' in runtime.rs and changed config test file name to config_test.rs 2021-09-22 14:46:37 +02:00
900ba20fbe
Use the new formatting rules 2021-09-20 16:07:58 +02:00
ffab1f6c4b
Fix code style
All checks were successful
continuous-integration/drone/push Build is passing
2021-09-20 12:08:10 +02:00
f9fd13a48a
Merge branch 'main' of git.deuxfleurs.fr:Deuxfleurs/diplonat into feature/modular-config
Some checks failed
continuous-integration/drone/push Build is failing
2021-09-20 11:58:03 +02:00
2e797d2f62
Local code formatting 2021-09-20 11:30:00 +02:00
f720070905 added rustfmt: a rustfmt.toml file diescribing syntax (soft tabs of 2 spaces), a CONTRIBUTING.md file to explain how to use rustfmt, a .drone.yml file to add code style checks in CI, 2 lines in README.md to present CONTRIBUTING.md, and applied rustfmt on the source
Some checks failed
continuous-integration/drone/push Build is failing
2021-09-11 16:34:03 +02:00
76fe63791b Rewrote the configuration options to make Diplonat modular: IGD and Firewall modules will only be enabled if correponding DIPLONAT_*_ENABLE is set. (Breaking changes!)
Also rearranged imports throughout the project, because I couldn't resist, sorry.
2021-08-26 16:05:39 +02:00
LUXEY Adrien
0f114f2134 a last pass to remove warnings from my code 2021-08-16 11:34:42 +02:00
LUXEY Adrien
644e707956 environment.rs successfully replaced with new config/ configuration loader. No API changes, more tests, cleaner code: life is swell. 2021-08-16 11:19:16 +02:00
LUXEY Adrien
ae9550ce23 New configuration parsing using envy. Added minimal functionnality for
the future ACME parameters. Tests written and passing.

WIP: added envy dependncy and ConfigOpts structs that will constitute Diplonat's configuration

WIP: ConfigOpts from_env() and validate() methods written. No API change (the env names remain unchanged)! Now need to use our new ConfigOpts struct instead of Environment, and update references to the environment variables in the code.

WIP: RuntimeConfig with business logic done. Tests written, but they are all running from the same process - setting environment variables in each test produces incoherent results. Another solution for testing is needed.

WIP: tests are fully written using 'from_iter' and all passing
2021-08-16 10:26:06 +02:00
darkgallium
4f4b6b048d corrections after review 2020-07-04 17:01:27 +02:00
darkgallium
a59ed38121 ensure chain jump is added only once 2020-06-28 19:05:36 +02:00
darkgallium
6fe86469ee update README & Dockerfile 2020-06-28 17:01:12 +02:00
darkgallium
d2ae084fc1 add actor for firewall & massive refactor 2020-05-24 20:40:49 +02:00
darkgallium
a2d2582098 add better error handling 2020-05-24 18:15:33 +02:00
darkgallium
2dbf9da005 changing backend to use the cleaner ipt bindings
updating dependencies

minor fixes
2020-05-24 18:14:24 +02:00
darkgallium
1a9199011d first basic support for adding nft rules 2020-05-24 18:09:22 +02:00
5dd4544360 Dockerize app 2020-05-23 16:29:02 +02:00
3e2ea02d62 Working IGD 2020-05-23 15:38:08 +02:00
941942aeda WIP igd actor 2020-05-22 22:01:27 +02:00
c8742b1f14 Connecting elements 2020-05-22 19:21:11 +02:00
e1d0eadb9d WIP software 2020-05-22 18:41:13 +02:00
deeecd93e1 Rewrite for clarity 2020-05-22 18:13:32 +02:00
5fafc1cb64 Handle UDP/TCP 2020-05-22 16:27:43 +02:00
ec777652c1 Better retry mechanism 2020-05-22 15:19:49 +02:00
453b1c684e Working parsing 2020-05-22 14:17:48 +02:00
4cebe77b6f Consul Actor basic logic works 2020-05-22 12:29:55 +02:00
efbbc17f82 WIP consul actor 2020-05-22 12:25:44 +02:00
fe1d91fe06 WIP consul 2020-05-22 11:34:12 +02:00
d583c17782 We are now able to watch 2020-05-22 10:33:09 +02:00
2a6b440270 Working Consul 2020-05-21 23:04:21 +02:00
8c43611eb5 Broken Diplonat 2020-05-21 22:25:33 +02:00
4da459ce8b Working on logic 2020-05-21 17:51:30 +02:00
feadc844c0 WIP loops 2020-05-21 15:22:45 +02:00
00c2039034 Rewrite as an object 2020-05-09 16:50:38 +02:00
79102ba463 Consul URL is now a parameter 2020-05-09 16:40:10 +02:00
154546a7b4 Split logic in multiple files! 2020-05-09 16:27:54 +02:00
41caf6090c Add context to errors 2020-05-09 16:19:09 +02:00
76c8404212 Rewrite with anyhow 2020-05-09 16:04:06 +02:00
a19ae25a7d Rewrite with modules, still in progress... 2020-05-09 15:53:22 +02:00
643d6980e5 Start to modularize 2020-05-09 15:33:02 +02:00
13cd2375d8 Set the correct endpoint 2020-05-08 12:46:10 +02:00
15a8745a31 Add README 2020-05-08 10:57:10 +02:00
506d4b1cbf WIP 2020-05-08 10:34:10 +02:00
fdffe91397 consul lib does not work for us, switching to reqwest 2020-02-14 10:46:39 +01:00
f827fd3113 WIP consul integration 2020-02-14 10:26:50 +01:00