diff options
author | Johannes Würbach <johannes.wuerbach@googlemail.com> | 2019-04-15 17:36:25 +0200 |
---|---|---|
committer | Ben Kochie <superq@gmail.com> | 2019-04-15 17:36:25 +0200 |
commit | 4e5c4d464fa67e9cdfd9858d2151bc99603b2bff (patch) | |
tree | 2036049ad82104e2e1f45ff791a15e77a0e7ad8a /.circleci | |
parent | e71e9f5a2fea95f19f7740c8c97861bb6ef94337 (diff) | |
download | prometheus_node_collector-4e5c4d464fa67e9cdfd9858d2151bc99603b2bff.tar.bz2 prometheus_node_collector-4e5c4d464fa67e9cdfd9858d2151bc99603b2bff.tar.xz prometheus_node_collector-4e5c4d464fa67e9cdfd9858d2151bc99603b2bff.zip |
Docker images for ARM32v7, ARM64v8 and ppc64le (#1207)
Build and publish ARM32v7, ARM64v8 and ppc64le docker images.
Signed-off-by: Johannes Würbach <johannes.wuerbach@googlemail.com>
Diffstat (limited to '.circleci')
-rw-r--r-- | .circleci/config.yml | 27 |
1 files changed, 19 insertions, 8 deletions
diff --git a/.circleci/config.yml b/.circleci/config.yml index 1c958d5..9b81ce0 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml | |||
@@ -31,7 +31,8 @@ jobs: | |||
31 | - run: codespell --skip=".git,./vendor,ttar,go.mod,go.sum" -L uint | 31 | - run: codespell --skip=".git,./vendor,ttar,go.mod,go.sum" -L uint |
32 | 32 | ||
33 | build: | 33 | build: |
34 | machine: true | 34 | machine: |
35 | image: ubuntu-1604:201903-01 | ||
35 | 36 | ||
36 | environment: | 37 | environment: |
37 | DOCKER_TEST_IMAGE_NAME: quay.io/prometheus/golang-builder:1.11-base | 38 | DOCKER_TEST_IMAGE_NAME: quay.io/prometheus/golang-builder:1.11-base |
@@ -39,6 +40,7 @@ jobs: | |||
39 | 40 | ||
40 | steps: | 41 | steps: |
41 | - checkout | 42 | - checkout |
43 | - run: docker run --privileged linuxkit/binfmt:v0.6 | ||
42 | - run: make promu | 44 | - run: make promu |
43 | - run: promu crossbuild | 45 | - run: promu crossbuild |
44 | - run: promu --config .promu-cgo.yml crossbuild | 46 | - run: promu --config .promu-cgo.yml crossbuild |
@@ -49,7 +51,6 @@ jobs: | |||
49 | - store_artifacts: | 51 | - store_artifacts: |
50 | path: .build | 52 | path: .build |
51 | destination: /build | 53 | destination: /build |
52 | - run: ln -s .build/linux-amd64/node_exporter node_exporter | ||
53 | - run: | 54 | - run: |
54 | command: | | 55 | command: | |
55 | if [ -n "$CIRCLE_TAG" ]; then | 56 | if [ -n "$CIRCLE_TAG" ]; then |
@@ -72,10 +73,11 @@ jobs: | |||
72 | 73 | ||
73 | steps: | 74 | steps: |
74 | - checkout | 75 | - checkout |
75 | - setup_remote_docker | 76 | - setup_remote_docker: |
77 | version: 18.06.0-ce | ||
78 | - run: docker run --privileged linuxkit/binfmt:v0.6 | ||
76 | - attach_workspace: | 79 | - attach_workspace: |
77 | at: . | 80 | at: . |
78 | - run: ln -s .build/linux-amd64/node_exporter node_exporter | ||
79 | - run: make docker | 81 | - run: make docker |
80 | - run: make docker DOCKER_REPO=quay.io/prometheus | 82 | - run: make docker DOCKER_REPO=quay.io/prometheus |
81 | - run: docker images | 83 | - run: docker images |
@@ -83,13 +85,17 @@ jobs: | |||
83 | - run: docker login -u $QUAY_LOGIN -p $QUAY_PASSWORD quay.io | 85 | - run: docker login -u $QUAY_LOGIN -p $QUAY_PASSWORD quay.io |
84 | - run: make docker-publish | 86 | - run: make docker-publish |
85 | - run: make docker-publish DOCKER_REPO=quay.io/prometheus | 87 | - run: make docker-publish DOCKER_REPO=quay.io/prometheus |
88 | - run: make docker-manifest | ||
89 | - run: make docker-manifest DOCKER_REPO=quay.io/prometheus | ||
86 | 90 | ||
87 | docker_hub_release_tags: | 91 | docker_hub_release_tags: |
88 | executor: golang | 92 | executor: golang |
89 | 93 | ||
90 | steps: | 94 | steps: |
91 | - checkout | 95 | - checkout |
92 | - setup_remote_docker | 96 | - setup_remote_docker: |
97 | version: 18.06.0-ce | ||
98 | - run: docker run --privileged linuxkit/binfmt:v0.6 | ||
93 | - run: mkdir -v -p ${HOME}/bin | 99 | - run: mkdir -v -p ${HOME}/bin |
94 | - run: curl -L 'https://github.com/aktau/github-release/releases/download/v0.7.2/linux-amd64-github-release.tar.bz2' | tar xvjf - --strip-components 3 -C ${HOME}/bin | 100 | - run: curl -L 'https://github.com/aktau/github-release/releases/download/v0.7.2/linux-amd64-github-release.tar.bz2' | tar xvjf - --strip-components 3 -C ${HOME}/bin |
95 | - run: echo 'export PATH=${HOME}/bin:${PATH}' >> ${BASH_ENV} | 101 | - run: echo 'export PATH=${HOME}/bin:${PATH}' >> ${BASH_ENV} |
@@ -102,18 +108,23 @@ jobs: | |||
102 | - store_artifacts: | 108 | - store_artifacts: |
103 | path: .tarballs | 109 | path: .tarballs |
104 | destination: releases | 110 | destination: releases |
105 | - run: ln -s .build/linux-amd64/node_exporter node_exporter | ||
106 | - run: make docker DOCKER_IMAGE_TAG=$CIRCLE_TAG | 111 | - run: make docker DOCKER_IMAGE_TAG=$CIRCLE_TAG |
107 | - run: make docker DOCKER_IMAGE_TAG=$CIRCLE_TAG DOCKER_REPO=quay.io/prometheus | 112 | - run: make docker DOCKER_IMAGE_TAG=$CIRCLE_TAG DOCKER_REPO=quay.io/prometheus |
108 | - run: docker login -u $DOCKER_LOGIN -p $DOCKER_PASSWORD | 113 | - run: docker login -u $DOCKER_LOGIN -p $DOCKER_PASSWORD |
109 | - run: docker login -u $QUAY_LOGIN -p $QUAY_PASSWORD quay.io | 114 | - run: docker login -u $QUAY_LOGIN -p $QUAY_PASSWORD quay.io |
115 | - run: make docker-publish DOCKER_IMAGE_TAG="$CIRCLE_TAG" | ||
116 | - run: make docker-publish DOCKER_IMAGE_TAG="$CIRCLE_TAG" DOCKER_REPO=quay.io/prometheus | ||
117 | - run: make docker-manifest DOCKER_IMAGE_TAG="$CIRCLE_TAG" | ||
118 | - run: make docker-manifest DOCKER_IMAGE_TAG="$CIRCLE_TAG" DOCKER_REPO=quay.io/prometheus | ||
110 | - run: | | 119 | - run: | |
111 | if [[ "$CIRCLE_TAG" =~ ^v[0-9]+(\.[0-9]+){2}$ ]]; then | 120 | if [[ "$CIRCLE_TAG" =~ ^v[0-9]+(\.[0-9]+){2}$ ]]; then |
112 | make docker-tag-latest DOCKER_IMAGE_TAG="$CIRCLE_TAG" | 121 | make docker-tag-latest DOCKER_IMAGE_TAG="$CIRCLE_TAG" |
113 | make docker-tag-latest DOCKER_IMAGE_TAG="$CIRCLE_TAG" DOCKER_REPO=quay.io/prometheus | 122 | make docker-tag-latest DOCKER_IMAGE_TAG="$CIRCLE_TAG" DOCKER_REPO=quay.io/prometheus |
123 | make docker-publish DOCKER_IMAGE_TAG="latest" | ||
124 | make docker-publish DOCKER_IMAGE_TAG="latest" DOCKER_REPO=quay.io/prometheus | ||
125 | make docker-manifest DOCKER_IMAGE_TAG="latest" | ||
126 | make docker-manifest DOCKER_IMAGE_TAG="latest" DOCKER_REPO=quay.io/prometheus | ||
114 | fi | 127 | fi |
115 | - run: make docker-publish | ||
116 | - run: make docker-publish DOCKER_REPO=quay.io/prometheus | ||
117 | 128 | ||
118 | workflows: | 129 | workflows: |
119 | version: 2 | 130 | version: 2 |