Require dep to be installed before building (#4461)
This commit is contained in:
parent
d95824a9c1
commit
9051ea9dc0
|
@ -4,10 +4,10 @@ defaults:
|
||||||
working_directory: '/go/src/github.com/influxdata/telegraf'
|
working_directory: '/go/src/github.com/influxdata/telegraf'
|
||||||
go-1_9: &go-1_9
|
go-1_9: &go-1_9
|
||||||
docker:
|
docker:
|
||||||
- image: 'circleci/golang:1.9.7'
|
- image: 'quay.io/influxdb/telegraf-ci:1.9.7'
|
||||||
go-1_10: &go-1_10
|
go-1_10: &go-1_10
|
||||||
docker:
|
docker:
|
||||||
- image: 'circleci/golang:1.10.3'
|
- image: 'quay.io/influxdb/telegraf-ci:1.10.3'
|
||||||
|
|
||||||
version: 2
|
version: 2
|
||||||
jobs:
|
jobs:
|
||||||
|
@ -27,53 +27,98 @@ jobs:
|
||||||
root: '/go/src'
|
root: '/go/src'
|
||||||
paths:
|
paths:
|
||||||
- '*'
|
- '*'
|
||||||
|
|
||||||
test-go-1.9:
|
test-go-1.9:
|
||||||
<<: [ *defaults, *go-1_9 ]
|
<<: [ *defaults, *go-1_9 ]
|
||||||
steps:
|
steps:
|
||||||
- attach_workspace:
|
- attach_workspace:
|
||||||
at: '/go/src'
|
at: '/go/src'
|
||||||
- run: 'make test-ci'
|
- run: 'make check'
|
||||||
|
- run: 'make test'
|
||||||
test-go-1.10:
|
test-go-1.10:
|
||||||
<<: [ *defaults, *go-1_10 ]
|
<<: [ *defaults, *go-1_10 ]
|
||||||
steps:
|
steps:
|
||||||
- attach_workspace:
|
- attach_workspace:
|
||||||
at: '/go/src'
|
at: '/go/src'
|
||||||
- run: 'make test-ci'
|
- run: 'make check'
|
||||||
- run: 'GOARCH=386 make test-ci'
|
- run: 'make test'
|
||||||
|
test-go-1.10-386:
|
||||||
|
<<: [ *defaults, *go-1_10 ]
|
||||||
|
steps:
|
||||||
|
- attach_workspace:
|
||||||
|
at: '/go/src'
|
||||||
|
- run: 'GOARCH=386 make check'
|
||||||
|
- run: 'GOARCH=386 make test'
|
||||||
|
|
||||||
|
package:
|
||||||
|
<<: [ *defaults, *go-1_10 ]
|
||||||
|
steps:
|
||||||
|
- attach_workspace:
|
||||||
|
at: '/go/src'
|
||||||
|
- run: 'make package'
|
||||||
|
- store_artifacts:
|
||||||
|
path: './build'
|
||||||
|
destination: 'build'
|
||||||
release:
|
release:
|
||||||
<<: [ *defaults, *go-1_10 ]
|
<<: [ *defaults, *go-1_10 ]
|
||||||
steps:
|
steps:
|
||||||
- attach_workspace:
|
- attach_workspace:
|
||||||
at: '/go/src'
|
at: '/go/src'
|
||||||
- run: './scripts/release.sh'
|
- run: 'make package-release'
|
||||||
- store_artifacts:
|
- store_artifacts:
|
||||||
path: './artifacts'
|
path: './build'
|
||||||
destination: '.'
|
destination: 'build'
|
||||||
nightly:
|
nightly:
|
||||||
<<: [ *defaults, *go-1_10 ]
|
<<: [ *defaults, *go-1_10 ]
|
||||||
steps:
|
steps:
|
||||||
- attach_workspace:
|
- attach_workspace:
|
||||||
at: '/go/src'
|
at: '/go/src'
|
||||||
- run: './scripts/release.sh'
|
- run: 'make package-nightly'
|
||||||
- store_artifacts:
|
- store_artifacts:
|
||||||
path: './artifacts'
|
path: './build'
|
||||||
destination: '.'
|
destination: 'build'
|
||||||
|
|
||||||
workflows:
|
workflows:
|
||||||
version: 2
|
version: 2
|
||||||
build_and_release:
|
check:
|
||||||
jobs:
|
jobs:
|
||||||
- 'deps'
|
- 'deps':
|
||||||
|
filters:
|
||||||
|
tags:
|
||||||
|
only: /.*/
|
||||||
- 'test-go-1.9':
|
- 'test-go-1.9':
|
||||||
requires:
|
requires:
|
||||||
- 'deps'
|
- 'deps'
|
||||||
|
filters:
|
||||||
|
tags:
|
||||||
|
only: /.*/
|
||||||
- 'test-go-1.10':
|
- 'test-go-1.10':
|
||||||
requires:
|
requires:
|
||||||
- 'deps'
|
- 'deps'
|
||||||
|
filters:
|
||||||
|
tags:
|
||||||
|
only: /.*/
|
||||||
|
- 'test-go-1.10-386':
|
||||||
|
requires:
|
||||||
|
- 'deps'
|
||||||
|
filters:
|
||||||
|
tags:
|
||||||
|
only: /.*/
|
||||||
|
- 'package':
|
||||||
|
requires:
|
||||||
|
- 'test-go-1.9'
|
||||||
|
- 'test-go-1.10'
|
||||||
|
- 'test-go-1.10-386'
|
||||||
- 'release':
|
- 'release':
|
||||||
requires:
|
requires:
|
||||||
- 'test-go-1.9'
|
- 'test-go-1.9'
|
||||||
- 'test-go-1.10'
|
- 'test-go-1.10'
|
||||||
|
- 'test-go-1.10-386'
|
||||||
|
filters:
|
||||||
|
tags:
|
||||||
|
only: /.*/
|
||||||
|
branches:
|
||||||
|
ignore: /.*/
|
||||||
nightly:
|
nightly:
|
||||||
jobs:
|
jobs:
|
||||||
- 'deps'
|
- 'deps'
|
||||||
|
@ -83,10 +128,14 @@ workflows:
|
||||||
- 'test-go-1.10':
|
- 'test-go-1.10':
|
||||||
requires:
|
requires:
|
||||||
- 'deps'
|
- 'deps'
|
||||||
|
- 'test-go-1.10-386':
|
||||||
|
requires:
|
||||||
|
- 'deps'
|
||||||
- 'nightly':
|
- 'nightly':
|
||||||
requires:
|
requires:
|
||||||
- 'test-go-1.9'
|
- 'test-go-1.9'
|
||||||
- 'test-go-1.10'
|
- 'test-go-1.10'
|
||||||
|
- 'test-go-1.10-386'
|
||||||
triggers:
|
triggers:
|
||||||
- schedule:
|
- schedule:
|
||||||
cron: "0 7 * * *"
|
cron: "0 7 * * *"
|
||||||
|
|
|
@ -30,9 +30,8 @@ which can be found [on our website](http://influxdb.com/community/cla.html)
|
||||||
|
|
||||||
Assuming you can already build the project, run these in the telegraf directory:
|
Assuming you can already build the project, run these in the telegraf directory:
|
||||||
|
|
||||||
1. `go get -u github.com/golang/dep/cmd/dep`
|
1. `dep ensure -vendor-only`
|
||||||
2. `dep ensure -vendor-only`
|
2. `dep ensure -add github.com/[dependency]/[new-package]`
|
||||||
3. `dep ensure -add github.com/[dependency]/[new-package]`
|
|
||||||
|
|
||||||
## Input Plugins
|
## Input Plugins
|
||||||
|
|
||||||
|
|
55
Makefile
55
Makefile
|
@ -17,10 +17,8 @@ BUILDFLAGS ?=
|
||||||
|
|
||||||
ifdef GOBIN
|
ifdef GOBIN
|
||||||
PATH := $(GOBIN):$(PATH)
|
PATH := $(GOBIN):$(PATH)
|
||||||
else ifdef GOPATH
|
|
||||||
PATH := $(subst :,/bin:,$(GOPATH))/bin:$(PATH)
|
|
||||||
else
|
else
|
||||||
PATH := $(HOME)/go/bin:$(PATH)
|
PATH := $(subst :,/bin:,$(shell go env GOPATH))/bin:$(PATH)
|
||||||
endif
|
endif
|
||||||
|
|
||||||
LDFLAGS := $(LDFLAGS) -X main.commit=$(COMMIT) -X main.branch=$(BRANCH)
|
LDFLAGS := $(LDFLAGS) -X main.commit=$(COMMIT) -X main.branch=$(BRANCH)
|
||||||
|
@ -28,33 +26,39 @@ ifdef VERSION
|
||||||
LDFLAGS += -X main.version=$(VERSION)
|
LDFLAGS += -X main.version=$(VERSION)
|
||||||
endif
|
endif
|
||||||
|
|
||||||
|
.PHONY: all
|
||||||
all:
|
all:
|
||||||
$(MAKE) deps
|
@$(MAKE) --no-print-directory deps
|
||||||
$(MAKE) telegraf
|
@$(MAKE) --no-print-directory telegraf
|
||||||
|
|
||||||
|
.PHONY: deps
|
||||||
deps:
|
deps:
|
||||||
go get -u github.com/golang/lint/golint
|
|
||||||
go get -u github.com/golang/dep/cmd/dep
|
|
||||||
dep ensure -vendor-only
|
dep ensure -vendor-only
|
||||||
|
|
||||||
|
.PHONY: telegraf
|
||||||
telegraf:
|
telegraf:
|
||||||
go build -ldflags "$(LDFLAGS)" ./cmd/telegraf
|
go build -ldflags "$(LDFLAGS)" ./cmd/telegraf
|
||||||
|
|
||||||
|
.PHONY: go-install
|
||||||
go-install:
|
go-install:
|
||||||
go install -ldflags "-w -s $(LDFLAGS)" ./cmd/telegraf
|
go install -ldflags "-w -s $(LDFLAGS)" ./cmd/telegraf
|
||||||
|
|
||||||
|
.PHONY: install
|
||||||
install: telegraf
|
install: telegraf
|
||||||
mkdir -p $(DESTDIR)$(PREFIX)/bin/
|
mkdir -p $(DESTDIR)$(PREFIX)/bin/
|
||||||
cp telegraf $(DESTDIR)$(PREFIX)/bin/
|
cp telegraf $(DESTDIR)$(PREFIX)/bin/
|
||||||
|
|
||||||
|
|
||||||
|
.PHONY: test
|
||||||
test:
|
test:
|
||||||
go test -short ./...
|
go test -short ./...
|
||||||
|
|
||||||
|
.PHONY: fmt
|
||||||
fmt:
|
fmt:
|
||||||
@gofmt -w $(filter-out plugins/parsers/influx/machine.go, $(GOFILES))
|
@gofmt -w $(filter-out plugins/parsers/influx/machine.go, $(GOFILES))
|
||||||
|
|
||||||
|
.PHONY: fmtcheck
|
||||||
fmtcheck:
|
fmtcheck:
|
||||||
@echo '[INFO] running gofmt to identify incorrectly formatted code...'
|
|
||||||
@if [ ! -z "$(GOFMT)" ]; then \
|
@if [ ! -z "$(GOFMT)" ]; then \
|
||||||
echo "[ERROR] gofmt has found errors in the following files:" ; \
|
echo "[ERROR] gofmt has found errors in the following files:" ; \
|
||||||
echo "$(GOFMT)" ; \
|
echo "$(GOFMT)" ; \
|
||||||
|
@ -62,8 +66,8 @@ fmtcheck:
|
||||||
echo "Run make fmt to fix them." ; \
|
echo "Run make fmt to fix them." ; \
|
||||||
exit 1 ;\
|
exit 1 ;\
|
||||||
fi
|
fi
|
||||||
@echo '[INFO] done.'
|
|
||||||
|
|
||||||
|
.PHONY: test-windows
|
||||||
test-windows:
|
test-windows:
|
||||||
go test -short ./plugins/inputs/ping/...
|
go test -short ./plugins/inputs/ping/...
|
||||||
go test -short ./plugins/inputs/win_perf_counters/...
|
go test -short ./plugins/inputs/win_perf_counters/...
|
||||||
|
@ -71,8 +75,7 @@ test-windows:
|
||||||
go test -short ./plugins/inputs/procstat/...
|
go test -short ./plugins/inputs/procstat/...
|
||||||
go test -short ./plugins/inputs/ntpq/...
|
go test -short ./plugins/inputs/ntpq/...
|
||||||
|
|
||||||
# vet runs the Go source code static analysis tool `vet` to find
|
.PHONY: vet
|
||||||
# any common errors.
|
|
||||||
vet:
|
vet:
|
||||||
@echo 'go vet $$(go list ./... | grep -v ./plugins/parsers/influx)'
|
@echo 'go vet $$(go list ./... | grep -v ./plugins/parsers/influx)'
|
||||||
@go vet $$(go list ./... | grep -v ./plugins/parsers/influx) ; if [ $$? -ne 0 ]; then \
|
@go vet $$(go list ./... | grep -v ./plugins/parsers/influx) ; if [ $$? -ne 0 ]; then \
|
||||||
|
@ -82,19 +85,33 @@ vet:
|
||||||
exit 1; \
|
exit 1; \
|
||||||
fi
|
fi
|
||||||
|
|
||||||
test-ci: fmtcheck vet
|
.PHONY: check
|
||||||
go test -short ./...
|
check: fmtcheck vet
|
||||||
|
|
||||||
|
.PHONY: test-all
|
||||||
test-all: fmtcheck vet
|
test-all: fmtcheck vet
|
||||||
go test ./...
|
go test ./...
|
||||||
|
|
||||||
|
.PHONY: package
|
||||||
package:
|
package:
|
||||||
./scripts/build.py --package --platform=all --arch=all
|
./scripts/build.py --package --platform=all --arch=all
|
||||||
|
|
||||||
|
.PHONY: package-release
|
||||||
|
package-release:
|
||||||
|
./scripts/build.py --release --package --platform=all --arch=all \
|
||||||
|
--upload --bucket=dl.influxdata.com/telegraf/releases
|
||||||
|
|
||||||
|
.PHONY: package-nightly
|
||||||
|
package-nightly:
|
||||||
|
./scripts/build.py --nightly --package --platform=all --arch=all \
|
||||||
|
--upload --bucket=dl.influxdata.com/telegraf/nightlies
|
||||||
|
|
||||||
|
.PHONY: clean
|
||||||
clean:
|
clean:
|
||||||
rm -f telegraf
|
rm -f telegraf
|
||||||
rm -f telegraf.exe
|
rm -f telegraf.exe
|
||||||
|
|
||||||
|
.PHONY: docker-image
|
||||||
docker-image:
|
docker-image:
|
||||||
./scripts/build.py --package --platform=linux --arch=amd64
|
./scripts/build.py --package --platform=linux --arch=amd64
|
||||||
cp build/telegraf*$(COMMIT)*.deb .
|
cp build/telegraf*$(COMMIT)*.deb .
|
||||||
|
@ -103,6 +120,7 @@ docker-image:
|
||||||
plugins/parsers/influx/machine.go: plugins/parsers/influx/machine.go.rl
|
plugins/parsers/influx/machine.go: plugins/parsers/influx/machine.go.rl
|
||||||
ragel -Z -G2 $^ -o $@
|
ragel -Z -G2 $^ -o $@
|
||||||
|
|
||||||
|
.PHONY: static
|
||||||
static:
|
static:
|
||||||
@echo "Building static linux binary..."
|
@echo "Building static linux binary..."
|
||||||
@CGO_ENABLED=0 \
|
@CGO_ENABLED=0 \
|
||||||
|
@ -110,8 +128,17 @@ static:
|
||||||
GOARCH=amd64 \
|
GOARCH=amd64 \
|
||||||
go build -ldflags "$(LDFLAGS)" ./cmd/telegraf
|
go build -ldflags "$(LDFLAGS)" ./cmd/telegraf
|
||||||
|
|
||||||
|
.PHONY: plugin-%
|
||||||
plugin-%:
|
plugin-%:
|
||||||
@echo "Starting dev environment for $${$(@)} input plugin..."
|
@echo "Starting dev environment for $${$(@)} input plugin..."
|
||||||
@docker-compose -f plugins/inputs/$${$(@)}/dev/docker-compose.yml up
|
@docker-compose -f plugins/inputs/$${$(@)}/dev/docker-compose.yml up
|
||||||
|
|
||||||
.PHONY: deps telegraf install test test-windows lint vet test-all package clean docker-image fmtcheck uint64 static
|
.PHONY: ci-1.10
|
||||||
|
ci-1.10:
|
||||||
|
docker build -t quay.io/influxdb/telegraf-ci:1.10.3 - < scripts/ci-1.10.docker
|
||||||
|
docker push quay.io/influxdb/telegraf-ci:1.10.3
|
||||||
|
|
||||||
|
.PHONY: ci-1.9
|
||||||
|
ci-1.9:
|
||||||
|
docker build -t quay.io/influxdb/telegraf-ci:1.9.7 - < scripts/ci-1.9.docker
|
||||||
|
docker push quay.io/influxdb/telegraf-ci:1.9.7
|
||||||
|
|
19
README.md
19
README.md
|
@ -42,14 +42,17 @@ Ansible role: https://github.com/rossmcdonald/telegraf
|
||||||
|
|
||||||
Telegraf requires golang version 1.9 or newer, the Makefile requires GNU make.
|
Telegraf requires golang version 1.9 or newer, the Makefile requires GNU make.
|
||||||
|
|
||||||
Dependencies are managed with [dep](https://github.com/golang/dep),
|
1. [Install Go](https://golang.org/doc/install) >=1.9
|
||||||
which is installed by the Makefile if you don't have it already.
|
2. [Install dep](https://golang.github.io/dep/docs/installation.html) ==v0.4.1
|
||||||
|
3. Download Telegraf source:
|
||||||
1. [Install Go](https://golang.org/doc/install)
|
```
|
||||||
2. [Setup your GOPATH](https://golang.org/doc/code.html#GOPATH)
|
go get -d github.com/influxdata/telegraf
|
||||||
3. Run `go get -d github.com/influxdata/telegraf`
|
```
|
||||||
4. Run `cd $GOPATH/src/github.com/influxdata/telegraf`
|
4. Run make from the source directory
|
||||||
5. Run `make`
|
```
|
||||||
|
cd "$HOME/go/src/github.com/influxdata/telegraf"
|
||||||
|
make
|
||||||
|
```
|
||||||
|
|
||||||
### Nightly Builds
|
### Nightly Builds
|
||||||
|
|
||||||
|
|
15
appveyor.yml
15
appveyor.yml
|
@ -12,22 +12,27 @@ platform: x64
|
||||||
|
|
||||||
install:
|
install:
|
||||||
- IF NOT EXIST "C:\Cache" mkdir C:\Cache
|
- IF NOT EXIST "C:\Cache" mkdir C:\Cache
|
||||||
- IF NOT EXIST "C:\Cache\go1.10.1.msi" curl -o "C:\Cache\go1.10.1.msi" https://storage.googleapis.com/golang/go1.10.1.windows-amd64.msi
|
- IF NOT EXIST "C:\Cache\go1.10.3.msi" curl -o "C:\Cache\go1.10.3.msi" https://storage.googleapis.com/golang/go1.10.3.windows-amd64.msi
|
||||||
- IF NOT EXIST "C:\Cache\gnuwin32-bin.zip" curl -o "C:\Cache\gnuwin32-bin.zip" https://dl.influxdata.com/telegraf/ci/make-3.81-bin.zip
|
- IF NOT EXIST "C:\Cache\gnuwin32-bin.zip" curl -o "C:\Cache\gnuwin32-bin.zip" https://dl.influxdata.com/telegraf/ci/make-3.81-bin.zip
|
||||||
- IF NOT EXIST "C:\Cache\gnuwin32-dep.zip" curl -o "C:\Cache\gnuwin32-dep.zip" https://dl.influxdata.com/telegraf/ci/make-3.81-dep.zip
|
- IF NOT EXIST "C:\Cache\gnuwin32-dep.zip" curl -o "C:\Cache\gnuwin32-dep.zip" https://dl.influxdata.com/telegraf/ci/make-3.81-dep.zip
|
||||||
- IF EXIST "C:\Go" rmdir /S /Q C:\Go
|
- IF EXIST "C:\Go" rmdir /S /Q C:\Go
|
||||||
- msiexec.exe /i "C:\Cache\go1.10.1.msi" /quiet
|
- msiexec.exe /i "C:\Cache\go1.10.3.msi" /quiet
|
||||||
- 7z x "C:\Cache\gnuwin32-bin.zip" -oC:\GnuWin32 -y
|
- 7z x "C:\Cache\gnuwin32-bin.zip" -oC:\GnuWin32 -y
|
||||||
- 7z x "C:\Cache\gnuwin32-dep.zip" -oC:\GnuWin32 -y
|
- 7z x "C:\Cache\gnuwin32-dep.zip" -oC:\GnuWin32 -y
|
||||||
|
- go get -d github.com/golang/dep
|
||||||
|
- cd "%GOPATH%\src\github.com\golang\dep"
|
||||||
|
- git checkout -q v0.4.1
|
||||||
|
- go install -ldflags="-X main.version=v0.4.1" ./cmd/dep
|
||||||
|
- cd "%GOPATH%\src\github.com\influxdata\telegraf"
|
||||||
|
- git config --system core.longpaths true
|
||||||
- go version
|
- go version
|
||||||
- go env
|
- go env
|
||||||
- git config --system core.longpaths true
|
|
||||||
|
|
||||||
build_script:
|
build_script:
|
||||||
- cmd: C:\GnuWin32\bin\make deps
|
- cmd: C:\GnuWin32\bin\make
|
||||||
- cmd: C:\GnuWin32\bin\make telegraf
|
|
||||||
|
|
||||||
test_script:
|
test_script:
|
||||||
|
- cmd: C:\GnuWin32\bin\make check
|
||||||
- cmd: C:\GnuWin32\bin\make test-windows
|
- cmd: C:\GnuWin32\bin\make test-windows
|
||||||
|
|
||||||
artifacts:
|
artifacts:
|
||||||
|
|
|
@ -5,12 +5,13 @@ package win_services
|
||||||
import (
|
import (
|
||||||
"errors"
|
"errors"
|
||||||
"fmt"
|
"fmt"
|
||||||
|
"testing"
|
||||||
|
|
||||||
"github.com/influxdata/telegraf/testutil"
|
"github.com/influxdata/telegraf/testutil"
|
||||||
"github.com/stretchr/testify/assert"
|
"github.com/stretchr/testify/assert"
|
||||||
"github.com/stretchr/testify/require"
|
"github.com/stretchr/testify/require"
|
||||||
"golang.org/x/sys/windows/svc"
|
"golang.org/x/sys/windows/svc"
|
||||||
"golang.org/x/sys/windows/svc/mgr"
|
"golang.org/x/sys/windows/svc/mgr"
|
||||||
"testing"
|
|
||||||
)
|
)
|
||||||
|
|
||||||
//testData is DD wrapper for unit testing of WinServices
|
//testData is DD wrapper for unit testing of WinServices
|
||||||
|
@ -84,14 +85,31 @@ func (m *FakeWinSvc) Config() (mgr.Config, error) {
|
||||||
if m.testData.serviceConfigError != nil {
|
if m.testData.serviceConfigError != nil {
|
||||||
return mgr.Config{}, m.testData.serviceConfigError
|
return mgr.Config{}, m.testData.serviceConfigError
|
||||||
} else {
|
} else {
|
||||||
return mgr.Config{0, uint32(m.testData.startUpMode), 0, "", "", 0, nil, m.testData.serviceName, m.testData.displayName, "", ""}, nil
|
return mgr.Config{
|
||||||
|
ServiceType: 0,
|
||||||
|
StartType: uint32(m.testData.startUpMode),
|
||||||
|
ErrorControl: 0,
|
||||||
|
BinaryPathName: "",
|
||||||
|
LoadOrderGroup: "",
|
||||||
|
TagId: 0,
|
||||||
|
Dependencies: nil,
|
||||||
|
ServiceStartName: m.testData.serviceName,
|
||||||
|
DisplayName: m.testData.displayName,
|
||||||
|
Password: "",
|
||||||
|
Description: "",
|
||||||
|
}, nil
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
func (m *FakeWinSvc) Query() (svc.Status, error) {
|
func (m *FakeWinSvc) Query() (svc.Status, error) {
|
||||||
if m.testData.serviceQueryError != nil {
|
if m.testData.serviceQueryError != nil {
|
||||||
return svc.Status{}, m.testData.serviceQueryError
|
return svc.Status{}, m.testData.serviceQueryError
|
||||||
} else {
|
} else {
|
||||||
return svc.Status{svc.State(m.testData.state), 0, 0, 0}, nil
|
return svc.Status{
|
||||||
|
State: svc.State(m.testData.state),
|
||||||
|
Accepts: 0,
|
||||||
|
CheckPoint: 0,
|
||||||
|
WaitHint: 0,
|
||||||
|
}, nil
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -155,12 +155,8 @@ def go_get(branch, update=False, no_uncommitted=False):
|
||||||
if local_changes() and no_uncommitted:
|
if local_changes() and no_uncommitted:
|
||||||
logging.error("There are uncommitted changes in the current directory.")
|
logging.error("There are uncommitted changes in the current directory.")
|
||||||
return False
|
return False
|
||||||
if not check_path_for("dep"):
|
|
||||||
logging.info("Downloading `dep`...")
|
|
||||||
get_command = "go get -u github.com/golang/dep/cmd/dep"
|
|
||||||
run(get_command)
|
|
||||||
logging.info("Retrieving dependencies with `dep`...")
|
logging.info("Retrieving dependencies with `dep`...")
|
||||||
run("{}/bin/dep ensure -v".format(os.environ.get("GOPATH",
|
run("{}/bin/dep ensure -v -vendor-only".format(os.environ.get("GOPATH",
|
||||||
os.path.expanduser("~/go"))))
|
os.path.expanduser("~/go"))))
|
||||||
return True
|
return True
|
||||||
|
|
||||||
|
|
|
@ -0,0 +1,28 @@
|
||||||
|
FROM golang:1.10.3
|
||||||
|
|
||||||
|
RUN chmod -R 755 "$GOPATH"
|
||||||
|
|
||||||
|
RUN DEBIAN_FRONTEND=noninteractive \
|
||||||
|
apt update && apt install -y --no-install-recommends \
|
||||||
|
autoconf \
|
||||||
|
git \
|
||||||
|
libtool \
|
||||||
|
locales \
|
||||||
|
make \
|
||||||
|
python-boto \
|
||||||
|
rpm \
|
||||||
|
ruby \
|
||||||
|
ruby-dev \
|
||||||
|
zip && \
|
||||||
|
rm -rf /var/lib/apt/lists/*
|
||||||
|
|
||||||
|
RUN ln -sf /usr/share/zoneinfo/Etc/UTC /etc/localtime
|
||||||
|
RUN locale-gen C.UTF-8 || true
|
||||||
|
ENV LANG=C.UTF-8
|
||||||
|
|
||||||
|
RUN gem install fpm
|
||||||
|
|
||||||
|
RUN go get -d github.com/golang/dep && \
|
||||||
|
cd src/github.com/golang/dep && \
|
||||||
|
git checkout -q v0.4.1 && \
|
||||||
|
go install -ldflags="-X main.version=v0.4.1" ./cmd/dep
|
|
@ -0,0 +1,28 @@
|
||||||
|
FROM golang:1.9.7
|
||||||
|
|
||||||
|
RUN chmod -R 755 "$GOPATH"
|
||||||
|
|
||||||
|
RUN DEBIAN_FRONTEND=noninteractive \
|
||||||
|
apt update && apt install -y --no-install-recommends \
|
||||||
|
autoconf \
|
||||||
|
git \
|
||||||
|
libtool \
|
||||||
|
locales \
|
||||||
|
make \
|
||||||
|
python-boto \
|
||||||
|
rpm \
|
||||||
|
ruby \
|
||||||
|
ruby-dev \
|
||||||
|
zip && \
|
||||||
|
rm -rf /var/lib/apt/lists/*
|
||||||
|
|
||||||
|
RUN ln -sf /usr/share/zoneinfo/Etc/UTC /etc/localtime
|
||||||
|
RUN locale-gen C.UTF-8 || true
|
||||||
|
ENV LANG=C.UTF-8
|
||||||
|
|
||||||
|
RUN gem install fpm
|
||||||
|
|
||||||
|
RUN go get -d github.com/golang/dep && \
|
||||||
|
cd src/github.com/golang/dep && \
|
||||||
|
git checkout -q v0.4.1 && \
|
||||||
|
go install -ldflags="-X main.version=v0.4.1" ./cmd/dep
|
|
@ -1,35 +0,0 @@
|
||||||
#!/bin/bash
|
|
||||||
|
|
||||||
ARTIFACT_DIR='artifacts'
|
|
||||||
run()
|
|
||||||
{
|
|
||||||
"$@"
|
|
||||||
ret=$?
|
|
||||||
if [[ $ret -eq 0 ]]
|
|
||||||
then
|
|
||||||
echo "[INFO] [ $@ ]"
|
|
||||||
else
|
|
||||||
echo "[ERROR] [ $@ ] returned $ret"
|
|
||||||
exit $ret
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
||||||
run make
|
|
||||||
run mkdir -p ${ARTIFACT_DIR}
|
|
||||||
run gzip telegraf -c > "$ARTIFACT_DIR/telegraf.gz"
|
|
||||||
|
|
||||||
# RPM is used to build packages for Enterprise Linux hosts.
|
|
||||||
# Boto is used to upload packages to S3.
|
|
||||||
run sudo apt-get update
|
|
||||||
run sudo apt-get install -y rpm python-boto ruby ruby-dev autoconf libtool
|
|
||||||
run sudo gem install fpm
|
|
||||||
|
|
||||||
if git describe --exact-match HEAD 2>&1 >/dev/null; then
|
|
||||||
run ./scripts/build.py --release --package --platform=all --arch=all --upload --bucket=dl.influxdata.com/telegraf/releases
|
|
||||||
elif [ "${CIRCLE_STAGE}" = nightly ]; then
|
|
||||||
run ./scripts/build.py --nightly --package --platform=all --arch=all --upload --bucket=dl.influxdata.com/telegraf/nightlies
|
|
||||||
else
|
|
||||||
run ./scripts/build.py --package --platform=all --arch=all
|
|
||||||
fi
|
|
||||||
|
|
||||||
run mv build $ARTIFACT_DIR
|
|
Loading…
Reference in New Issue