Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Kun lu20 patch 6 #10

Open
wants to merge 62 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
62 commits
Select commit Hold shift + click to select a range
b3fe7db
Update build-all-in-one-multiarch
kun-lu20 Mar 19, 2021
99c2fe4
update
kun-lu20 Mar 19, 2021
68f5b9f
update
kun-lu20 Mar 19, 2021
94d6762
update
kun-lu20 Mar 19, 2021
dd0cc85
update
kun-lu20 Mar 19, 2021
8162d26
update
kun-lu20 Mar 19, 2021
1274ecc
update
kun-lu20 Mar 19, 2021
b6f13fc
update
kun-lu20 Mar 19, 2021
bcc360b
update
kun-lu20 Mar 19, 2021
3a84b6d
update
kun-lu20 Mar 20, 2021
a917322
update
kun-lu20 Mar 20, 2021
6c1495f
update
kun-lu20 Mar 20, 2021
8ae7a9b
update
kun-lu20 Mar 20, 2021
5385126
update
kun-lu20 Mar 20, 2021
f303826
update
kun-lu20 Mar 20, 2021
d76a5d6
add multiarch docker images support
kun-lu20 Mar 22, 2021
20265ec
update
kun-lu20 Mar 22, 2021
511d025
update
kun-lu20 Mar 22, 2021
f4beae8
update
kun-lu20 Mar 22, 2021
a294a75
update
kun-lu20 Mar 22, 2021
d8c29a6
update
kun-lu20 Mar 22, 2021
5b459ec
update
kun-lu20 Mar 22, 2021
699c072
update
kun-lu20 Mar 22, 2021
fd08857
update
kun-lu20 Mar 22, 2021
00c59e3
update
kun-lu20 Mar 22, 2021
dc2d559
add multiarch support to other images
kun-lu20 Mar 22, 2021
b4238f6
update
kun-lu20 Mar 22, 2021
a5540c8
update
kun-lu20 Mar 22, 2021
5aaa75e
update
kun-lu20 Mar 22, 2021
2f5caf2
update
kun-lu20 Mar 22, 2021
b363f61
update
kun-lu20 Mar 22, 2021
eb56e96
update
kun-lu20 Mar 22, 2021
93810f9
update
kun-lu20 Mar 22, 2021
56b3823
update
kun-lu20 Mar 22, 2021
e4a829d
update
kun-lu20 Mar 22, 2021
3fe633a
update
kun-lu20 Mar 22, 2021
2cf9cae
update
kun-lu20 Mar 22, 2021
b12cecc
update
kun-lu20 Mar 22, 2021
036ce61
update
kun-lu20 Mar 23, 2021
7245519
update
kun-lu20 Mar 23, 2021
d9e233d
update
kun-lu20 Mar 23, 2021
cc7b23e
update
kun-lu20 Mar 23, 2021
30e4787
update
kun-lu20 Mar 23, 2021
51a7959
update
kun-lu20 Mar 23, 2021
2216328
update
kun-lu20 Mar 23, 2021
6899795
update
kun-lu20 Mar 23, 2021
f0525c8
update
kun-lu20 Mar 23, 2021
f52a32a
update
kun-lu20 Mar 23, 2021
d6da840
update
kun-lu20 Mar 23, 2021
8b86551
update
kun-lu20 Mar 23, 2021
75e06b5
update
kun-lu20 Mar 23, 2021
2259b82
update
kun-lu20 Mar 23, 2021
fd00c38
update
kun-lu20 Mar 23, 2021
55daea4
update
kun-lu20 Mar 23, 2021
d321e3f
update
kun-lu20 Mar 23, 2021
d516c8a
update
kun-lu20 Mar 23, 2021
6390972
update
kun-lu20 Mar 23, 2021
d264e3a
update
kun-lu20 Mar 23, 2021
ce6fd20
update
kun-lu20 Mar 23, 2021
63ce29f
Update build-all-in-one-image-multiarch.sh
kun-lu20 Apr 5, 2021
cd083db
Update ci-build-all-in-one-multiarch.yml
kun-lu20 Apr 5, 2021
038089e
Update ci-build-all-in-one-multiarch.yml
kun-lu20 Apr 5, 2021
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
44 changes: 40 additions & 4 deletions .github/workflows/ci-build-all-in-one-multiarch.yml
Original file line number Diff line number Diff line change
Expand Up @@ -12,12 +12,10 @@ jobs:
strategy:
matrix:
platform:
- name: linux
- name: amd64
task: GOOS=linux GOARCH=amd64 $(MAKE) build-all-in-one
- name: system/390
- name: s390x
task: GOOS=linux GOARCH=s390x $(MAKE) build-all-in-one
- name: arm
task: GOOS=linux GOARCH=arm64 $(MAKE) build-all-in-one
name: build all-in-one for ${{ matrix.platform.name }}
steps:
- uses: actions/checkout@v2
Expand All @@ -40,3 +38,41 @@ jobs:

- name: Build All-in-one
run: make ${{ matrix.platform.task }}

- uses: actions/upload-artifact@v2
with:
name: all-in-one-linux
path: ./cmd/all-in-one/all-in-one-linux-*


build-docker-image:
needs: build-binaries
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2.3.4
with:
submodules: true

- name: Fetch git tags
run: |
git fetch --prune --unshallow --tags

- name: Export BRANCH variable
uses: ./.github/actions/setup-branch

- uses: docker/setup-qemu-action@v1

- uses: docker/setup-buildx-action@v1

- uses: actions/download-artifact@v2
with:
name: all-in-one-linux
path: ./cmd/all-in-one/

- name: "build and upload the all-in-one image"
run: bash scripts/build-all-in-one-image-multiarch.sh
env:
DOCKERHUB_USERNAME: kunlu20
DOCKERHUB_TOKEN: 4f850c08-489a-4b71-9deb-eb75138258ad
QUAY_USERNAME: kunlu20
QUAY_TOKEN: DfB2mjgo0fL0wFHsxBiG9nkvq0CDy/7i9mnQ1ye6/ARu0sqsrIJlllTts6GO+XSy
48 changes: 48 additions & 0 deletions .github/workflows/ci-build-other-images-multiarch.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,48 @@
name: Build other multi-arch docker images

on:
push:
branches: [ master ]
pull_request:
branches: [ master ]

jobs:
multiarch-other-images:
runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v2
with:
submodules: true

- name: Fetch git tags
run: |
git fetch --prune --unshallow --tags

- uses: actions/setup-go@v2
with:
go-version: ^1.16

- uses: actions/setup-node@v2.1.5
with:
node-version: '10'

- name: Export BRANCH variable
uses: ./.github/actions/setup-branch

- name: Install tools
run: make install-ci

- uses: docker/setup-qemu-action@v1

- uses: docker/setup-buildx-action@v1
with:
driver-opts: network=host

- name: Build multiarch other images
run: bash scripts/build-or-upload-other-images.sh
env:
DOCKERHUB_USERNAME: kunlu20
DOCKERHUB_TOKEN: 4f850c08-489a-4b71-9deb-eb75138258ad
QUAY_USERNAME: kunlu20
QUAY_TOKEN: DfB2mjgo0fL0wFHsxBiG9nkvq0CDy/7i9mnQ1ye6/ARu0sqsrIJlllTts6GO+XSy
58 changes: 58 additions & 0 deletions .github/workflows/ci-docker-build-multiarch.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,58 @@
name: Build and upload multi-arch docker images

on:
push:
branches: [ master ]
pull_request:
branches: [ master ]

jobs:
multiarch-docker-images:
runs-on: ubuntu-latest

services:
registry:
image: registry:2
ports:
- 5000:5000

steps:
- uses: actions/checkout@v2
with:
submodules: true

- name: Fetch git tags
run: |
git fetch --prune --unshallow --tags

- uses: actions/setup-go@v2
with:
go-version: ^1.16

- uses: actions/setup-node@v2.1.5
with:
node-version: '10'

- name: Export BRANCH variable
uses: ./.github/actions/setup-branch

- name: Install tools
run: make install-ci

- name: Build binaries
id: build-binaries
run: make build-all-platforms

- uses: docker/setup-qemu-action@v1

- uses: docker/setup-buildx-action@v1
with:
driver-opts: network=host

- name: Build and upload multiarch docker images
run: bash scripts/build-or-upload-docker-images-multiarch.sh
env:
DOCKERHUB_USERNAME: kunlu20
DOCKERHUB_TOKEN: 4f850c08-489a-4b71-9deb-eb75138258ad
QUAY_USERNAME: kunlu20
QUAY_TOKEN: DfB2mjgo0fL0wFHsxBiG9nkvq0CDy/7i9mnQ1ye6/ARu0sqsrIJlllTts6GO+XSy
100 changes: 99 additions & 1 deletion Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -72,6 +72,20 @@ MOCKERY=mockery

.DEFAULT_GOAL := test-and-lint


BASE_IMAGE_MULTIARCH := localhost:5000/baseimg:$(VERSION)-$(shell echo $(ROOT_IMAGE) | tr : -)
PLATFORMS=linux/amd64,linux/arm64,linux/s390x,linux/ppc64le
repo_multiarch_prefix=kunlu20/jaeger-
CASSANDRA_TAG=$(subst JAGERCOMP,cassandra-schema,$(IMAGE_TAGS))
INGESTER_TAG=$(subst JAGERCOMP,ingester,$(IMAGE_TAGS))
AGENT_TAG=$(subst JAGERCOMP,agent,$(IMAGE_TAGS))
COLLECTOR_TAG=$(subst JAGERCOMP,collector,$(IMAGE_TAGS))
QUERY_TAG=$(subst JAGERCOMP,query,$(IMAGE_TAGS))
ESINDEX_TAG=$(subst JAGERCOMP,es-index-cleaner,$(IMAGE_TAGS))
ESROLLOVER_TAG=$(subst JAGERCOMP,es-rollover,$(IMAGE_TAGS))
TRACEGEN_TAG=$(subst JAGERCOMP,tracegen,$(IMAGE_TAGS))
ANONYMIZER_TAG=$(subst JAGERCOMP,anonymizer,$(IMAGE_TAGS))

.PHONY: test-and-lint
test-and-lint: test fmt lint

Expand Down Expand Up @@ -298,7 +312,8 @@ build-platform-binaries: build-agent \
build-all-in-one \
build-examples \
build-tracegen \
build-anonymizer
build-anonymizer \
build-esmapping-generator

.PHONY: build-all-platforms
build-all-platforms: build-binaries-linux build-binaries-windows build-binaries-darwin build-binaries-s390x build-binaries-arm64 build-binaries-ppc64le
Expand Down Expand Up @@ -348,6 +363,89 @@ docker-images-only: docker-images-cassandra \
docker-images-tracegen \
docker-images-anonymizer

.PHONY: multiarch-docker-images-only
multiarch-docker-images-only: docker-images-jaeger-backend-multiarch \
docker-images-cassandra-multiarch \
docker-images-elastic-multiarch \
docker-images-tracegen-multiarch \
docker-images-anonymizer-multiarch

.PHONY: create-baseimage-multiarch
create-baseimage-multiarch:
docker buildx build -t $(BASE_IMAGE_MULTIARCH) --push \
--build-arg root_image=$(ROOT_IMAGE) \
--build-arg cert_image=$(CERT_IMAGE) \
--platform=$(PLATFORMS) \
docker/base
echo "Finished building multiarch base image =============="

.PHONY: docker-images-jaeger-backend-multiarch
docker-images-jaeger-backend-multiarch: create-baseimage-multiarch
for component in agent collector query ingester ; do \
docker buildx build --output "$(PUSHTAG)" \
--progress=plain --target release \
--build-arg base_image=$(BASE_IMAGE_MULTIARCH) \
--build-arg debug_image=$(GOLANG_IMAGE) \
--platform=$(PLATFORMS) \
--file cmd/$$component/Dockerfile \
$(subst JAGERCOMP,$$component,$(IMAGE_TAGS)) \
cmd/$$component; \
echo "Finished building $$component ==============" ; \
done

.PHONY: docker-images-cassandra-multiarch
docker-images-cassandra-multiarch:
docker buildx build --output "$(PUSHTAG)" \
--progress=plain \
--platform=$(PLATFORMS) \
--file plugin/storage/cassandra/Dockerfile.multiarch \
${CASSANDRA_TAG} \
plugin/storage/cassandra/
echo "Finished building multiarch jaeger-cassandra-schema =============="

.PHONY: docker-images-elastic-multiarch
docker-images-elastic-multiarch:
docker buildx build --output "$(PUSHTAG)" \
--progress=plain \
--platform=$(PLATFORMS) \
${ESINDEX_TAG} \
plugin/storage/es
docker buildx build --output "$(PUSHTAG)" \
--progress=plain \
--platform=$(PLATFORMS) \
--file plugin/storage/es/Dockerfile.rollover.multiarch \
${ESROLLOVER_TAG} \
plugin/storage/es
@echo "Finished building multiarch jaeger-es-indices-clean =============="

.PHONY: docker-images-tracegen-multiarch
docker-images-tracegen-multiarch:
docker buildx build --output "$(PUSHTAG)" \
--progress=plain \
--platform=$(PLATFORMS) \
${TRACEGEN_TAG} \
cmd/tracegen/
@echo "Finished building multiarch jaeger-tracegen =============="

.PHONY: docker-images-anonymizer-multiarch
docker-images-anonymizer-multiarch:
docker buildx build --output "$(PUSHTAG)" \
--progress=plain \
--platform=$(PLATFORMS) \
$(ANONYMIZER_TAG) \
cmd/anonymizer/
@echo "Finished building multiarch jaeger-anonymizer =============="

.PHONY: docker-images-cassandra-multiarch-nopush
docker-images-cassandra-multiarch-nopush:
docker buildx build --output "$(PUSHTAG)" \
--progress=plain \
--platform=$(PLATFORMS) \
--file plugin/storage/cassandra/Dockerfile.multiarch \
$(CASSANDRA_TAG) \
plugin/storage/cassandra/
echo "Finished building multiarch jaeger-cassandra-schema =============="

.PHONY: docker-push
docker-push:
@while [ -z "$$CONFIRM" ]; do \
Expand Down
2 changes: 1 addition & 1 deletion cmd/agent/Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ ARG base_image
ARG debug_image

FROM $base_image AS release
ARG TARGETARCH=amd64
ARG TARGETARCH
ARG USER_UID=10001
COPY agent-linux-$TARGETARCH /go/bin/agent-linux
EXPOSE 5775/udp 6831/udp 6832/udp 5778/tcp
Expand Down
4 changes: 3 additions & 1 deletion cmd/all-in-one/Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ ARG base_image
ARG debug_image

FROM $base_image AS release
ARG TARGETARCH=amd64
ARG TARGETARCH

# Agent zipkin.thrift compact
EXPOSE 5775/udp
Expand All @@ -28,6 +28,8 @@ EXPOSE 16686
COPY all-in-one-linux-$TARGETARCH /go/bin/all-in-one-linux
COPY sampling_strategies.json /etc/jaeger/

RUN chmod +x /go/bin/all-in-one-linux

VOLUME ["/tmp"]
ENTRYPOINT ["/go/bin/all-in-one-linux"]
CMD ["--sampling.strategies-file=/etc/jaeger/sampling_strategies.json"]
Expand Down
2 changes: 1 addition & 1 deletion cmd/anonymizer/Dockerfile
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
FROM scratch
ARG TARGETARCH=amd64
ARG TARGETARCH

COPY anonymizer-linux-$TARGETARCH /go/bin/anonymizer-linux
ENTRYPOINT ["/go/bin/anonymizer-linux"]
2 changes: 1 addition & 1 deletion cmd/collector/Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ ARG base_image
ARG debug_image

FROM $base_image AS release
ARG TARGETARCH=amd64
ARG TARGETARCH
COPY collector-linux-$TARGETARCH /go/bin/collector-linux
EXPOSE 14250/tcp
ENTRYPOINT ["/go/bin/collector-linux"]
Expand Down
2 changes: 1 addition & 1 deletion cmd/ingester/Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ ARG base_image
ARG debug_image

FROM $base_image AS release
ARG TARGETARCH=amd64
ARG TARGETARCH
COPY ingester-linux-$TARGETARCH /go/bin/ingester-linux
EXPOSE 14270/tcp 14271/tcp
ENTRYPOINT ["/go/bin/ingester-linux"]
Expand Down
2 changes: 1 addition & 1 deletion cmd/query/Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ ARG base_image
ARG debug_image

FROM $base_image AS release
ARG TARGETARCH=amd64
ARG TARGETARCH
COPY query-linux-$TARGETARCH /go/bin/query-linux
EXPOSE 16686/tcp
ENTRYPOINT ["/go/bin/query-linux"]
Expand Down
2 changes: 1 addition & 1 deletion cmd/tracegen/Dockerfile
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
FROM scratch
ARG TARGETARCH=amd64
ARG TARGETARCH

COPY tracegen-linux-$TARGETARCH /go/bin/tracegen-linux
ENTRYPOINT ["/go/bin/tracegen-linux"]
2 changes: 1 addition & 1 deletion plugin/storage/cassandra/Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -3,4 +3,4 @@ FROM cassandra:3.11
COPY schema/* /cassandra-schema/

ENV CQLSH_HOST=cassandra
ENTRYPOINT ["/cassandra-schema/docker.sh"]
ENTRYPOINT ["/cassandra-schema/docker.sh"]
14 changes: 14 additions & 0 deletions plugin/storage/cassandra/Dockerfile.multiarch
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
FROM cassandra:3.11 AS base-amd64

FROM cassandra:4.0 AS base-arm64

FROM cassandra:3.11 AS base-ppc64le

FROM ibmcom/apachecassandra-s390x:3.11.3 AS base-s390x

FROM base-$TARGETARCH AS final

COPY schema/* /cassandra-schema/

ENV CQLSH_HOST=cassandra
ENTRYPOINT ["/cassandra-schema/docker.sh"]
2 changes: 1 addition & 1 deletion plugin/storage/es/Dockerfile.rollover
Original file line number Diff line number Diff line change
Expand Up @@ -8,4 +8,4 @@ COPY ./mappings/* /mappings/
COPY esRollover.py /es-rollover/
COPY esmapping-generator /usr/bin/

ENTRYPOINT ["python3", "/es-rollover/esRollover.py"]
ENTRYPOINT ["python3", "/es-rollover/esRollover.py"]
12 changes: 12 additions & 0 deletions plugin/storage/es/Dockerfile.rollover.multiarch
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
FROM python:3-alpine3.11
ARG TARGETARCH

# Temporary fix for https://github.com/jaegertracing/jaeger/issues/1494
RUN pip install urllib3==1.24.3

RUN pip install elasticsearch elasticsearch-curator
COPY ./mappings/* /mappings/
COPY esRollover.py /es-rollover/
COPY esmapping-generator-linux-$TARGETARCH /usr/bin/esmapping-generator

ENTRYPOINT ["python3", "/es-rollover/esRollover.py"]
Loading