archaeopteryx_boilerplate

command module
v0.3.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Sep 1, 2021 License: MIT Imports: 7 Imported by: 0

README

archaeopteryx_boilerplate

codecov Go Reference

This project is a example of usage archaeopteryx for creating microservice on Golang with all required dependencies

Install dependencies

make install

Generate protobuf & docs

make generate

Presequinces

archaeopteryx requires folder for log files. To create it run:

sudo mkdir /var/log/archaeopteryx
sudo chown $USER /var/log/archaeopteryx

Build

Docker

To build docker image use:

make build_docker

Run

Binary

To run server use:

make run
Docker

To run server in docker use:

make run_docker

Test

Unit test

For unit tests use:

make test
Lint

For lint use:

make lint
gRPC

For testing gRPC API use Kreya

Folder kreya contains Kreya project for working with the project.

gRPC gateway
Hello world

To test REST gRPC gateway use command:

curl -X POST -k http://localhost:8090/v1/hello -d '{"name": " hello"}'

As a result you should get response: {"message":" hello world"}

User V1
Add User

To test REST gRPC gateway use command:

curl -X POST -k http://localhost:8090/v1/user -d '{"name":"bobby","password":"ilu"}'

As a result you should get response: {"id":<random id>}

Get User

To test REST gRPC gateway use command:

curl -X GET -k http://localhost:8090/v1/user?id=123

As a result you should get response: {"name":"Bobby", "password":"qwerty"}

User V2
Add User

To test REST gRPC gateway use command:

curl -X POST -k http://localhost:8090/v2/user -d '{"firstName":"bobby","lastName":"twist","password":"ilu"}'

As a result you should get response: {"id":<random id>}

Get User

To test REST gRPC gateway use command:

curl -X GET -k http://localhost:8090/v2/user?id=123

As a result you should get response: {"firstName":"Bobby", "lastName":"Twist", "password":"qwerty"}

Documentation

The Go Gopher

There is no documentation for this package.

Directories

Path Synopsis
pkg
proto
gen/hello_world/v1
Package hello_world is a reverse proxy.
Package hello_world is a reverse proxy.
gen/user/v1
Package user is a reverse proxy.
Package user is a reverse proxy.
gen/user/v2
Package user is a reverse proxy.
Package user is a reverse proxy.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL