Commit Graph

27 Commits

Author SHA1 Message Date
Mark Veidemanis 502b45cda5 Allow gaps in relay numbering 2022-08-11 19:22:09 +01:00
Mark Veidemanis e8870e95e7 Implement automatic provisioning 2022-08-01 19:34:35 +01:00
Mark Veidemanis e5a14b2c91 Reformat again 2022-07-21 13:40:09 +01:00
Mark Veidemanis f4c5323de1 Reformat project 2022-07-21 13:40:05 +01:00
Mark Veidemanis 6c7d0d5c45 Reformat and fix circular import 2022-07-21 13:40:03 +01:00
Mark Veidemanis 3229d9b806 Revert "Reformat project"
This reverts commit 64e3e1160aa76d191740342ab3edc68807f890fb.
2022-07-21 13:40:01 +01:00
Mark Veidemanis 760e43b59a Reformat project 2022-07-21 13:39:59 +01:00
Mark Veidemanis 757b22c4a1 Extra error handling around emails 2022-07-21 13:39:52 +01:00
Mark Veidemanis 5c7d71dc99 Fix provisioning with emails 2022-07-21 13:39:46 +01:00
Mark Veidemanis ff1ee63900 Reformat code with pre-commit 2022-07-21 13:39:41 +01:00
Mark Veidemanis 19e04dbf36 Implement setting modes in ZNC 2020-11-01 03:39:32 +00:00
Mark Veidemanis 6acb106761 Provision users with lowercase names 2020-10-28 22:30:04 +00:00
Mark Veidemanis d99c3c394f Restructure provisioning into fewer functions 2020-05-30 21:37:22 +01:00
Mark Veidemanis f4e5d248d5 Separate provisioning into user and auth info 2019-12-28 17:51:03 +00:00
Mark Veidemanis 6ad6d6dc50 Fix channel allocation when relays are provisioned
Fix a bug where the channel allocation algorithm failed due to
necessary relays not having been provisioned yet.
Passed the newly created relay numbers to the allocation function
and assumed their CHANMAX would be the same as all other relays for
the same network.
2019-10-12 21:40:50 +01:00
Mark Veidemanis 0321651c20 Implement fair channel allocation in ChanKeep
* Allocate channels to relays only if they have free space based on
their chanlimit value
* Minify channels by removing ones that are already covered before
passing them off to be joined
2019-10-12 21:05:55 +01:00
Mark Veidemanis 7a6e3338c0 Implement ChanKeep joining functions
* Low-key channel joining with incrementally increasing delay
* Spin up needed instances to be able to cover a certain channel space
* Fix provisioning functions to prevent race conditions with lots of
relays being created at once
* Tweakable switchover from covering all channels to only covering
channels with more users than the mean of the cumulative user count
2019-10-11 13:07:57 +01:00
Mark Veidemanis 31c9e64790 Implement function to set up multiple relays 2019-10-08 21:11:04 +01:00
Mark Veidemanis 32309ecec2 Change alias definitions to be global, so aliases can be reused across different networks 2019-09-29 22:45:16 +01:00
Mark Veidemanis 2d70d5af11 Add error checking in places, set up automatic relay provisioning and fix starting bots 2019-08-25 21:29:11 +01:00
Mark Veidemanis f34ddab6fc Improvements to query and self event detection, implement all command and debug flags 2019-08-15 21:20:49 +01:00
Mark Veidemanis 1ec0e1f7e6 Remove provisioning restrictions, move all user tracking code to monitoring module, fix proper network name not being passed to the relay 2019-08-12 21:03:47 +01:00
Mark Veidemanis 2757256d4f Implement a single function for all callbacks from IRC hooks and send a seperate notification if an action takes place that concerns a bot 2019-08-11 21:54:22 +01:00
Mark Veidemanis 488d81dac8 Fix a race condition in disabling networks post-creation, remove redundant bindhost code and fix a minor bug in the load command 2019-03-16 17:05:16 +00:00
Mark Veidemanis a4b7bd50b1 Implement additional error checking for provisioning instances and parsing messages, and prevent ZNC from auto-connecting an instance if ConnectOnCreate is off 2019-02-01 23:26:01 +00:00
Mark Veidemanis 8926cb76ec Renovate the module system and implement adding and resuming pool instances using the new relay/alias/network system 2019-01-26 18:58:21 +00:00
Mark Veidemanis 4efea3f535 Implement the backend for automatically provisioning relays 2019-01-26 01:57:24 +00:00