amery
296d4007ff
zones: add methods to work with files at the root of m/
...
Signed-off-by: Alejandro Mery <amery@jpi.io >
2023-08-28 16:15:37 +00:00
amery
1a03404a07
Merge pull request 'zone.ScanOptions, custom resolver and prevent unnecessary DNS calls' ( #5 )
...
Reviewed-on: #5
2023-08-28 18:10:39 +02:00
amery
71a1d1a7c2
zones: Env: allow multiple gateways on a Zone
...
Signed-off-by: Alejandro Mery <amery@jpi.io >
2023-08-28 16:06:32 +00:00
amery
de45fa6c30
zones: Env: minor tidy up
...
Signed-off-by: Alejandro Mery <amery@jpi.io >
2023-08-28 16:06:32 +00:00
amery
94daf5ad59
zones: export Machine.LookupNetIP() and Machine.UpdatePublicAddresses()
...
Signed-off-by: Alejandro Mery <amery@jpi.io >
2023-08-28 15:49:26 +00:00
amery
0989dec5e8
zones: add ResolvePublicAddresses() ScanOption to prevent early LookupIP calls
...
Signed-off-by: Alejandro Mery <amery@jpi.io >
2023-08-28 15:49:26 +00:00
amery
216bf5aa29
zones: WithLookuper()/WithResolver()
...
Signed-off-by: Alejandro Mery <amery@jpi.io >
2023-08-28 15:49:26 +00:00
amery
9af88f6593
zones: introduce ScanOption/ScanOptions for New()/NewFS()
...
Signed-off-by: Alejandro Mery <amery@jpi.io >
2023-08-28 15:49:26 +00:00
amery
af2d836000
zones: Env: drop unused ZONE{zoneID}_IP
...
Signed-off-by: Alejandro Mery <amery@jpi.io >
2023-08-28 15:52:40 +01:00
amery
1655ce85bc
Merge pull request 'zones: FilterMachines() and Zone.GatewayIDs()' ( #3 )
...
Reviewed-on: #3
2023-08-28 16:47:57 +02:00
amery
9c4f6d987d
Merge pull request 'env: introduce Env() factory and jpictl env -e to export variables' ( #2 )
...
Reviewed-on: #2
2023-08-28 16:47:37 +02:00
amery
f63ce6c4e7
zones: introduce Zone.GatewayIDs()
...
Signed-off-by: Alejandro Mery <amery@jpi.io >
2023-08-27 17:13:29 +00:00
amery
1885c76198
zones: FilterMachines() creates a Machines subset
...
Signed-off-by: Alejandro Mery <amery@jpi.io >
2023-08-27 17:13:16 +00:00
amery
2224e70638
zones: introduce Machines type. iterable and sortable
...
Signed-off-by: Alejandro Mery <amery@jpi.io >
2023-08-27 17:13:16 +00:00
amery
6ee848e6ca
jpictl: introduce -e for jpictl env to export variables
...
Signed-off-by: Alejandro Mery <amery@jpi.io >
2023-08-27 15:26:35 +00:00
amery
864eb02f9d
zones: turn Zones.WriteEnv() into Zones.Env().WriteTo()
...
Signed-off-by: Alejandro Mery <amery@jpi.io >
2023-08-27 15:22:34 +00:00
amery
9da2f8711f
zones: fix PruneWireguardConfig recursion
...
Zones and Zone implementation should call Machine's directly
instead jumping back to Zone's for each Machine again and again
Signed-off-by: Alejandro Mery <amery@jpi.io >
2023-08-27 14:44:42 +00:00
amery
2a14205e7e
wireguard: fix misspellings
...
Signed-off-by: Alejandro Mery <amery@jpi.io >
2023-08-26 18:44:02 +00:00
amery
a5d9466fb8
zones: change WriteEnv() to not fake gateways
...
Signed-off-by: Alejandro Mery <amery@jpi.io >
2023-08-26 18:33:12 +00:00
amery
3d638e9a85
zones: add Zone.SetGateway() to set one by ID
...
Signed-off-by: Alejandro Mery <amery@jpi.io >
2023-08-26 18:33:12 +00:00
amery
60d3a2c290
zones: set first node of a Zone as ring0 gateway if it doesn't have one already
...
Signed-off-by: Alejandro Mery <amery@jpi.io >
2023-08-26 18:33:12 +00:00
amery
af90825f13
zones: Machine.SetGateway()
...
Signed-off-by: Alejandro Mery <amery@jpi.io >
2023-08-26 18:33:12 +00:00
amery
b4f1d2e4d9
wireguard: implement Machine.SyncWireguardConfig()
...
Signed-off-by: Alejandro Mery <amery@jpi.io >
2023-08-26 18:33:12 +00:00
amery
acf9e0e81d
zones: extend WriteWireguardConfig to include a Name indicating the ring ID
...
Signed-off-by: Alejandro Mery <amery@jpi.io >
2023-08-26 18:26:11 +00:00
amery
3b43e0c9ea
wireguard: add support for optional Name comment
...
Signed-off-by: Alejandro Mery <amery@jpi.io >
2023-08-26 18:25:05 +00:00
amery
9762e78f5e
jpictl: do SyncWireguardConfig() on write
...
Signed-off-by: Alejandro Mery <amery@jpi.io >
2023-08-26 18:13:24 +00:00
amery
3534e7b755
zones: SyncWireguardConfig() as Prune+Write
...
Signed-off-by: Alejandro Mery <amery@jpi.io >
2023-08-26 18:13:24 +00:00
amery
b80dc84a26
zones: introduce WireguardConfigWriters
...
Signed-off-by: Alejandro Mery <amery@jpi.io >
2023-08-26 17:55:19 +00:00
amery
c0ef6ae9c4
zones: rearrange code around WireguardConfigPruner
...
Signed-off-by: Alejandro Mery <amery@jpi.io >
2023-08-26 17:30:09 +00:00
amery
58867031ea
zones: rearrange code around WireguardKeysWriter
...
Signed-off-by: Alejandro Mery <amery@jpi.io >
2023-08-26 17:05:11 +00:00
amery
b95d1f1878
zones: introduce Wireguard Ring Config factory
...
Signed-off-by: Alejandro Mery <amery@jpi.io >
2023-08-26 16:38:00 +00:00
amery
d38c909b0b
zones: introduce ZoneIterator, implemented by Zones
...
Signed-off-by: Alejandro Mery <amery@jpi.io >
2023-08-26 16:37:50 +00:00
amery
7dd3ea8f96
zones: Machine.Zone()
...
Signed-off-by: Alejandro Mery <amery@jpi.io >
2023-08-26 03:33:33 +00:00
amery
07b4a22752
zones: introduce MachineIterator interface
...
Signed-off-by: Alejandro Mery <amery@jpi.io >
2023-08-26 03:33:33 +00:00
amery
609f48a2d1
wireguard: Config.WriteTo()
...
Signed-off-by: Alejandro Mery <amery@jpi.io >
2023-08-26 03:33:18 +00:00
amery
d1f7d225ae
zones: fix RingOneAddress()'s generated address
...
Signed-off-by: Alejandro Mery <amery@jpi.io >
2023-08-26 03:10:37 +00:00
amery
dfbb358187
jpictl: introduce write command rewriting all config files
...
Signed-off-by: Alejandro Mery <amery@jpi.io >
2023-08-25 21:20:34 +00:00
amery
2043708949
zones: Zones.WriteWireguardKeys() and Zone.WriteWireguardKeys()
...
Signed-off-by: Alejandro Mery <amery@jpi.io >
2023-08-25 21:18:55 +00:00
amery
311ae572da
zones: Zones.PruneWireguardConfig()
...
Signed-off-by: Alejandro Mery <amery@jpi.io >
2023-08-25 21:18:55 +00:00
amery
4ca77b0ac0
zones: Zone.PruneWireguardConfig()
...
Signed-off-by: Alejandro Mery <amery@jpi.io >
2023-08-25 21:18:55 +00:00
amery
1859c8e04b
zones: inject trailing new lines on Machine.WriteWireguardKeys()
...
Signed-off-by: Alejandro Mery <amery@jpi.io >
2023-08-25 21:18:55 +00:00
amery
20484a5061
zones: change toml tags to match yaml and json output
...
Signed-off-by: Alejandro Mery <amery@jpi.io >
2023-08-25 16:46:23 +00:00
amery
c0e2ae9bf1
zones: annotate Machine for JSON encoding
...
Signed-off-by: Alejandro Mery <amery@jpi.io >
2023-08-25 16:32:34 +00:00
amery
080021b427
zones: annotate Machine for YAML encoding
...
Signed-off-by: Alejandro Mery <amery@jpi.io >
2023-08-25 16:25:32 +00:00
amery
4514b44211
wireguard: implement MarshalYAML for PrivateKey and PublicKey
...
Signed-off-by: Alejandro Mery <amery@jpi.io >
2023-08-25 16:24:17 +00:00
amery
49b82ace71
wireguard: implement MarshalJSON for PrivateKey and PublicKey
...
Signed-off-by: Alejandro Mery <amery@jpi.io >
2023-08-25 16:12:27 +00:00
amery
2207e4a4a4
zones: fix New() to handle relative paths on hackpadfs
...
Signed-off-by: Alejandro Mery <amery@jpi.io >
2023-08-25 16:02:00 +00:00
amery
7ca01aa1e4
zones: Machine.RemoveWireguardConfig()
...
Signed-off-by: Alejandro Mery <amery@jpi.io >
2023-08-25 15:36:58 +00:00
amery
8b72667f4d
zones: Machine.RemoveWireguardKeys()
...
Signed-off-by: Alejandro Mery <amery@jpi.io >
2023-08-25 15:20:07 +00:00
amery
49694eb7cb
zones: Machine.WriteWireguardKeys()
...
Signed-off-by: Alejandro Mery <amery@jpi.io >
2023-08-25 14:53:31 +00:00