[buildout]
extends =
  ../../component/golang/buildout.cfg

parts =
  repman

[gowork]
golang  = ${golang1.12:location}
install =
buildflags =  -v --tags server --ldflags "-extldflags 'static' -w -s -X main.GoOS=linux -X main.GoArch=amd64 -X main.Version=2.1 -X main.FullVersion=$FULLVERSION -X main.Build=$(date +%FT%T%z) -X main.WithProvisioning=ON -X main.WithOpenSVC=OFF -X main.WithHaproxy=ON -X main.WithMaxscale=ON  -X main.WithMariadbshardproxy=ON -X  main.WithProxysql=ON -X  main.WithSphinx=ON -X main.WithArbitration=OFF -X main.WithArbitrationClient=ON -X main.WithMonitoring=ON -X main.WithHttp=ON -X main.WithBackup=ON -X main.WithMail=ON -X main.WithEnforce=ON -X main.WithDeprecate=ON"

[gowork.goinstall]
depends_gitfetch  =
    ${git.signal18.io_signal18_repman:recipe}

command = . ${gowork:env.sh} &&
  cd ${git.signal18.io_signal18_repman:location}  &&
  export GO111MODULE=on &&
  export FULLVERSION=$(git describe --tags) &&
  go build ${gowork:buildflags} -o ${gowork:bin}/replication-manager  &&
  chmod -R u+w .

#  export VERSION=$(git describe --abbrev=0 --tags) &&

[git.signal18.io_signal18_repman]
<= go-git-package
go.importpath = github.com/signal18/replication-manager
repository =  https://github.com/signal18/replication-manager
branch = 2.1

[repman]
# revision and repository can be used to control which repman version is used
depend = ${gowork:recipe}
recipe  = collective.recipe.template
# Do something useless to pass
output  = ${buildout:bin-directory}/${:_buildout_section_name_}
mode    = 0755
input   = inline:
    #!/bin/sh
    ${gowork:bin}/replication-manager
    --monitoring-basedir=system --monitoring-sharedir=software_release/src/share --http-root=software_release/src/dashboard monitor
# --monitoring-datadir=$${directory:var}/lib --config=$${directory:etc}/config.toml --log-file=$${:logfile}