If you are new to Go, it is recommended to work through the How to Write Go Code tutorial, which will ensure your Go environment is configured.
Clone this repo into your Go workspace:
cd $GOPATH/src
mkdir -p github.com/observiq && cd github.com/observiq
git clone [email protected]:observiq/stanza.git
cd $GOPATH/src/github.com/observiq/stanza
To build the agent for another OS, run one of the following:
make build // local OS
make build-windows-amd64
make build-linux-amd64
make build-darwin-amd64
Tests can be run with make test
.
End to end tests can be accomplished with the following tools:
Build the release
make release-test
Run CINC against all supported operating systems:
kitchen create
kitchen converge -c 8
kitchen verify -c 1
kitchen destroy
If you want to target a single instance, you can use a regex. For example, you can use the test
command to create, converge, verify, and destroy Ubuntu 18.
kitchen test ubuntu-18
A Windows MSI installer can be built using the following tools:
- go-msi observiq fork
- Wix toolset
- A valid Microsoft Windows system
Github actions is responsible for building and publishing MSI installers. If you wish to build an MSI on your machine, the Makefile has several targets that can help streamline the build process.
vagrant-prep
: Will deploy a Windows system and prep it for building MSI package. PLEASE NOTE that valid Windows licensing is your responsibility.wix
: Will build the MSI.wix-test
: Will prep, build, and test.wix-test-uninstall
: Will run an uninstall test against a system after a manual uninstall.