Commit graph

78 commits

Author SHA1 Message Date
Peter 795f9c0b83
Move existing protos to external repo 2021-02-15 16:47:37 +01:00
Peter 1618dc317f
Move docs to deploy stage 2021-02-10 22:07:33 +01:00
Peter d70ba748f5 Introduce Lifecycle for every endpoint and manage listeners in the renamed Orchestrator
- merge packages to get a more concise layout because plugins are no more and therefore there's not a lot to be exported
- fix test logger
- rework config parsing to be easier and more transparent
- remove unnecessary APIs because dynamic endpoint handling is rather a won't implement
2021-02-10 20:26:45 +00:00
Peter dd4b191abb Merge branch '10-handler-event-stream' into 'master'
Resolve "Handler Event Stream"

Closes #13 and #10

See merge request inetmock/inetmock!12
2021-01-27 12:53:22 +00:00
Peter 2d97beaf70
Refactor gRPC sink
- rename it to GenericSink
- add tests
- update dependencies
- improve test step to always get a report
- add NoOpSink for tests
2021-01-27 13:31:51 +01:00
Peter 85b0123711
Update container config 2021-01-27 11:29:10 +01:00
Peter 55dfcfabab
Ship default CA with container build 2021-01-27 11:05:06 +01:00
Peter c97207e854
Update builtin CA 2021-01-27 09:28:51 +01:00
Peter 2c02b0c941
Add basic metric sink 2021-01-26 19:00:46 +01:00
Peter cc72595398
Subscribe sinks with a context to automatically remove them when context is canceled 2021-01-26 18:50:53 +01:00
Peter 6d2737b501
Move HTTPS handling to http_mock handler 2021-01-26 18:42:07 +01:00
Peter 63a6516d99
Added audit stream to HTTP proxy 2021-01-26 18:20:52 +01:00
Peter 03f3ae4173
Enable gRPC reflection to support gRPCurl and gRPCui 2021-01-26 18:20:52 +01:00
Peter af0a7a2375
Capture source and destination addresses as byte arrays
- update necessary tests

This removes a lot of complexity because IPv4 and IPv6 addresses can be handled the same way.
To distinguish between them it's enough to take their length into account.
Parsing should be straight forward in any language.
2021-01-26 18:20:51 +01:00
Peter 66f2aab9af
Add commands to list sinks and to read a protocol file to JSON 2021-01-26 18:20:51 +01:00
Peter a76d1d1c04
Cleanup in server app 2021-01-26 18:20:50 +01:00
Peter 0138b57782
Merged CLI and server app init 2021-01-26 18:19:54 +01:00
Peter 37c87adaf3
Apply comments 2021-01-26 18:19:54 +01:00
Peter 38293bb8c4
Remove caching for now 2021-01-26 18:19:54 +01:00
Peter af5c55d8c9
Cache .task/ directory to lazy run tasks across stages 2021-01-26 18:19:54 +01:00
Peter 41aa132e80
Cache .task/ directory to lazy run tasks across stages 2021-01-26 18:19:54 +01:00
Peter 2f0f3edfdf
Moved code of commands to their main package
- add init code to reduce code duplication of connection setup
2021-01-26 18:19:52 +01:00
Peter af31b1166a
Audit API prototype
- watch events interactively
- pipe events to files
- remove file subscriptions
2021-01-26 18:19:03 +01:00
Peter dc4a9b18a3
Moved endpoint handlers in tree 2021-01-26 18:18:59 +01:00
Peter bb9f45ce91
Move sinks to extra package 2021-01-26 18:17:37 +01:00
Peter 6c448fd318
Add DNS details 2021-01-26 18:17:37 +01:00
Peter 0468c93671
Integrate into handlers 2021-01-26 18:17:37 +01:00
Peter 63607dfd67
Implement log and writer sinks
Add reader
2021-01-26 18:17:37 +01:00
Peter 1e8139e845
Add first draft of event stream 2021-01-26 18:17:37 +01:00
Peter eaddf264ce
Add test and coverage reports 2021-01-26 18:17:29 +01:00
Peter 81c4be6343
Replace CI job token with API token 2021-01-05 08:53:05 +01:00
Peter fa5c6491b8 Merge branch '15-generate-ca-command-has-wrong-validity' into 'master'
Resolve "generate-ca command has wrong validity"

Closes #15

See merge request inetmock/inetmock!13
2021-01-04 16:21:03 +00:00
Peter 9041da7245 Resolve "generate-ca command has wrong validity" 2021-01-04 16:21:03 +00:00
Peter e9f79cd59a Merge branch '7-add-advanced-matching-options' into 'master'
Resolve "Add advanced matching options to HTTP handler"

Closes #7

See merge request inetmock/inetmock!11
2020-12-26 13:11:50 +00:00
Peter 49e58ac2e4 Add advanced matching options to HTTP handler
- move to Gitlab
- make code better testable
- create app abstraction for server
- cleanup
2020-12-26 13:11:49 +00:00
Peter 57a7e10e74
Add Prometheus metrics (#10)
* Add Prometheus metrics

- cleanup
- update dependencies
- improve parsing of options where possible
- Update Go to latest version
2020-10-02 11:56:48 +02:00
Peter 460940e4d8
Fixed TLS issue with mismatching certificates
- fixed fallback to P256 curve
- added option to configure minimal TLS version
- added option to include insecure cipher suites
2020-06-24 12:25:34 +02:00
Peter 9a50ce522c
Complete health API
- complete client implementation
- add server part to gRPC server
2020-06-23 14:54:08 +02:00
Peter 191d352eee
fix container build and add missing demo CA files 2020-06-15 16:29:47 +02:00
Peter 6899c6cc00 Removed generated mocks 2020-06-15 12:34:54 +02:00
Peter 108444e094 Add health API and basic CLI support
- remove plugin API due to incompatibility issues
- add Docker build to GitHub Actions
- add custom container friendly config file
2020-06-15 12:32:18 +02:00
Peter 2ff0e7cb56 Fix container build
- change build stage to Alpine
- adapt changes in CI pipeline to generate code that is not checked in anymore
- update dependencies
2020-06-15 12:32:18 +02:00
Peter 38f8ff319e Apply commented improvements
- skip shutdown of gRPC server if failed to start
- minor refactoring
2020-06-15 12:32:18 +02:00
Peter def844c5fe Cleanup
- remove *.pb.go files
- remove *.mock.go files
- remove config2 references to get cleaner imports
- update dependencies
2020-06-15 12:32:18 +02:00
Peter d89ab3a576 Split to server and CLI binaries
- introduce CLI binary
- move server binary to subdirectory to have a uniformed directory structure
- update goreleaser to build all binaries and create dist packages
- update ignore files accordingly
2020-06-15 12:32:18 +02:00
Peter 13a38298ec Add output format options for upcoming CLI client 2020-06-15 12:32:18 +02:00
Peter 1ef1f59402 Add gRPC API implementation
- add config struct for API
- add UUID to endpoint to be able to address them uniquely
- add manager to handle all gRPC services
2020-06-15 12:32:18 +02:00
Peter 61841648b1 Add gRPC spec 2020-06-15 12:32:18 +02:00
Peter 3466037421 Remove plugin commands feature
- remove option to expose commands from a plugins
- remove dynamic command loading to make startup process easier
2020-06-15 12:32:18 +02:00
Peter 91f0cf6963 Improve config and startup handling
- use `Unmarshal` method of viper
- move config loading, defaulting and stuff to config package
- move serve to an extra command and move keep only global flags in root command
- add startup logic to onInit method in root command
- update mocks
- clean config structs
- adopt changes in plugins
- update default config
2020-06-15 12:32:18 +02:00