chore: "makefile help" output, but still support building based on arch for CI (#9579)
This commit is contained in:
parent
b93f20068a
commit
82bdbce498
|
|
@ -123,11 +123,11 @@ commands:
|
|||
- when:
|
||||
condition: << parameters.release >>
|
||||
steps:
|
||||
- run: 'mips=1 mipsel=1 arm64=1 amd64=1 static=1 armel=1 armhf=1 s390x=1 ppc641e=1 i386=1 windows=1 darwin=1 make package'
|
||||
- run: 'make package'
|
||||
- when:
|
||||
condition: << parameters.nightly >>
|
||||
steps:
|
||||
- run: 'mips=1 mipsel=1 arm64=1 amd64=1 static=1 armel=1 armhf=1 s390x=1 ppc641e=1 i386=1 windows=1 darwin=1 NIGHTLY=1 make package'
|
||||
- run: 'make package'
|
||||
- run: 'make upload-nightly'
|
||||
- unless:
|
||||
condition:
|
||||
|
|
@ -135,7 +135,7 @@ commands:
|
|||
- << parameters.nightly >>
|
||||
- << parameters.release >>
|
||||
steps:
|
||||
- run: '<< parameters.type >>=1 make package'
|
||||
- run: 'make package include_packages="$(make << parameters.type >>)"'
|
||||
- store_artifacts:
|
||||
path: './build/dist'
|
||||
destination: 'build/dist'
|
||||
|
|
@ -215,11 +215,11 @@ jobs:
|
|||
steps:
|
||||
- package-build:
|
||||
type: i386
|
||||
ppc641e-package:
|
||||
executor: go-1_17
|
||||
ppc64le-package:
|
||||
executor: go-1_16
|
||||
steps:
|
||||
- package-build:
|
||||
type: ppc641e
|
||||
type: ppc64le
|
||||
s390x-package:
|
||||
executor: go-1_17
|
||||
steps:
|
||||
|
|
@ -391,7 +391,7 @@ workflows:
|
|||
- 'i386-package':
|
||||
requires:
|
||||
- 'test-awaiter'
|
||||
- 'ppc641e-package':
|
||||
- 'ppc64le-package':
|
||||
requires:
|
||||
- 'test-awaiter'
|
||||
- 's390x-package':
|
||||
|
|
@ -421,7 +421,7 @@ workflows:
|
|||
- 'share-artifacts':
|
||||
requires:
|
||||
- 'i386-package'
|
||||
- 'ppc641e-package'
|
||||
- 'ppc64le-package'
|
||||
- 's390x-package'
|
||||
- 'armel-package'
|
||||
- 'amd64-package'
|
||||
|
|
|
|||
351
Makefile
351
Makefile
|
|
@ -80,9 +80,18 @@ help:
|
|||
@echo ' lint-install - install linter'
|
||||
@echo ' check-deps - check docs/LICENSE_OF_DEPENDENCIES.md'
|
||||
@echo ' clean - delete build artifacts'
|
||||
@echo ' package - build all supported packages, override include_packages to only build a subset'
|
||||
@echo ' e.g.: make package include_packages="amd64.deb"'
|
||||
@echo ''
|
||||
@echo 'Package Targets:'
|
||||
@$(foreach dist,$(dists),echo " $(dist)";)
|
||||
@echo 'Possible values for include_packages variable'
|
||||
@$(foreach package,$(include_packages),echo " $(package)";)
|
||||
@echo ''
|
||||
@echo 'Resulting package name format (where arch will be the arch of the package):'
|
||||
@echo ' telegraf_$(deb_version)_arch.deb'
|
||||
@echo ' telegraf-$(rpm_version).arch.rpm'
|
||||
@echo ' telegraf-$(tar_version)_arch.tar.gz'
|
||||
@echo ' telegraf-$(tar_version)_arch.zip'
|
||||
|
||||
|
||||
.PHONY: deps
|
||||
deps:
|
||||
|
|
@ -224,164 +233,118 @@ $(buildbin):
|
|||
@mkdir -pv $(dir $@)
|
||||
go build -o $(dir $@) -ldflags "$(LDFLAGS)" ./cmd/telegraf
|
||||
|
||||
ifdef mips
|
||||
debs += telegraf_$(deb_version)_mips.deb
|
||||
tars += telegraf-$(tar_version)_linux_mips.tar.gz
|
||||
endif
|
||||
# Define packages Telegraf supports, organized by architecture with a rule to echo the list to limit include_packages
|
||||
# e.g. make package include_packages="$(make amd64)"
|
||||
mips += linux_mips.tar.gz mips.deb
|
||||
.PHONY: mips
|
||||
mips:
|
||||
@ echo $(mips)
|
||||
mipsel += mipsel.deb linux_mipsel.tar.gz
|
||||
.PHONY: mipsel
|
||||
mipsel:
|
||||
@ echo $(mipsel)
|
||||
arm64 += linux_arm64.tar.gz arm64.deb aarch64.rpm
|
||||
.PHONY: arm64
|
||||
arm64:
|
||||
@ echo $(arm64)
|
||||
amd64 += freebsd_amd64.tar.gz linux_amd64.tar.gz amd64.deb x86_64.rpm
|
||||
.PHONY: amd64
|
||||
amd64:
|
||||
@ echo $(amd64)
|
||||
static += static_linux_amd64.tar.gz
|
||||
.PHONY: static
|
||||
static:
|
||||
@ echo $(static)
|
||||
armel += linux_armel.tar.gz armel.rpm armel.deb
|
||||
.PHONY: armel
|
||||
armel:
|
||||
@ echo $(armel)
|
||||
armhf += linux_armhf.tar.gz freebsd_armv7.tar.gz armhf.deb armv6hl.rpm
|
||||
.PHONY: armhf
|
||||
armhf:
|
||||
@ echo $(armhf)
|
||||
s390x += linux_s390x.tar.gz s390x.deb s390x.rpm
|
||||
.PHONY: s390x
|
||||
s390x:
|
||||
@ echo $(s390x)
|
||||
ppc64le += linux_ppc64le.tar.gz ppc64le.rpm ppc64el.deb
|
||||
.PHONY: ppc64le
|
||||
ppc64le:
|
||||
@ echo $(ppc64le)
|
||||
i386 += freebsd_i386.tar.gz i386.deb linux_i386.tar.gzi386.rpm
|
||||
.PHONY: i386
|
||||
i386:
|
||||
@ echo $(i386)
|
||||
windows += windows_i386.zip windows_amd64.zip
|
||||
.PHONY: windows
|
||||
windows:
|
||||
@ echo $(windows)
|
||||
darwin += darwin_amd64.tar.gz
|
||||
.PHONY: darwin
|
||||
darwin:
|
||||
@ echo $(darwin)
|
||||
|
||||
ifdef mipsel
|
||||
debs += telegraf_$(deb_version)_mipsel.deb
|
||||
tars += telegraf-$(tar_version)_linux_mipsel.tar.gz
|
||||
endif
|
||||
|
||||
ifdef arm64
|
||||
tars += telegraf-$(tar_version)_linux_arm64.tar.gz
|
||||
debs += telegraf_$(deb_version)_arm64.deb
|
||||
rpms += telegraf-$(rpm_version).aarch64.rpm
|
||||
endif
|
||||
|
||||
ifdef amd64
|
||||
tars += telegraf-$(tar_version)_freebsd_amd64.tar.gz
|
||||
tars += telegraf-$(tar_version)_linux_amd64.tar.gz
|
||||
debs += telegraf_$(deb_version)_amd64.deb
|
||||
rpms += telegraf-$(rpm_version).x86_64.rpm
|
||||
endif
|
||||
|
||||
ifdef static
|
||||
tars += telegraf-$(tar_version)_static_linux_amd64.tar.gz
|
||||
endif
|
||||
|
||||
ifdef armel
|
||||
tars += telegraf-$(tar_version)_linux_armel.tar.gz
|
||||
rpms += telegraf-$(rpm_version).armel.rpm
|
||||
debs += telegraf_$(deb_version)_armel.deb
|
||||
endif
|
||||
|
||||
ifdef armhf
|
||||
tars += telegraf-$(tar_version)_linux_armhf.tar.gz
|
||||
tars += telegraf-$(tar_version)_freebsd_armv7.tar.gz
|
||||
debs += telegraf_$(deb_version)_armhf.deb
|
||||
rpms += telegraf-$(rpm_version).armv6hl.rpm
|
||||
endif
|
||||
|
||||
ifdef s390x
|
||||
tars += telegraf-$(tar_version)_linux_s390x.tar.gz
|
||||
debs += telegraf_$(deb_version)_s390x.deb
|
||||
rpms += telegraf-$(rpm_version).s390x.rpm
|
||||
endif
|
||||
|
||||
ifdef ppc641e
|
||||
tars += telegraf-$(tar_version)_linux_ppc64le.tar.gz
|
||||
rpms += telegraf-$(rpm_version).ppc64le.rpm
|
||||
debs += telegraf_$(deb_version)_ppc64el.deb
|
||||
endif
|
||||
|
||||
ifdef i386
|
||||
tars += telegraf-$(tar_version)_freebsd_i386.tar.gz
|
||||
debs += telegraf_$(deb_version)_i386.deb
|
||||
tars += telegraf-$(tar_version)_linux_i386.tar.gz
|
||||
rpms += telegraf-$(rpm_version).i386.rpm
|
||||
endif
|
||||
|
||||
ifdef windows
|
||||
zips += telegraf-$(tar_version)_windows_i386.zip
|
||||
zips += telegraf-$(tar_version)_windows_amd64.zip
|
||||
endif
|
||||
|
||||
ifdef darwin
|
||||
tars += telegraf-$(tar_version)_darwin_amd64.tar.gz
|
||||
endif
|
||||
|
||||
dists := $(debs) $(rpms) $(tars) $(zips)
|
||||
include_packages := $(mips) $(mipsel) $(arm64) $(amd64) $(static) $(armel) $(armhf) $(s390x) $(ppc64le) $(i386) $(windows) $(darwin)
|
||||
|
||||
.PHONY: package
|
||||
package: $(dists)
|
||||
package: $(include_packages)
|
||||
|
||||
rpm_amd64 := amd64
|
||||
rpm_386 := i386
|
||||
rpm_s390x := s390x
|
||||
rpm_ppc64le := ppc64le
|
||||
rpm_arm5 := armel
|
||||
rpm_arm6 := armv6hl
|
||||
rpm_arm647 := aarch64
|
||||
rpm_arch = $(rpm_$(GOARCH)$(GOARM))
|
||||
|
||||
.PHONY: $(rpms)
|
||||
$(rpms):
|
||||
.PHONY: $(include_packages)
|
||||
$(include_packages):
|
||||
@$(MAKE) install
|
||||
@mkdir -p $(pkgdir)
|
||||
fpm --force \
|
||||
--log info \
|
||||
--architecture $(rpm_arch) \
|
||||
--input-type dir \
|
||||
--output-type rpm \
|
||||
--vendor InfluxData \
|
||||
--url https://github.com/influxdata/telegraf \
|
||||
--license MIT \
|
||||
--maintainer support@influxdb.com \
|
||||
--config-files /etc/telegraf/telegraf.conf \
|
||||
--config-files /etc/logrotate.d/telegraf \
|
||||
--after-install scripts/rpm/post-install.sh \
|
||||
--before-install scripts/rpm/pre-install.sh \
|
||||
--after-remove scripts/rpm/post-remove.sh \
|
||||
--description "Plugin-driven server agent for reporting metrics into InfluxDB." \
|
||||
--depends coreutils \
|
||||
--depends shadow-utils \
|
||||
--rpm-posttrans scripts/rpm/post-install.sh \
|
||||
--name telegraf \
|
||||
--version $(version) \
|
||||
--iteration $(rpm_iteration) \
|
||||
--chdir $(DESTDIR) \
|
||||
--package $(pkgdir)/$@
|
||||
|
||||
deb_amd64 := amd64
|
||||
deb_386 := i386
|
||||
deb_s390x := s390x
|
||||
deb_ppc64le := ppc64el
|
||||
deb_arm5 := armel
|
||||
deb_arm6 := armhf
|
||||
deb_arm647 := arm64
|
||||
deb_mips := mips
|
||||
deb_mipsle := mipsel
|
||||
deb_arch = $(deb_$(GOARCH)$(GOARM))
|
||||
|
||||
.PHONY: $(debs)
|
||||
$(debs):
|
||||
@$(MAKE) install
|
||||
@mkdir -pv $(pkgdir)
|
||||
fpm --force \
|
||||
--log info \
|
||||
--architecture $(deb_arch) \
|
||||
--input-type dir \
|
||||
--output-type deb \
|
||||
--vendor InfluxData \
|
||||
--url https://github.com/influxdata/telegraf \
|
||||
--license MIT \
|
||||
--maintainer support@influxdb.com \
|
||||
--config-files /etc/telegraf/telegraf.conf.sample \
|
||||
--config-files /etc/logrotate.d/telegraf \
|
||||
--after-install scripts/deb/post-install.sh \
|
||||
--before-install scripts/deb/pre-install.sh \
|
||||
--after-remove scripts/deb/post-remove.sh \
|
||||
--before-remove scripts/deb/pre-remove.sh \
|
||||
--description "Plugin-driven server agent for reporting metrics into InfluxDB." \
|
||||
--name telegraf \
|
||||
--version $(version) \
|
||||
--iteration $(deb_iteration) \
|
||||
--chdir $(DESTDIR) \
|
||||
--package $(pkgdir)/$@
|
||||
|
||||
.PHONY: $(zips)
|
||||
$(zips):
|
||||
@$(MAKE) install
|
||||
@mkdir -p $(pkgdir)
|
||||
(cd $(dir $(DESTDIR)) && zip -r - ./*) > $(pkgdir)/$@
|
||||
|
||||
.PHONY: $(tars)
|
||||
$(tars):
|
||||
@$(MAKE) install
|
||||
@mkdir -p $(pkgdir)
|
||||
tar --owner 0 --group 0 -czvf $(pkgdir)/$@ -C $(dir $(DESTDIR)) .
|
||||
@if [ "$(suffix $@)" = ".rpm" ]; then \
|
||||
fpm --force \
|
||||
--log info \
|
||||
--architecture $(basename $@) \
|
||||
--input-type dir \
|
||||
--output-type rpm \
|
||||
--vendor InfluxData \
|
||||
--url https://github.com/influxdata/telegraf \
|
||||
--license MIT \
|
||||
--maintainer support@influxdb.com \
|
||||
--config-files /etc/telegraf/telegraf.conf \
|
||||
--config-files /etc/logrotate.d/telegraf \
|
||||
--after-install scripts/rpm/post-install.sh \
|
||||
--before-install scripts/rpm/pre-install.sh \
|
||||
--after-remove scripts/rpm/post-remove.sh \
|
||||
--description "Plugin-driven server agent for reporting metrics into InfluxDB." \
|
||||
--depends coreutils \
|
||||
--depends shadow-utils \
|
||||
--rpm-posttrans scripts/rpm/post-install.sh \
|
||||
--name telegraf \
|
||||
--version $(version) \
|
||||
--iteration $(rpm_iteration) \
|
||||
--chdir $(DESTDIR) \
|
||||
--package $(pkgdir)/telegraf-$(rpm_version).$@ ;\
|
||||
elif [ "$(suffix $@)" = ".deb" ]; then \
|
||||
fpm --force \
|
||||
--log info \
|
||||
--architecture $(basename $@) \
|
||||
--input-type dir \
|
||||
--output-type deb \
|
||||
--vendor InfluxData \
|
||||
--url https://github.com/influxdata/telegraf \
|
||||
--license MIT \
|
||||
--maintainer support@influxdb.com \
|
||||
--config-files /etc/telegraf/telegraf.conf.sample \
|
||||
--config-files /etc/logrotate.d/telegraf \
|
||||
--after-install scripts/deb/post-install.sh \
|
||||
--before-install scripts/deb/pre-install.sh \
|
||||
--after-remove scripts/deb/post-remove.sh \
|
||||
--before-remove scripts/deb/pre-remove.sh \
|
||||
--description "Plugin-driven server agent for reporting metrics into InfluxDB." \
|
||||
--name telegraf \
|
||||
--version $(version) \
|
||||
--iteration $(deb_iteration) \
|
||||
--chdir $(DESTDIR) \
|
||||
--package $(pkgdir)/telegraf_$(deb_version)_$@ ;\
|
||||
elif [ "$(suffix $@)" = ".zip" ]; then \
|
||||
(cd $(dir $(DESTDIR)) && zip -r - ./*) > $(pkgdir)/telegraf-$(tar_version)_$@ ;\
|
||||
elif [ "$(suffix $@)" = ".gz" ]; then \
|
||||
tar --owner 0 --group 0 -czvf $(pkgdir)/telegraf-$(tar_version)_$@ -C $(dir $(DESTDIR)) . ;\
|
||||
fi
|
||||
|
||||
.PHONY: upload-nightly
|
||||
upload-nightly:
|
||||
|
|
@ -393,63 +356,63 @@ upload-nightly:
|
|||
--include "*.zip" \
|
||||
--acl public-read
|
||||
|
||||
%amd64.deb %x86_64.rpm %linux_amd64.tar.gz: export GOOS := linux
|
||||
%amd64.deb %x86_64.rpm %linux_amd64.tar.gz: export GOARCH := amd64
|
||||
amd64.deb x86_64.rpm linux_amd64.tar.gz: export GOOS := linux
|
||||
amd64.deb x86_64.rpm linux_amd64.tar.gz: export GOARCH := amd64
|
||||
|
||||
%static_linux_amd64.tar.gz: export cgo := -nocgo
|
||||
%static_linux_amd64.tar.gz: export CGO_ENABLED := 0
|
||||
static_linux_amd64.tar.gz: export cgo := -nocgo
|
||||
static_linux_amd64.tar.gz: export CGO_ENABLED := 0
|
||||
|
||||
%i386.deb %i386.rpm %linux_i386.tar.gz: export GOOS := linux
|
||||
%i386.deb %i386.rpm %linux_i386.tar.gz: export GOARCH := 386
|
||||
i386.deb i386.rpm linux_i386.tar.gz: export GOOS := linux
|
||||
i386.deb i386.rpm linux_i386.tar.gz: export GOARCH := 386
|
||||
|
||||
%armel.deb %armel.rpm %linux_armel.tar.gz: export GOOS := linux
|
||||
%armel.deb %armel.rpm %linux_armel.tar.gz: export GOARCH := arm
|
||||
%armel.deb %armel.rpm %linux_armel.tar.gz: export GOARM := 5
|
||||
armel.deb armel.rpm linux_armel.tar.gz: export GOOS := linux
|
||||
armel.deb armel.rpm linux_armel.tar.gz: export GOARCH := arm
|
||||
armel.deb armel.rpm linux_armel.tar.gz: export GOARM := 5
|
||||
|
||||
%armhf.deb %armv6hl.rpm %linux_armhf.tar.gz: export GOOS := linux
|
||||
%armhf.deb %armv6hl.rpm %linux_armhf.tar.gz: export GOARCH := arm
|
||||
%armhf.deb %armv6hl.rpm %linux_armhf.tar.gz: export GOARM := 6
|
||||
armhf.deb armv6hl.rpm linux_armhf.tar.gz: export GOOS := linux
|
||||
armhf.deb armv6hl.rpm linux_armhf.tar.gz: export GOARCH := arm
|
||||
armhf.deb armv6hl.rpm linux_armhf.tar.gz: export GOARM := 6
|
||||
|
||||
%arm64.deb %aarch64.rpm %linux_arm64.tar.gz: export GOOS := linux
|
||||
%arm64.deb %aarch64.rpm %linux_arm64.tar.gz: export GOARCH := arm64
|
||||
%arm64.deb %aarch64.rpm %linux_arm64.tar.gz: export GOARM := 7
|
||||
arm64.deb aarch64.rpm linux_arm64.tar.gz: export GOOS := linux
|
||||
arm64.deb aarch64.rpm linux_arm64.tar.gz: export GOARCH := arm64
|
||||
arm64.deb aarch64.rpm linux_arm64.tar.gz: export GOARM := 7
|
||||
|
||||
%mips.deb %linux_mips.tar.gz: export GOOS := linux
|
||||
%mips.deb %linux_mips.tar.gz: export GOARCH := mips
|
||||
mips.deb linux_mips.tar.gz: export GOOS := linux
|
||||
mips.deb linux_mips.tar.gz: export GOARCH := mips
|
||||
|
||||
%mipsel.deb %linux_mipsel.tar.gz: export GOOS := linux
|
||||
%mipsel.deb %linux_mipsel.tar.gz: export GOARCH := mipsle
|
||||
mipsel.deb linux_mipsel.tar.gz: export GOOS := linux
|
||||
mipsel.deb linux_mipsel.tar.gz: export GOARCH := mipsle
|
||||
|
||||
%s390x.deb %s390x.rpm %linux_s390x.tar.gz: export GOOS := linux
|
||||
%s390x.deb %s390x.rpm %linux_s390x.tar.gz: export GOARCH := s390x
|
||||
s390x.deb s390x.rpm linux_s390x.tar.gz: export GOOS := linux
|
||||
s390x.deb s390x.rpm linux_s390x.tar.gz: export GOARCH := s390x
|
||||
|
||||
%ppc64el.deb %ppc64le.rpm %linux_ppc64le.tar.gz: export GOOS := linux
|
||||
%ppc64el.deb %ppc64le.rpm %linux_ppc64le.tar.gz: export GOARCH := ppc64le
|
||||
ppc64el.deb ppc64le.rpm linux_ppc64le.tar.gz: export GOOS := linux
|
||||
ppc64el.deb ppc64le.rpm linux_ppc64le.tar.gz: export GOARCH := ppc64le
|
||||
|
||||
%freebsd_amd64.tar.gz: export GOOS := freebsd
|
||||
%freebsd_amd64.tar.gz: export GOARCH := amd64
|
||||
freebsd_amd64.tar.gz: export GOOS := freebsd
|
||||
freebsd_amd64.tar.gz: export GOARCH := amd64
|
||||
|
||||
%freebsd_i386.tar.gz: export GOOS := freebsd
|
||||
%freebsd_i386.tar.gz: export GOARCH := 386
|
||||
freebsd_i386.tar.gz: export GOOS := freebsd
|
||||
freebsd_i386.tar.gz: export GOARCH := 386
|
||||
|
||||
%freebsd_armv7.tar.gz: export GOOS := freebsd
|
||||
%freebsd_armv7.tar.gz: export GOARCH := arm
|
||||
%freebsd_armv7.tar.gz: export GOARM := 7
|
||||
freebsd_armv7.tar.gz: export GOOS := freebsd
|
||||
freebsd_armv7.tar.gz: export GOARCH := arm
|
||||
freebsd_armv7.tar.gz: export GOARM := 7
|
||||
|
||||
%windows_amd64.zip: export GOOS := windows
|
||||
%windows_amd64.zip: export GOARCH := amd64
|
||||
windows_amd64.zip: export GOOS := windows
|
||||
windows_amd64.zip: export GOARCH := amd64
|
||||
|
||||
%darwin_amd64.tar.gz: export GOOS := darwin
|
||||
%darwin_amd64.tar.gz: export GOARCH := amd64
|
||||
darwin_amd64.tar.gz: export GOOS := darwin
|
||||
darwin_amd64.tar.gz: export GOARCH := amd64
|
||||
|
||||
%windows_i386.zip: export GOOS := windows
|
||||
%windows_i386.zip: export GOARCH := 386
|
||||
windows_i386.zip: export GOOS := windows
|
||||
windows_i386.zip: export GOARCH := 386
|
||||
|
||||
%windows_i386.zip %windows_amd64.zip: export prefix =
|
||||
%windows_i386.zip %windows_amd64.zip: export bindir = $(prefix)
|
||||
%windows_i386.zip %windows_amd64.zip: export sysconfdir = $(prefix)
|
||||
%windows_i386.zip %windows_amd64.zip: export localstatedir = $(prefix)
|
||||
%windows_i386.zip %windows_amd64.zip: export EXEEXT := .exe
|
||||
windows_i386.zip windows_amd64.zip: export prefix =
|
||||
windows_i386.zip windows_amd64.zip: export bindir = $(prefix)
|
||||
windows_i386.zip windows_amd64.zip: export sysconfdir = $(prefix)
|
||||
windows_i386.zip windows_amd64.zip: export localstatedir = $(prefix)
|
||||
windows_i386.zip windows_amd64.zip: export EXEEXT := .exe
|
||||
|
||||
%.deb: export pkg := deb
|
||||
%.deb: export prefix := /usr
|
||||
|
|
|
|||
|
|
@ -1,5 +1,9 @@
|
|||
# Packaging
|
||||
|
||||
Building the packages for Telegraf is automated using [Make](https://en.wikipedia.org/wiki/Make_(software)). Just running `make` will build a Telegraf binary for the operating system and architecture you are using (if it is supported). If you need to build a different package then you can run `make package` which will build all the supported packages. You will most likely only want a subset, you can define a subset of packages to be built by overriding the `include_packages` variable like so `make package include_packages="amd64.deb"`. You can also build all packages for a specific architecture like so `make package include_packages="$(make amd64)"`.
|
||||
|
||||
The packaging steps require certain tools to be setup before hand to work. These dependencies are listed in the ci-1.16.docker file which you can find in the scripts directory. Therefore it is recommended to use Docker to build the artifacts, see more details below.
|
||||
|
||||
## Package using Docker
|
||||
|
||||
This packaging method uses the CI images, and is very similar to how the
|
||||
|
|
@ -18,20 +22,15 @@ docker run -ti quay.io/influxdb/telegraf-ci:1.9.7 /bin/bash
|
|||
```
|
||||
|
||||
From within the container:
|
||||
```
|
||||
go get -d github.com/influxdata/telegraf
|
||||
cd /go/src/github.com/influxdata/telegraf
|
||||
|
||||
# Use tag of Telegraf version you would like to build
|
||||
git checkout release-1.10
|
||||
git reset --hard 1.10.2
|
||||
make deps
|
||||
|
||||
# To build packages run:
|
||||
|
||||
```
|
||||
make package amd64=1
|
||||
```
|
||||
1. `go get -d github.com/influxdata/telegraf`
|
||||
2. `cd /go/src/github.com/influxdata/telegraf`
|
||||
3. `git checkout release-1.10`
|
||||
* Replace tag `release-1.10` with the version of Telegraf you would like to build
|
||||
4. `git reset --hard 1.10.2`
|
||||
5. `make deps`
|
||||
6. `make package include_packages="amd64.deb"`
|
||||
* Change `include_packages` to change what package you want, run `make help` to see possible values
|
||||
|
||||
From the host system, copy the build artifacts out of the container:
|
||||
```
|
||||
|
|
|
|||
Loading…
Reference in New Issue