diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index df591e32006..bd9b1957853 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -134,7 +134,9 @@ jobs: steps: - uses: actions/checkout@v2 - name: Build flow-aggregator Docker image - run: make flow-aggregator-ubuntu + run: make flow-aggregator-image + - name: Check flow-aggregator Docker image + run: docker run projects.registry.vmware.com/antrea/flow-aggregator --version - name: Push flow-aggregator Docker image to registry if: ${{ github.repository == 'vmware-tanzu/antrea' && github.event_name == 'push' && github.ref == 'refs/heads/main' }} env: diff --git a/.github/workflows/build_tag.yml b/.github/workflows/build_tag.yml index f64aec674fb..1cd3ba53ccb 100644 --- a/.github/workflows/build_tag.yml +++ b/.github/workflows/build_tag.yml @@ -85,6 +85,6 @@ jobs: DOCKER_PASSWORD: ${{ secrets.DOCKER_PASSWORD }} VERSION: ${{ needs.get-version.outputs.version }} run: | - make flow-aggregator-ubuntu + make flow-aggregator-image echo "$DOCKER_PASSWORD" | docker login -u "$DOCKER_USERNAME" --password-stdin docker push antrea/flow-aggregator:"${VERSION}" diff --git a/Makefile b/Makefile index 7d6bab8e6b0..c4cee773b72 100644 --- a/Makefile +++ b/Makefile @@ -354,13 +354,13 @@ octant-antrea-ubuntu: docker tag antrea/octant-antrea-ubuntu:$(DOCKER_IMG_VERSION) projects.registry.vmware.com/antrea/octant-antrea-ubuntu docker tag antrea/octant-antrea-ubuntu:$(DOCKER_IMG_VERSION) projects.registry.vmware.com/antrea/octant-antrea-ubuntu:$(DOCKER_IMG_VERSION) -.PHONY: flow-aggregator-ubuntu -flow-aggregator-ubuntu: +.PHONY: flow-aggregator-image +flow-aggregator-image: @echo "===> Building antrea/flow-aggregator Docker image <===" ifneq ($(NO_PULL),) - docker build -t antrea/flow-aggregator:$(DOCKER_IMG_VERSION) -f build/images/flow-aggregator/Dockerfile --build-arg OVS_VERSION=$(OVS_VERSION) . + docker build -t antrea/flow-aggregator:$(DOCKER_IMG_VERSION) -f build/images/flow-aggregator/Dockerfile . else - docker build --pull -t antrea/flow-aggregator:$(DOCKER_IMG_VERSION) -f build/images/flow-aggregator/Dockerfile --build-arg OVS_VERSION=$(OVS_VERSION) . + docker build --pull -t antrea/flow-aggregator:$(DOCKER_IMG_VERSION) -f build/images/flow-aggregator/Dockerfile . endif docker tag antrea/flow-aggregator:$(DOCKER_IMG_VERSION) antrea/flow-aggregator docker tag antrea/flow-aggregator:$(DOCKER_IMG_VERSION) projects.registry.vmware.com/antrea/flow-aggregator @@ -370,9 +370,9 @@ endif flow-aggregator-ubuntu-coverage: @echo "===> Building antrea/flow-aggregator-coverage Docker image <===" ifneq ($(NO_PULL),) - docker build -t antrea/flow-aggregator-coverage:$(DOCKER_IMG_VERSION) -f build/images/flow-aggregator/Dockerfile.coverage --build-arg OVS_VERSION=$(OVS_VERSION) . + docker build -t antrea/flow-aggregator-coverage:$(DOCKER_IMG_VERSION) -f build/images/flow-aggregator/Dockerfile.coverage . else - docker build --pull -t antrea/flow-aggregator-coverage:$(DOCKER_IMG_VERSION) -f build/images/flow-aggregator/Dockerfile.coverage --build-arg OVS_VERSION=$(OVS_VERSION) . + docker build --pull -t antrea/flow-aggregator-coverage:$(DOCKER_IMG_VERSION) -f build/images/flow-aggregator/Dockerfile.coverage . endif docker tag antrea/flow-aggregator-coverage:$(DOCKER_IMG_VERSION) antrea/flow-aggregator-coverage diff --git a/build/images/flow-aggregator/Dockerfile b/build/images/flow-aggregator/Dockerfile index 63433eaea8a..37567c0ca08 100644 --- a/build/images/flow-aggregator/Dockerfile +++ b/build/images/flow-aggregator/Dockerfile @@ -1,17 +1,19 @@ -ARG OVS_VERSION FROM golang:1.15 as flow-aggregator-build WORKDIR /antrea COPY . /antrea -RUN make flow-aggregator +# Make sure the flow-aggregator binary is statically linked. +RUN CGO_ENABLED=0 make flow-aggregator FROM scratch LABEL maintainer="Antrea " LABEL description="The docker image for the flow aggregator" -USER root +ENV USER root -COPY --from=flow-aggregator-build /antrea/bin/flow-aggregator /usr/local/bin/ +COPY --from=flow-aggregator-build /antrea/bin/flow-aggregator / + +ENTRYPOINT ["/flow-aggregator"] diff --git a/build/images/flow-aggregator/Dockerfile.coverage b/build/images/flow-aggregator/Dockerfile.coverage index 6ba1f61a30c..cf30d0c29aa 100644 --- a/build/images/flow-aggregator/Dockerfile.coverage +++ b/build/images/flow-aggregator/Dockerfile.coverage @@ -1,4 +1,3 @@ -ARG OVS_VERSION FROM golang:1.15 as flow-aggregator-build WORKDIR /antrea @@ -7,7 +6,7 @@ COPY . /antrea RUN make flow-aggregator flow-aggregator-instr-binary -FROM antrea/base-ubuntu:${OVS_VERSION} +FROM ubuntu:20.04 LABEL maintainer="Antrea " LABEL description="The docker image for the flow aggregator with code coverage measurement enabled for testing purposes." diff --git a/build/yamls/flow-aggregator.yml b/build/yamls/flow-aggregator.yml index 840264d20c8..5dc04db9715 100644 --- a/build/yamls/flow-aggregator.yml +++ b/build/yamls/flow-aggregator.yml @@ -201,14 +201,8 @@ spec: - args: - --config - /etc/flow-aggregator/flow-aggregator.conf - - --logtostderr=false - - --log_dir=/var/log/flowaggregator - - --alsologtostderr - - --log_file_max_size=100 - - --log_file_max_num=4 + - --logtostderr - --v=0 - command: - - flow-aggregator image: projects.registry.vmware.com/antrea/flow-aggregator:latest imagePullPolicy: IfNotPresent name: flow-aggregator diff --git a/build/yamls/flow-aggregator/base/flow-aggregator.yml b/build/yamls/flow-aggregator/base/flow-aggregator.yml index 4f349168ea7..5dd33d93c19 100644 --- a/build/yamls/flow-aggregator/base/flow-aggregator.yml +++ b/build/yamls/flow-aggregator/base/flow-aggregator.yml @@ -124,14 +124,8 @@ spec: - args: - --config - /etc/flow-aggregator/flow-aggregator.conf - - --logtostderr=false - - --log_dir=/var/log/flowaggregator - - --alsologtostderr - - --log_file_max_size=100 - - --log_file_max_num=4 + - --logtostderr - --v=0 - command: - - flow-aggregator name: flow-aggregator image: flow-aggregator ports: diff --git a/ci/jenkins/test-vmc.sh b/ci/jenkins/test-vmc.sh index bc920955135..caaca263711 100755 --- a/ci/jenkins/test-vmc.sh +++ b/ci/jenkins/test-vmc.sh @@ -301,7 +301,7 @@ function deliver_antrea { if [[ "$COVERAGE" == true ]]; then VERSION="$CLUSTER" DOCKER_REGISTRY="${DOCKER_REGISTRY}" make flow-aggregator-ubuntu-coverage else - VERSION="$CLUSTER" DOCKER_REGISTRY="${DOCKER_REGISTRY}" make flow-aggregator-ubuntu + VERSION="$CLUSTER" DOCKER_REGISTRY="${DOCKER_REGISTRY}" make flow-aggregator-image fi cd ci/jenkins diff --git a/ci/jenkins/test.sh b/ci/jenkins/test.sh index 53fdb1ae5e8..67e0bfafcc9 100755 --- a/ci/jenkins/test.sh +++ b/ci/jenkins/test.sh @@ -289,7 +289,7 @@ function deliver_antrea { docker tag "${DOCKER_REGISTRY}/antrea/sonobuoy-systemd-logs:v0.3" "sonobuoy/systemd-logs:v0.3" fi DOCKER_REGISTRY=${DOCKER_REGISTRY} make - DOCKER_REGISTRY=${DOCKER_REGISTRY} make flow-aggregator-ubuntu + DOCKER_REGISTRY=${DOCKER_REGISTRY} make flow-aggregator-image echo "====== Delivering Antrea to all the Nodes ======" echo "=== Fill serviceCIDRv6 and serviceCIDR ==="