Integrates Vault PKI service as a service addon.
Also adds some helper scripts to help setup the CA in Vault, as well as
some docs to explain how to use them.
Originally based from https://github.com/mteodor/vault.
Signed-off-by: Joao Matos <joao@tritao.eu>
Co-authored-by: Dušan Borovčanin <dusan.borovcanin@mainflux.com>
* Add provision service
Signed-off-by: Dušan Borovčanin <dusan.borovcanin@mainflux.com>
* Fix Provision service initial version
Signed-off-by: Dušan Borovčanin <dusan.borovcanin@mainflux.com>
* Add feature of filtering by subtopics in writer
Signed-off-by: Jonathan Dreyer <jonathan.dreyer@cleanenergie.ch>
* Fix mistake
Signed-off-by: Jonathan Dreyer <jonathan.dreyer@cleanenergie.ch>
* Refactoring writer sevices
Signed-off-by: Jonathan Dreyer <jonathan.dreyer@cleanenergie.ch>
* Rename variables related to filter (channels & subtopics)
Signed-off-by: Jonathan Dreyer <jonathan.dreyer@cleanenergie.ch>
* Set default value of filtering when configuration file doesn't exist
Signed-off-by: Jonathan Dreyer <jonathan.dreyer@cleanenergie.ch>
* Add a blank line at the end of the file
Signed-off-by: Jonathan Dreyer <jonathan.dreyer@cleanenergie.ch>
* Refactor loading filters configuration (moving into writer package, merge both loading methods & returning error)
Signed-off-by: Jonathan Dreyer <jonathan.dreyer@cleanenergie.ch>
* Remove useless log
Signed-off-by: Jonathan Dreyer <jonathan.dreyer@cleanenergie.ch>
* Change type of variables (channels & subtopics) and simplify loading method
Signed-off-by: Jonathan Dreyer <jonathan.dreyer@cleanenergie.ch>
* Add logging error when loading filters
Signed-off-by: Jonathan Dreyer <jonathan.dreyer@cleanenergie.ch>
* Simplify return configuration in loading method
Signed-off-by: Jonathan Dreyer <jonathan.dreyer@cleanenergie.ch>
* Merge both filter files into one file
Signed-off-by: Jonathan Dreyer <jonathan.dreyer@cleanenergie.ch>
* Move loading subjects into writer package
Signed-off-by: Jonathan Dreyer <jonathan.dreyer@cleanenergie.ch>
* Add subscribe to selected subjects
Signed-off-by: Jonathan Dreyer <jonathan.dreyer@cleanenergie.ch>
* Edit README of writer services
Signed-off-by: Jonathan Dreyer <jonathan.dreyer@cleanenergie.ch>
* Keep only subscribe loop
Signed-off-by: Jonathan Dreyer <jonathan.dreyer@cleanenergie.ch>
* Use full NATS subjects
Signed-off-by: Jonathan Dreyer <jonathan.dreyer@cleanenergie.ch>
* Edit comment in subjects files
Signed-off-by: Jonathan Dreyer <jonathan.dreyer@cleanenergie.ch>
Co-authored-by: Drasko DRASKOVIC <drasko.draskovic@gmail.com>
* Add inital Auth implementation
Signed-off-by: Dušan Borovčanin <dusan.borovcanin@mainflux.com>
* Extract IssuedAt on transport layer
Signed-off-by: Dušan Borovčanin <dusan.borovcanin@mainflux.com>
* Add token type
Signed-off-by: Dušan Borovčanin <dusan.borovcanin@mainflux.com>
* Fix Auth service URL in Things service
Signed-off-by: Dušan Borovčanin <dusan.borovcanin@mainflux.com>
* Add User Keys revocation check
Signed-off-by: Dušan Borovčanin <dusan.borovcanin@mainflux.com>
* Update tests
Signed-off-by: Dušan Borovčanin <dusan.borovcanin@mainflux.com>
* Remove unused tracing methods
Signed-off-by: Dušan Borovčanin <dusan.borovcanin@mainflux.com>
* Fix Key retrival and parsing
Signed-off-by: Dušan Borovčanin <dusan.borovcanin@mainflux.com>
* Remove unused code
Signed-off-by: Dušan Borovčanin <dusan.borovcanin@mainflux.com>
* Increase test coverage
Signed-off-by: Dušan Borovčanin <dusan.borovcanin@mainflux.com>
* Fix compose files
Signed-off-by: Dušan Borovčanin <dusan.borovcanin@mainflux.com>
* Fix typos
Simplify tests.
Signed-off-by: Dušan Borovčanin <dusan.borovcanin@mainflux.com>
* Fix typos and remove useless comments
Signed-off-by: Dušan Borovčanin <dusan.borovcanin@mainflux.com>
* Rename Auth to Authn
Signed-off-by: Dušan Borovčanin <dusan.borovcanin@mainflux.com>
* Rename database.go to tracin.go
A new name (`tracing.go`) describes better the purpose of the file.
Signed-off-by: Dušan Borovčanin <dusan.borovcanin@mainflux.com>
* Increase test coverage
Fix typo.
Signed-off-by: Dušan Borovčanin <dusan.borovcanin@mainflux.com>
* Increase test coverage
Signed-off-by: Dušan Borovčanin <dusan.borovcanin@mainflux.com>
* Remove token from Users service
Signed-off-by: Dušan Borovčanin <dusan.borovcanin@mainflux.com>
* Fix identify login keys
Rename token parsing method.
Signed-off-by: Dušan Borovčanin <dusan.borovcanin@mainflux.com>
* Extract tokenizer to interface
Signed-off-by: Dušan Borovčanin <dusan.borovcanin@mainflux.com>
* Remove pointer time
Signed-off-by: Dušan Borovčanin <dusan.borovcanin@mainflux.com>
* Use pointer for expiration time in response
Signed-off-by: Dušan Borovčanin <dusan.borovcanin@mainflux.com>
* Use uppercase N
Signed-off-by: Dušan Borovčanin <dusan.borovcanin@mainflux.com>
* Remove unnecessary email check
Signed-off-by: Dušan Borovčanin <dusan.borovcanin@mainflux.com>
* Cleanup unused code and env vars
Signed-off-by: Dušan Borovčanin <dusan.borovcanin@mainflux.com>
* Rename tokenizer field
Signed-off-by: Dušan Borovčanin <dusan.borovcanin@mainflux.com>
* Use slices and named fields in test cases
Signed-off-by: Dušan Borovčanin <dusan.borovcanin@mainflux.com>
* Update AuthN keys naming
Signed-off-by: Dušan Borovčanin <dusan.borovcanin@mainflux.com>
* Remove package-lock.json changes
Signed-off-by: Dušan Borovčanin <dusan.borovcanin@mainflux.com>
* Remove Secret from issuing request
Signed-off-by: Dušan Borovčanin <dusan.borovcanin@mainflux.com>
* NOISSUE - Enable multi OPC-UA Subscriptions
Signed-off-by: Manuel Imperiale <manuel.imperiale@gmail.com>
* NOISSUE - Fix opcua-adapter events decode
Signed-off-by: Manuel Imperiale <manuel.imperiale@gmail.com>
* Use a config file to subscribe to multiple nodes
Signed-off-by: Manuel Imperiale <manuel.imperiale@gmail.com>
* Add subscription config file
Signed-off-by: Manuel Imperiale <manuel.imperiale@gmail.com>
* Use Mainflux errors package
Signed-off-by: Manuel Imperiale <manuel.imperiale@gmail.com>
* Use Normalizer as a lib
To normalize messages on the consumer side, Normalizer is moved
to the internal pkgs. Writers being message consumers are modified to
do message normalization instead of subscribing to normalized messages
subject.
Signed-off-by: Dušan Borovčanin <dusan.borovcanin@mainflux.com>
* Fix logging middleware for readers and writers
Signed-off-by: Dušan Borovčanin <dusan.borovcanin@mainflux.com>
* Remove normalizer interface
Signed-off-by: Dušan Borovčanin <dusan.borovcanin@mainflux.com>
* Use Normalizer in writers
As we agreed on #919, we'll use normalizer as an interface and provide
the default SenML implementation. Because of that, Normalizer is removed
from `internal` and we'll use the project structure proposed in the
aforementioned issue.
Signed-off-by: Dušan Borovčanin <dusan.borovcanin@mainflux.com>
* Fix tests
Signed-off-by: Dušan Borovčanin <dusan.borovcanin@mainflux.com>
* Remove unused batch settings from influxDB reader
Signed-off-by: Dušan Borovčanin <dusan.borovcanin@mainflux.com>
* Update docs
Move Normalizer service to `addons`.
Signed-off-by: Dušan Borovčanin <dusan.borovcanin@mainflux.com>
* Rename channels input topic
Signed-off-by: Dušan Borovčanin <dusan.borovcanin@mainflux.com>
* Update Noramlizer docs
Signed-off-by: Dušan Borovčanin <dusan.borovcanin@mainflux.com>
* Remove commented code
Signed-off-by: Dušan Borovčanin <dusan.borovcanin@mainflux.com>
* Update readers logging
Signed-off-by: Dušan Borovčanin <dusan.borovcanin@mainflux.com>
* Update addons docker-compose files
Signed-off-by: Dušan Borovčanin <dusan.borovcanin@mainflux.com>
* Update topcis explanations
Signed-off-by: Dušan Borovčanin <dusan.borovcanin@mainflux.com>
* Add open tracing dependencies
Signed-off-by: Aleksandar Novakovic <anovakovic01@gmail.com>
* Add open tracing to users service
Signed-off-by: Aleksandar Novakovic <anovakovic01@gmail.com>
* Add open tracing to the things service
Signed-off-by: Aleksandar Novakovic <anovakovic01@gmail.com>
* Add open tracing to the http adapter
Signed-off-by: Aleksandar Novakovic <anovakovic01@gmail.com>
* Add open tracing to the ws adapter
Signed-off-by: Aleksandar Novakovic <anovakovic01@gmail.com>
* Add open tracing to the CoAP adapter
Signed-off-by: Aleksandar Novakovic <anovakovic01@gmail.com>
* Update LoRa adapter in accordance with changes
Signed-off-by: Aleksandar Novakovic <anovakovic01@gmail.com>
* Update SDK tests in accordance with changes
Signed-off-by: Aleksandar Novakovic <anovakovic01@gmail.com>
* Update bootstrap service in accordance with changes
Signed-off-by: Aleksandar Novakovic <anovakovic01@gmail.com>
* Update reader services with accordance with changes
Signed-off-by: Aleksandar Novakovic <anovakovic01@gmail.com>
* Update .env and docker-compose file
Signed-off-by: Aleksandar Novakovic <anovakovic01@gmail.com>
* Add jaeger and timeout env vars
Signed-off-by: Aleksandar Novakovic <anovakovic01@gmail.com>
* Fix broken test for can access by id endpoint
Signed-off-by: Aleksandar Novakovic <anovakovic01@gmail.com>
* Update deps with proto empty package
Signed-off-by: Aleksandar Novakovic <anovakovic01@gmail.com>
* NOISSUE - Use .enr vars in docker-compose
Signed-off-by: Manuel Imperiale <manuel.imperiale@gmail.com>
* Add README and dupllicated .env in docker repo
Signed-off-by: Manuel Imperiale <manuel.imperiale@gmail.com>
* Use .env for Bootstrap Docker Composition
Signed-off-by: Manuel Imperiale <manuel.imperiale@gmail.com>
* Use .env for Cassandra (Reader-Writer) Docker Composition
Signed-off-by: Manuel Imperiale <manuel.imperiale@gmail.com>
* Use .env for InfluxDB (Reader-Writer) Docker Composition
Signed-off-by: Manuel Imperiale <manuel.imperiale@gmail.com>
* Use .env for MongoDB (Reader-Writer) Docker Composition
Signed-off-by: Manuel Imperiale <manuel.imperiale@gmail.com>
* Use .env for Postgres (Reader-Writer) Docker Composition
Signed-off-by: Manuel Imperiale <manuel.imperiale@gmail.com>
* Use .env for LoRa adapter Docker Composition
Signed-off-by: Manuel Imperiale <manuel.imperiale@gmail.com>
* Fix Grafana port in .env file
Signed-off-by: Manuel Imperiale <manuel.imperiale@gmail.com>
* Update README.md
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* remove docker/.env and update README.md
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* Add support for channel filtering using config
Add support for channel filtering using yaml configuration files
for writers.
Signed-off-by: Aleksandar Novakovic <aleksandar.novakovic@mainflux.com>
* Update writers documentation with new env var
Signed-off-by: Aleksandar Novakovic <aleksandar.novakovic@mainflux.com>
* Add info comment to configuration file
Signed-off-by: Aleksandar Novakovic <aleksandar.novakovic@mainflux.com>
* Fix configuration and update yaml dep
Signed-off-by: Aleksandar Novakovic <aleksandar.novakovic@mainflux.com>
* Update config from yaml to toml
Signed-off-by: Aleksandar Novakovic <aleksandar.novakovic@mainflux.com>
* added filter and a switch for volume deletion
Signed-off-by: Jovan Kostovski <chombium@gmail.com>
* added persistent volume configuration
Signed-off-by: Jovan Kostovski <chombium@gmail.com>
* Fix Redis connection error handling in MQTT adapter
Signed-off-by: Aleksandar Novakovic <aleksandar.novakovic@mainflux.com>
* Add separate env vars for ES in MQTT adapter
Signed-off-by: Aleksandar Novakovic <aleksandar.novakovic@mainflux.com>
* Create dedicated redis service for ES
Signed-off-by: Aleksandar Novakovic <aleksandar.novakovic@mainflux.com>
* Update docs according to changes
Signed-off-by: Aleksandar Novakovic <aleksandar.novakovic@mainflux.com>
* Change bootstrap service port to 8200
Signed-off-by: Aleksandar Novakovic <aleksandar.novakovic@mainflux.com>
* Fix redis streams tests in things service
Signed-off-by: Aleksandar Novakovic <aleksandar.novakovic@mainflux.com>
* MF-166 - Add lora-adapter service (#416)
* MF-166 - Add lora-adapter service
Signed-off-by: Manuel Imperiale <manuel.imperiale@gmail.com>
* Fix NATS connexion and use credentials with gRPC
Signed-off-by: Manuel Imperiale <manuel.imperiale@gmail.com>
* Forward lora msgs to nats
Signed-off-by: Manuel Imperiale <manuel.imperiale@gmail.com>
* Add make cmd and docker-compose
Signed-off-by: Manuel Imperiale <manuel.imperiale@gmail.com>
* Define lora conf as private
Signed-off-by: Manuel Imperiale <manuel.imperiale@gmail.com>
* Rename funcs fix nats conn
Signed-off-by: Manuel Imperiale <manuel.imperiale@gmail.com>
* Update README and fix reviews
Signed-off-by: Manuel Imperiale <manuel.imperiale@gmail.com>
* Rm NATS sub
Signed-off-by: Manuel Imperiale <manuel.imperiale@gmail.com>
* MF-166 - Add lora-adapter service (#461)
* MF-166 - Add lora-adapter service
Signed-off-by: Manuel Imperiale <manuel.imperiale@gmail.com>
* Fix NATS connexion and use credentials with gRPC
Signed-off-by: Manuel Imperiale <manuel.imperiale@gmail.com>
* Forward lora msgs to nats
Signed-off-by: Manuel Imperiale <manuel.imperiale@gmail.com>
* Add make cmd and docker-compose
Signed-off-by: Manuel Imperiale <manuel.imperiale@gmail.com>
* Define lora conf as private
Signed-off-by: Manuel Imperiale <manuel.imperiale@gmail.com>
* Rename funcs fix nats conn
Signed-off-by: Manuel Imperiale <manuel.imperiale@gmail.com>
* Update README and fix reviews
Signed-off-by: Manuel Imperiale <manuel.imperiale@gmail.com>
* Rm NATS sub
Signed-off-by: Manuel Imperiale <manuel.imperiale@gmail.com>
* Fix lora server topic and logs
Signed-off-by: Manuel Imperiale <manuel.imperiale@gmail.com>
* Fix HTTP port
Signed-off-by: Manuel Imperiale <manuel.imperiale@gmail.com>
* NOISSUE - Add event sourcing client to LoRa adapter (#471)
* Add event sourcing client to LoRa adapter
Signed-off-by: Aleksandar Novaković <anovakovic01@gmail.com>
* Update redis version in docker compose and update env vars
Signed-off-by: Aleksandar Novaković <anovakovic01@gmail.com>
* Add ES subscription to main LoRa function
Signed-off-by: Aleksandar Novaković <anovakovic01@gmail.com>
* Add new env vars to readme file of LoRa adapter
Signed-off-by: Aleksandar Novaković <anovakovic01@gmail.com>
* Add message acknowledgement to LoRa adapter
Signed-off-by: Aleksandar Novaković <anovakovic01@gmail.com>
* Add handling of empty values to event sourcing client (#474)
Signed-off-by: Aleksandar Novaković <anovakovic01@gmail.com>
* Add routemap and handle event sourcing
Signed-off-by: Manuel Imperiale <manuel.imperiale@gmail.com>
* Fix eventStore decoding
Signed-off-by: Manuel Imperiale <manuel.imperiale@gmail.com>
* Mv docker-compose in docker/addons
Signed-off-by: Manuel Imperiale <manuel.imperiale@gmail.com>
* Fix routemap and logs
Signed-off-by: Manuel Imperiale <manuel.imperiale@gmail.com>
* Fix reviews
Signed-off-by: Manuel Imperiale <manuel.imperiale@gmail.com>
* Fix reviews
Signed-off-by: Manuel Imperiale <manuel.imperiale@gmail.com>
* Update Gopkg.toml
Signed-off-by: Manuel Imperiale <manuel.imperiale@gmail.com>
* Fix reviews
Signed-off-by: Manuel Imperiale <manuel.imperiale@gmail.com>
* Fix route map and typos
Signed-off-by: Manuel Imperiale <manuel.imperiale@gmail.com>
* Update README
Signed-off-by: Manuel Imperiale <manuel.imperiale@gmail.com>
* Fix reviews
Signed-off-by: Manuel Imperiale <manuel.imperiale@gmail.com>
* Fix reviews
Signed-off-by: Manuel Imperiale <manuel.imperiale@gmail.com>
* Fix reviews
Signed-off-by: Manuel Imperiale <manuel.imperiale@gmail.com>
* Fix reviews
Signed-off-by: Manuel Imperiale <manuel.imperiale@gmail.com>
* Update project dependencies
Signed-off-by: Dusan Borovcanin <dusan.borovcanin@mainflux.com>
* Update InfluxDB and Cassandra versions
Update InfluxDB and Cassandra versions in docker-compose file as well as
images version in tests.
Signed-off-by: Dusan Borovcanin <dusan.borovcanin@mainflux.com>
* Update gRPC version
Signed-off-by: Dusan Borovcanin <dusan.borovcanin@mainflux.com>
* Make name first value of constraints
Signed-off-by: Dusan Borovcanin <dusan.borovcanin@mainflux.com>
* Expose the InfluxDB and Cassandra ports to host
Expose the InfluxDB's HTTP API port 8086 and Cassandra's CQL port 9042 from the containers
to the host machine, in order to enable easier exploration of the data stored in the databases
from the host machine and development of apps which connect and use the data stored in the databases.
Signed-off-by: Jovan Kostovski <chombium@gmail.com>
* Port exposing cleanup in docker-compose.yml files
There were some doubled configurations for port exposing with the expose and ports directives in the docker-compose.yml files which had to be cleaned.
Signed-off-by: Jovan Kostovski <chombium@gmail.com>
* Add batch of streams
Signed-off-by: Dušan Borovčanin <dusan.borovcanin@mainflux.com>
* Add env variables for batch point setup
Fix InfluxDB reader tests.
Signed-off-by: Dušan Borovčanin <dusan.borovcanin@mainflux.com>
* Update Compose and Kubernetes config
Signed-off-by: Dušan Borovčanin <dusan.borovcanin@mainflux.com>
* Update env variables
Signed-off-by: Dušan Borovčanin <dusan.borovcanin@mainflux.com>
* Update docs
Signed-off-by: Dušan Borovčanin <dusan.borovcanin@mainflux.com>
* Remove unused const
Refactor code and docs.
Signed-off-by: Dušan Borovčanin <dusan.borovcanin@mainflux.com>
* Handle NewBatchPoints error
Signed-off-by: Dušan Borovčanin <dusan.borovcanin@mainflux.com>
* Reduce wait time in batch save test
Fix typos.
Signed-off-by: Dušan Borovčanin <dusan.borovcanin@mainflux.com>
* Update tests
Use single test with multiple cases to test single point save as well as
a batch of points.
Signed-off-by: Dušan Borovčanin <dusan.borovcanin@mainflux.com>
* Add an explanation for not resetting ticker
Signed-off-by: Dušan Borovčanin <dusan.borovcanin@mainflux.com>
* Add InfluxDB reader
Summary:
- Add basic reader features
- Update Makefile
Signed-off-by: Dušan Borovčanin <dusan.borovcanin@mainflux.com>
* Raise test coverage
Signed-off-by: Dušan Borovčanin <dusan.borovcanin@mainflux.com>
* Update README.md and docker composition
Signed-off-by: Dušan Borovčanin <dusan.borovcanin@mainflux.com>
* Fix docker-compose.yml
Signed-off-by: Dušan Borovčanin <dusan.borovcanin@mainflux.com>
* Remove exposed ports
Ports are already exposed by mapping, so no need to explicity expose them.
Signed-off-by: Dušan Borovčanin <dusan.borovcanin@mainflux.com>