Skip to content

Commit

Permalink
fix(go): docker settings and docs improvements
Browse files Browse the repository at this point in the history
  • Loading branch information
danielhe4rt committed May 29, 2024
1 parent 8f8329d commit 202b672
Show file tree
Hide file tree
Showing 6 changed files with 40 additions and 41 deletions.
36 changes: 15 additions & 21 deletions go/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -53,9 +53,7 @@ To get node IP address run:

To initialize database execute:

$ go build ./cmd/migrate
$ NODE1=$(docker inspect -f '{{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}}' carepet-scylla1)
$ ./migrate --hosts $NODE1
$ docker exec -it go-app run ./cmd/migrate

Expected output:

Expand Down Expand Up @@ -109,9 +107,7 @@ You can check the database structure with:

To start pet collar simulation execute the following in the separate terminal:

$ go build ./cmd/sensor
$ NODE1=$(docker inspect -f '{{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}}' carepet-scylla1)
$ ./sensor --hosts $NODE1 --measure 5s --buffer-interval 1m
$ docker exec -it go-app run ./cmd/sensor

Expected output:

Expand All @@ -129,9 +125,7 @@ That means that the collar has been pushed buffered measurements to the app.
Write down the pet Owner ID (ID is something after the `#` sign without trailing spaces).
To start REST API service execute the following in the separate terminal:

$ go build ./cmd/server
$ NODE1=$(docker inspect -f '{{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}}' carepet-scylla1)
$ ./server --port 8000 --hosts $NODE1
$ docker exec -it go-app run ./cmd/server --port 8000

Expected output:

Expand Down Expand Up @@ -222,18 +216,18 @@ Structure

Package structure is as follows:

| Name | Purpose |
| ---- | ------- |
| /api | swagger api spec |
| /cmd | applications executables |
| /cmd/migrate | install database schema |
| /cmd/sensor | simulate pet collar |
| /cmd/server | web application backend |
| /config | database configuration |
| /db | database handlers (gocql/x) |
| /db/cql | database schema |
| /handler | swagger REST API handlers |
| /model | application models and ORM metadata |
| Name | Purpose |
|--------------|-------------------------------------|
| /api | swagger api spec |
| /cmd | applications executables |
| /cmd/migrate | install database schema |
| /cmd/sensor | simulate pet collar |
| /cmd/server | web application backend |
| /config | database configuration |
| /db | database handlers (gocql/x) |
| /db/cql | database schema |
| /handler | swagger REST API handlers |
| /model | application models and ORM metadata |

API
---
Expand Down
3 changes: 3 additions & 0 deletions go/cmd/migrate/migrate.go
Original file line number Diff line number Diff line change
Expand Up @@ -23,8 +23,11 @@ func main() {
}

createKeyspace()
log.Println("Keyspace Created!")
migrateKeyspace()
log.Println("Migrations settled!")
printKeyspaceMetadata()
log.Println("Now you're ready to use the application! Make sure to test the whole app: sensor, server and loadtest.")
}

func createKeyspace() {
Expand Down
2 changes: 1 addition & 1 deletion go/config/gocql.go
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ func init() {

config.DB.Consistency = gocql.LocalQuorum

pflag.StringArrayVar(&config.DB.Hosts, "hosts", []string{"127.0.0.1"}, "cluster nodes address list")
pflag.StringArrayVar(&config.DB.Hosts, "hosts", []string{"carepet-scylla1", "carepet-scylla2", "carepet-scylla3"}, "cluster nodes address list")
pflag.DurationVar(&config.DB.Timeout, "timeout", 60*time.Second, "connection timeout")
pflag.DurationVar(&config.DB.ConnectTimeout, "dial-timeout", 5*time.Second, "initial dial timeout")

Expand Down
35 changes: 17 additions & 18 deletions go/docker-compose.yml
Original file line number Diff line number Diff line change
@@ -1,24 +1,23 @@
version: '3'

services:
# go-app:
# image: golang:1.14
# container_name: go-app
# depends_on:
# - carepet-scylla1
# working_dir: /app
# command: sh -c "
# git clone https://github.com/scylladb/care-pet /care-pet &&
# cd /care-pet/go &&
# go build ./cmd/migrate &&
# go build ./cmd/sensor &&
# go build ./cmd/loadtest &&
# go build ./cmd/server &&
# cp -a . ../../app &&
# tail -F anything"
#
# expose:
# - '8000'
go-app:
image: golang:1.22.3-alpine
container_name: go-app
volumes:
- ./:/app
depends_on:
- carepet-scylla1
working_dir: /app
command: sh -c "
go build ./cmd/migrate &&
go build ./cmd/sensor &&
go build ./cmd/loadtest &&
go build ./cmd/server &&
tail -F anything
"
expose:
- '8000'
carepet-scylla1:
image: scylladb/scylla
container_name: carepet-scylla1
Expand Down
2 changes: 1 addition & 1 deletion go/go.mod
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ require (
github.com/go-openapi/swag v0.23.0
github.com/go-openapi/validate v0.24.0
github.com/gocql/gocql v1.6.0
github.com/jessevdk/go-flags v1.4.0
github.com/jessevdk/go-flags v1.5.0
github.com/scylladb/gocqlx/v2 v2.8.0
github.com/spf13/pflag v1.0.5
golang.org/x/net v0.25.0
Expand Down
3 changes: 3 additions & 0 deletions go/go.sum
Original file line number Diff line number Diff line change
Expand Up @@ -58,6 +58,8 @@ github.com/hailocab/go-hostpool v0.0.0-20160125115350-e80d13ce29ed h1:5upAirOpQc
github.com/hailocab/go-hostpool v0.0.0-20160125115350-e80d13ce29ed/go.mod h1:tMWxXQ9wFIaZeTI9F+hmhFiGpFmhOHzyShyFUhRm0H4=
github.com/jessevdk/go-flags v1.4.0 h1:4IU2WS7AumrZ/40jfhf4QVDMsQwqA7VEHozFRrGARJA=
github.com/jessevdk/go-flags v1.4.0/go.mod h1:4FA24M0QyGHXBuZZK/XkWh8h0e1EYbRYJSGM75WSRxI=
github.com/jessevdk/go-flags v1.5.0 h1:1jKYvbxEjfUl0fmqTCOfonvskHHXMjBySTLW4y9LFvc=
github.com/jessevdk/go-flags v1.5.0/go.mod h1:Fw0T6WPc1dYxT4mKEZRfG5kJhaTDP9pj1c2EWnYs/m4=
github.com/josharian/intern v1.0.0 h1:vlS4z54oSdjm0bgjRigI+G1HpF+tI+9rE5LLzOg8HmY=
github.com/josharian/intern v1.0.0/go.mod h1:5DoeVV0s6jJacbCEi61lwdGj/aVlrQvzHFFd8Hwg//Y=
github.com/jung-kurt/gofpdf v1.0.3-0.20190309125859-24315acbbda5/go.mod h1:7Id9E/uU8ce6rXgefFLlgrJj/GYY22cpxn+r32jIOes=
Expand Down Expand Up @@ -162,6 +164,7 @@ golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod h1:STP8DvDyc/dI5b8T5h
golang.org/x/sys v0.0.0-20190312061237-fead79001313/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
golang.org/x/sys v0.0.0-20190412213103-97732733099d/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
golang.org/x/sys v0.0.0-20201119102817-f84b799fce68/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
golang.org/x/sys v0.0.0-20210320140829-1e4c9ba3b0c4/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
golang.org/x/sys v0.0.0-20210615035016-665e8c7367d1/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.0.0-20220520151302-bc2c85ada10a/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.0.0-20220722155257-8c9f86f7a55f/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
Expand Down

0 comments on commit 202b672

Please sign in to comment.