Browse Source

Use CircleCI parallelism

This commit uses the CircleCI parallelism features, combined with the
last changes in promu that enables this.

Now all the pull requests will be built with all the platforms again, in
less than 20 minutes.

A side effect is that we now build Prometheus for 7 more os/arch combos:
darwin-arm64 / illumos-amd64 / linux-mips / linux-mipsle /
freebsd-arm64 / netbsd-arm64 / openbsd-arm64

Signed-off-by: Julien Pivotto <roidelapluie@inuits.eu>
pull/8628/head
Julien Pivotto 4 years ago
parent
commit
c1f203a1b8
  1. 37
      .circleci/config.yml
  2. 30
      .promu.yml
  3. 2
      Makefile.common

37
.circleci/config.yml

@ -2,7 +2,7 @@
version: 2.1
orbs:
prometheus: prometheus/prometheus@0.10.0
prometheus: prometheus/prometheus@0.11.0
go: circleci/go@0.2.0
win: circleci/windows@2.3.0
@ -132,44 +132,17 @@ workflows:
filters:
tags:
only: /.*/
# Build pipeline for PRs.
- prometheus/build_platform:
name: build
filters:
tags:
only: /.*/
ignore: /^v[0-9]+(\.[0-9]+){2}(-.+|[^-.]*)$/
matrix:
parameters:
platform:
# - aix # Currently doesn't build.
- darwin
- dragonfly
- freebsd
- illumos
- linux
- netbsd
- openbsd
- windows
# Build pipeline for main releases.
- prometheus/build:
name: build-main
filters:
branches:
only: main
# Build pipeline for versioned releases.
- prometheus/build:
name: build-release
name: build
parallelism: 12
filters:
tags:
only: /^v[0-9]+(\.[0-9]+){2}(-.+|[^-.]*)$/
branches:
ignore: /.*/
- prometheus/publish_main:
context: org-context
requires:
- test
- build-main
- build
filters:
branches:
only: main
@ -178,7 +151,7 @@ workflows:
context: org-context
requires:
- test
- build-release
- build
filters:
tags:
only: /^v[0-9]+(\.[0-9]+){2}(-.+|[^-.]*)$/

30
.promu.yml

@ -27,25 +27,11 @@ tarball:
- npm_licenses.tar.bz2
crossbuild:
platforms:
- linux/amd64
- linux/386
- darwin/amd64
- windows/amd64
- windows/386
- freebsd/amd64
- freebsd/386
- openbsd/amd64
- openbsd/386
- netbsd/amd64
- netbsd/386
- dragonfly/amd64
- linux/arm
- linux/arm64
- freebsd/arm
- openbsd/arm
- linux/mips64
- linux/mips64le
- netbsd/arm
- linux/ppc64
- linux/ppc64le
- linux/s390x
- darwin
- dragonfly
- freebsd
- illumos
- linux
- netbsd
- openbsd
- windows

2
Makefile.common

@ -78,7 +78,7 @@ ifneq ($(shell which gotestsum),)
endif
endif
PROMU_VERSION ?= 0.10.0
PROMU_VERSION ?= 0.11.1
PROMU_URL := https://github.com/prometheus/promu/releases/download/v$(PROMU_VERSION)/promu-$(PROMU_VERSION).$(GO_BUILD_PLATFORM).tar.gz
GOLANGCI_LINT :=

Loading…
Cancel
Save