nmarcetic / mfxkit

Template for creating new Mainflux service based on go-kit

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Mfxkit - Mainflux Starter Kit

Mfxkit service provides a barebones HTTP API and Service interface implementation for development of a core Mainflux service.

How-to

Copy mfxkit directory to the mainflux root directory, e.g. ~/go/src/github.com/mainflux/mainflux/. Copy cmd/mfxkit directory to mainflux/cmd directory.

In mainflux root directory run

MF_MFXKIT_LOG_LEVEL=info go run cmd/mfxkit/main.go

You should get a message similar to this one

{"level":"info","message":"Mfxkit service started using http on port 9021","ts":"2021-03-03T11:16:27.027381203Z"}

In the other terminal window run

curl -i -X POST -H "Content-Type: application/json" localhost:9021/mfxkit -d '{"secret":"secret"}'

If everything goes well, you should get

HTTP/1.1 200 OK
Content-Type: application/json
Date: Wed, 03 Mar 2021 11:17:10 GMT
Content-Length: 30

{"greeting":"Hello World :)"}

To change the secret or the port, prefix the go run command with environment variable assignments, e.g.

MF_MFXKIT_LOG_LEVEL=info MF_MFXKIT_SECRET=secret2 MF_MFXKIT_HTTP_PORT=9022 go run cmd/mfxkit/main.go

To see the change in action, run

curl -i -X POST -H "Content-Type: application/json" localhost:9022/mfxkit -d '{"secret":"secret2"}'

About

Template for creating new Mainflux service based on go-kit

License:Apache License 2.0


Languages

Language:Go 94.8%Language:Dockerfile 2.4%Language:Shell 1.6%Language:Makefile 1.1%