storj/pkg/kademlia
Stefan Benten 2cf86703a3
Add Versioning Server (#1576)
* Initial Webserver Draft for Version Controlling

* Rename type to avoid confusion

* Move Function Calls into Version Package

* Fix Linting and Language Typos

* Fix Linting and Spelling Mistakes

* Include Copyright

* Include Copyright

* Adjust Version-Control Server to return list of Versions

* Linting

* Improve Request Handling and Readability

* Add Configuration File Option
Add Systemd Service file

* Add Logging to File

* Smaller Changes

* Add Semantic Versioning and refuses outdated Software from Startup (#1612)

* implements internal Semantic Version library

* adds version logging + reporting to process

* Advance SemVer struct for easier handling

* Add Accepted Version Store

* Fix Function

* Restructure

* Type Conversion

* Handle Version String properly

* Add Note about array index

* Set temporary Default Version

* Add Copyright

* Adding Version to Dashboard

* Adding Version Info Log

* Renaming and adding CheckerProcess

* Iteration Sync

* Iteration V2

* linting

* made LogAndReportVersion a go routine

* Refactor to Go Routine

* Add Context to Go Routine and allow Operation if Lookup to Control Server fails

* Handle Unmarshal properly

* Linting

* Relocate Version Checks

* Relocating Version Check and specified default Version for now

* Linting Error Prevention

* Refuse Startup on outdated Version

* Add Startup Check Function

* Straighten Logging

* Dont force Shutdown if --dev flag is set

* Create full Service/Peer Structure for ControlServer

* Linting

* Straighting Naming

* Finish VersionControl Service Layout

* Improve Error Handling

* Change Listening Address

* Move Checker Function

* Remove VersionControl Peer

* Linting

* Linting

* Create VersionClient Service

* Renaming

* Add Version Client to Peer Definitions

* Linting and Renaming

* Linting

* Remove Transport Checks for now

* Move to Client Side Flag

* Remove check

* Linting

* Transport Client Version Intro

* Adding Version Client to Transport Client

* Add missing parameter

* Adding Version Check, to set Allowed = true

* Set Default to true, testing

* Restructuring Code

* Uplink Changes

* Add more proper Defaults

* Renaming of Version struct

* Dont pass Service use Pointer

* Set Defaults for Versioning Checks

* Put HTTP Server in go routine

* Add Versioncontrol to Storj-Sim

* Testplanet Fixes

* Linting

* Add Error Handling and new Server Struct

* Move Lock slightly

* Reduce Race Potentials

* Remove unnecessary files

* Linting

* Add Proper Transport Handling

* small fixes

* add fence for allowed check

* Add Startup Version Check and Service Naming

* make errormessage private

* Add Comments about VersionedClient

* Linting

* Remove Checks that refuse outgoing connections

* Remove release cmd

* Add Release Script

* Linting

* Update to use correct Values

* Move vars private and set minimum default versions for testing builds

* Remove VersionedClient

* Better Error Handling and naked return removal

* Straighten the Regex and string conversion

* Change Check to allows testplanet and storj-sim to run without the
need to pass an LDFlag

* Cosmetic Change to Dashboard

* Cleanup Returns and remove commented code

* Remove Version Check if no build options are passed in

* Pass in Config Values instead of Pointers

* Handle missed Error

* Update Endpoint URL

* Change Type of Release Flag

* Add additional Logging

* Remove Versions Logging of other Services

* minor fixes

Change-Id: I5cc04a410ea6b2008d14dffd63eb5f36dd348a8b
2019-04-03 21:13:39 +02:00
..
testrouting Routing table tests (#1270) 2019-02-22 13:39:29 -05:00
config.go Test merging planets (#1181) 2019-02-01 15:32:28 +02:00
dialer_test.go adds slow kad dialer tests, adds timeout interceptor to transport (#1545) 2019-03-22 13:09:37 -04:00
dialer.go fix kademlia bootstrap and getting peer identity from context (#1434) 2019-03-20 10:30:42 +02:00
endpoint.go removes pingbackTimeout (#1556) 2019-03-22 16:06:57 -04:00
inspector.go Use DialNode for requesting node info (#1394) 2019-03-02 09:34:08 +02:00
kademlia_planet_test.go adds slow kad dialer tests, adds timeout interceptor to transport (#1545) 2019-03-22 13:09:37 -04:00
kademlia_test.go Add Versioning Server (#1576) 2019-04-03 21:13:39 +02:00
kademlia.go kademlia ping tracking (#1538) 2019-03-22 15:27:59 +02:00
lookup_test.go Kademlia closing race (#1139) 2019-01-26 00:33:20 +02:00
merge_test.go Enable planet Merging test (#1281) 2019-02-08 22:35:59 +02:00
peer_discovery_test.go updates copyright 2018 to 2019 (#1133) 2019-01-24 15:15:10 -05:00
peer_discovery.go [V3-1320] fix empty node ID verification non-error (#1395) 2019-03-04 15:03:33 -05:00
replacement_cache_test.go Routing table tests (#1270) 2019-02-22 13:39:29 -05:00
replacement_cache.go Routing table tests (#1270) 2019-02-22 13:39:29 -05:00
routing_helpers_test.go Replace list calls with iterates in kademlia routing table (#1318) 2019-02-26 11:07:53 -05:00
routing_helpers.go Replace list calls with iterates in kademlia routing table (#1318) 2019-02-26 11:07:53 -05:00
routing_integration_helpers_test.go [V3-1320] fix empty node ID verification non-error (#1395) 2019-03-04 15:03:33 -05:00
routing_integration_test.go [V3-1320] fix empty node ID verification non-error (#1395) 2019-03-04 15:03:33 -05:00
routing_test.go Routing table tests (#1270) 2019-02-22 13:39:29 -05:00
routing.go remove utils.CombineErrors and utils.ErrorGroup (#1603) 2019-03-29 14:30:23 +02:00
utils_test.go pkg/kademlia: simplify code (#958) 2019-01-02 20:57:11 +02:00
utils.go Replace list calls with iterates in kademlia routing table (#1318) 2019-02-26 11:07:53 -05:00