* 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 - Use opcua server timestamp in opcua-adapter messages
Signed-off-by: Manuel Imperiale <manuel.imperiale@gmail.com>
* Rename pubsub -> subscribe
Signed-off-by: Manuel Imperiale <manuel.imperiale@gmail.com>
* Typo
Signed-off-by: Manuel Imperiale <manuel.imperiale@gmail.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 ES flat to the things service
Signed-off-by: Aleksandar Novakovic <anovakovic01@gmail.com>
* Add env var for optional ES
Signed-off-by: Aleksandar Novakovic <anovakovic01@gmail.com>
* Fix API docs
Signed-off-by: Dušan Borovčanin <dusan.borovcanin@mainflux.com>
* Provide secured bootstrapping
Signed-off-by: Dušan Borovčanin <dusan.borovcanin@mainflux.com>
* Fix test and mock methods signatures
Signed-off-by: Dušan Borovčanin <dusan.borovcanin@mainflux.com>
* Fix tests
Signed-off-by: Dušan Borovčanin <dusan.borovcanin@mainflux.com>
* Fix typos
Signed-off-by: Dušan Borovčanin <dusan.borovcanin@mainflux.com>
* Add encrypte bootstrap test
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 duplicated docs
Signed-off-by: Dušan Borovčanin <dusan.borovcanin@mainflux.com>
* Use secret key to encrypt bootstrap request
Signed-off-by: Dušan Borovčanin <dusan.borovcanin@mainflux.com>
* Use secret key for secure bootstrapping
Signed-off-by: Dušan Borovčanin <dusan.borovcanin@mainflux.com>
* Move encryption to ConfigReader
Signed-off-by: Dušan Borovčanin <dusan.borovcanin@mainflux.com>
* Remove ConfigReader from Service
Signed-off-by: Dušan Borovčanin <dusan.borovcanin@mainflux.com>
* Fix tests
Signed-off-by: Dušan Borovčanin <dusan.borovcanin@mainflux.com>
* Add reader tests
Signed-off-by: Dušan Borovčanin <dusan.borovcanin@mainflux.com>
* Update API docs
Signed-off-by: Dušan Borovčanin <dusan.borovcanin@mainflux.com>
* Unset key env variable
Signed-off-by: Dušan Borovčanin <dusan.borovcanin@mainflux.com>
* Add endpoint test for secure bootstrap
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>
* Add authorization HTTP API to things service
Signed-off-by: Aleksandar Novakovic <anovakovic01@gmail.com>
* Add new tests and update existing ones
Signed-off-by: Aleksandar Novakovic <anovakovic01@gmail.com>
* Update swagger documentation
Update swagger documentation for auth endpoints.
Signed-off-by: Aleksandar Novakovic <anovakovic01@gmail.com>
* Update README docs for things service
Signed-off-by: Aleksandar Novakovic <anovakovic01@gmail.com>
* Update docker-compose and fix endpoint typo
Signed-off-by: Aleksandar Novakovic <anovakovic01@gmail.com>
* Remove commented code
Signed-off-by: Aleksandar Novakovic <anovakovic01@gmail.com>
* NOISSUE - Add searchable Things name
Signed-off-by: Manuel Imperiale <manuel.imperiale@gmail.com>
* Fix reviews
Signed-off-by: Manuel Imperiale <manuel.imperiale@gmail.com>
* Fix typo
Signed-off-by: Manuel Imperiale <manuel.imperiale@gmail.com>
* Add postgres schema validation and tests
Signed-off-by: Manuel Imperiale <manuel.imperiale@gmail.com>
* Add namme tests in requests_test
Signed-off-by: Manuel Imperiale <manuel.imperiale@gmail.com>
* Typo fix
Signed-off-by: Manuel Imperiale <manuel.imperiale@gmail.com>
* Rm requests_test
Signed-off-by: Manuel Imperiale <manuel.imperiale@gmail.com>
* Add name in ListThings loggins
Signed-off-by: Manuel Imperiale <manuel.imperiale@gmail.com>
* Add invalidName var for tests
Signed-off-by: Manuel Imperiale <manuel.imperiale@gmail.com>
* Set maxNameSize to 1024
Signed-off-by: Manuel Imperiale <manuel.imperiale@gmail.com>
* Fix postgres test
Signed-off-by: Manuel Imperiale <manuel.imperiale@gmail.com>
* Fix total when filtering things by name
Signed-off-by: Manuel Imperiale <manuel.imperiale@gmail.com>
* Fix review
Signed-off-by: Manuel Imperiale <manuel.imperiale@gmail.com>
* Add single user mode to things service
Signed-off-by: Aleksandar Novakovic <anovakovic01@gmail.com>
* Add tests for things/users package
Signed-off-by: Aleksandar Novakovic <anovakovic01@gmail.com>
* Update init order in main
Signed-off-by: Aleksandar Novakovic <anovakovic01@gmail.com>
* Add username, password and port env var
Signed-off-by: Aleksandar Novakovic <anovakovic01@gmail.com>
* Update existing readme files with new env vars
Signed-off-by: Aleksandar Novakovic <anovakovic01@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>
* Update metadata type in things service
Update things service so that metadata has map type. Update repo
implementation by adding sqlx lib.
Signed-off-by: Aleksandar Novakovic <aleksandar.novakovic@mainflux.com>
* Add sqlx lib to bootstrap service
Add sqlx lib to bootstrap service and update metadata field type.
Signed-off-by: Aleksandar Novakovic <aleksandar.novakovic@mainflux.com>
* Update metadata in redis streams consumer
Signed-off-by: Aleksandar Novakovic <aleksandar.novakovic@mainflux.com>
* Update tests for bootstrap service
Signed-off-by: Aleksandar Novakovic <aleksandar.novakovic@mainflux.com>
* Fix mongo reader logging and driver version
Signed-off-by: Aleksandar Novakovic <aleksandar.novakovic@mainflux.com>
* Fix mongo reader and writer
Fix mongo reader and writer by updating driver version.
Signed-off-by: Aleksandar Novakovic <aleksandar.novakovic@mainflux.com>
* Update SDK with new metadata format
Signed-off-by: Aleksandar Novakovic <aleksandar.novakovic@mainflux.com>
* Update LoRa adapter with new metadata format
Signed-off-by: Aleksandar Novakovic <aleksandar.novakovic@mainflux.com>
* Update users service in order to use sqlx
Signed-off-by: Aleksandar Novakovic <aleksandar.novakovic@mainflux.com>
* Replace anonymous struct with map
Signed-off-by: Aleksandar Novakovic <aleksandar.novakovic@mainflux.com>
* Update docs for LoRa adapter
Signed-off-by: Aleksandar Novakovic <aleksandar.novakovic@mainflux.com>
* Fix LoRa application metadata format
Signed-off-by: Aleksandar Novakovic <aleksandar.novakovic@mainflux.com>
* Fix metadata format in LoRa docs
Signed-off-by: Aleksandar Novakovic <aleksandar.novakovic@mainflux.com>
* Add metadata2 var to SDK things test
Signed-off-by: Aleksandar Novakovic <aleksandar.novakovic@mainflux.com>
* Add initial Bootstrap event producer
Signed-off-by: Dušan Borovčanin <dusan.borovcanin@mainflux.com>
* Add operation name to events
Signed-off-by: Dušan Borovčanin <dusan.borovcanin@mainflux.com>
* Add ES path for BS events
Signed-off-by: Dušan Borovčanin <dusan.borovcanin@mainflux.com>
* Add BS event sourcing tests
Signed-off-by: Dušan Borovčanin <dusan.borovcanin@mainflux.com>
* Add connections update events
Signed-off-by: Dušan Borovčanin <dusan.borovcanin@mainflux.com>
* Extract event XADD to separeate method
Signed-off-by: Dušan Borovčanin <dusan.borovcanin@mainflux.com>
* Add header comments
Signed-off-by: Dušan Borovčanin <dusan.borovcanin@mainflux.com>
* Fix service docs typo
Signed-off-by: Dušan Borovčanin <dusan.borovcanin@mainflux.com>
* Update BS service README.md
Signed-off-by: Dušan Borovčanin <dusan.borovcanin@mainflux.com>
* Update Service method tests
Tests for handler methods are not added.
Signed-off-by: Dušan Borovčanin <dusan.borovcanin@mainflux.com>
* NOISSUE - Prevent infinite loop in lora-adapter if Redis init fail
Signed-off-by: Manuel Imperiale <manuel.imperiale@gmail.com>
* Fix line length
Signed-off-by: Manuel Imperiale <manuel.imperiale@gmail.com>
* MF-433 - Add method for reading messages from readers to SDK
Signed-off-by: Manuel Imperiale <manuel.imperiale@gmail.com>
* Add messages read command on CLI
Signed-off-by: Manuel Imperiale <manuel.imperiale@gmail.com>
* Fix review
Signed-off-by: Manuel Imperiale <manuel.imperiale@gmail.com>
* MF-448 - Add option to connect to DB with verify-ca and verify-full
Adds the option to connect with verify-ca and verify-full
Users can now specify any extra certs and keys they may need.
Signed-off-by: MichaelFinley <Michael.Finley@target.com>
* Passing db config struct rather than seperate parameters
Also updated the tests to use the config
Signed-off-by: MichaelFinley <Michael.Finley@target.com>
* Unexporting fields apart of users config
Also added comments to the newly exported Config in things & users postgres/init.go
Signed-off-by: MichaelFinley <Michael.Finley@target.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>
* Add event sourcing middleware for things service
Add event sourcing for write operations over things and channels.
Signed-off-by: Aleksandar Novakovic <aleksandar.novakovic@mainflux.com>
* Add tests for event sourcing middleware
Signed-off-by: Aleksandar Novakovic <aleksandar.novakovic@mainflux.com>
* Update things in tests to contain metadata field
Signed-off-by: Aleksandar Novakovic <aleksandar.novakovic@mainflux.com>
* Add TLS support to CoAP adapter and all readers
Signed-off-by: Aleksandar Novakovic <aleksandar.novakovic@mainflux.com>
* Add new env vars to README files
Add tls env vars to README files for CoAP adapter, WS adapter
and all readers.
Signed-off-by: Aleksandar Novakovic <aleksandar.novakovic@mainflux.com>
* Update all services to exit on invalid TLS env var value
Signed-off-by: Aleksandar Novakovic <aleksandar.novakovic@mainflux.com>
* Add TLS flag that will turn TLS on or off
Add TLS flag to things, http, ws and mqtt service.
Signed-off-by: Aleksandar Novakovic <aleksandar.novakovic@mainflux.com>
* Update readme files with new env vars
Signed-off-by: Aleksandar Novakovic <aleksandar.novakovic@mainflux.com>