server

command module
v0.0.0-...-8f3712b Latest Latest
Warning

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

Go to latest
Published: Oct 1, 2019 License: MIT Imports: 4 Imported by: 0

README

Build Status FOSSA Status

Coverage Status Go Report Card BCH compliance

go-home server

Development environment

go-home uses go 1.13 with modules support, but to provide compatibility with no-modules environments, all scripts are expecting to have go-home.io/x under ${GOPATH}/src folder.

For running on MaOS, gmake has to be installed since regular make has version 3.8 which does not support ONESHELL. You can install it using brew:

 brew install homebrew/core/make

You'll need at least nsq running on your machine. You can install it through brew:

brew install nsq

Then start it:

nsqd -broadcast-address=127.0.0.1

Checkout both server and providers repos into ${GOPATH}/src/go-home.io/x folder, place your config files under server/configs. Minimal required configuration is:

system: bus
provider: nsq
server: 127.0.0.1:4150

---

system: go-home
provider: master
port: 8000
delayedStart: 0

---

system: go-home
provider: worker
name: worker-1

Start both worker and master by running:

gmake run-worker
gmake run-only-server

Preparing commit

To run all required validations simply run:

gmake git

Which includes:

  • dep-ensure -- running go mod tidy
  • generate -- auto-generating all required files
  • lint -- running all configured linters
  • test-local -- running all available tests

Known issues

x/tools/cmd/goimports doesn't work well with modules, sometimes it removes correct package. To bypass this install this package without modules, e.g.:

GO111MODULE=off go get github.com/vkorn/go-miio

monkey patching from an IDE must be executed with an extra params:

-gcflags=-l

License

FOSSA Status

Documentation

The Go Gopher

There is no documentation for this package.

Directories

Path Synopsis
cmd
bintray
Package main contains build utils.
Package main contains build utils.
mod
Package main contains go.sum files checker.
Package main contains go.sum files checker.
proxy
Package main contains proxy utility.
Package main contains proxy utility.
plugins module
Package providers contains interfaces for internal system providers.
Package providers contains interfaces for internal system providers.
Package server contains go-home server.
Package server contains go-home server.
statik
Package statik contains auto-generated static files for the dashboard.
Package statik contains auto-generated static files for the dashboard.
Package settings is responsible for parsing yaml-based configuration.
Package settings is responsible for parsing yaml-based configuration.
api
Package api contains implementation of a api plugin wrapper.
Package api contains implementation of a api plugin wrapper.
bus
Package bus contains service bus abstractions.
Package bus contains service bus abstractions.
config
Package config contains implementation of a configuration reader wrapper.
Package config contains implementation of a configuration reader wrapper.
device
Package device contains implementation of a device plugin wrappers.
Package device contains implementation of a device plugin wrappers.
fanout
Package fanout contains implementation of pub-sub fanout channels.
Package fanout contains implementation of pub-sub fanout channels.
group
Package group contains groups provider.
Package group contains groups provider.
logger
Package logger provides wrapper around go-home logger implementation.
Package logger provides wrapper around go-home logger implementation.
notification
Package notification provides provider around notifications plugins.
Package notification provides provider around notifications plugins.
secret
Package secret contains implementation of a secrets wrapper.
Package secret contains implementation of a secrets wrapper.
security
Package security contains implementation of an API security validators.
Package security contains implementation of an API security validators.
storage
Package storage contains implementation of a data-storage plugin wrapper.
Package storage contains implementation of a data-storage plugin wrapper.
trigger
Package trigger contains wrappers around system triggers.
Package trigger contains wrappers around system triggers.
ui
Package ui contains UI-related configuration.
Package ui contains UI-related configuration.
Package utils contains various helpers.
Package utils contains various helpers.
Package worker contains go-home worker nodes logic.
Package worker contains go-home worker nodes logic.

Jump to

Keyboard shortcuts

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