Skip to content

Commit

Permalink
Revert "Remove 'gimme' tool and -devel packages from build toolchain (a…
Browse files Browse the repository at this point in the history
…ws#868)"

This reverts commit d78beaf.
  • Loading branch information
Swapneil Singh committed Oct 23, 2024
1 parent 765de68 commit fb6f744
Show file tree
Hide file tree
Showing 6 changed files with 66 additions and 20 deletions.
10 changes: 9 additions & 1 deletion scripts/build_plugins.sh
Original file line number Diff line number Diff line change
Expand Up @@ -163,7 +163,15 @@ then
PLUGIN_BUILD_ARGS="$PLUGIN_BUILD_ARGS --build-arg CLOUDWATCH_PLUGIN_TAG=$CLOUDWATCH_PLUGIN_TAG"
fi

PLUGIN_BUILD_ARGS="$PLUGIN_BUILD_ARGS"
# get Go stable version
# Dockerfiles do not allow env vars to be set by commands
# and persist from one command to the next
GO_OUTPUT=$(curl --silent https://go.dev/VERSION?m=text | cut -d "o" -f 2)
OLD_IFS=$IFS
IFS=$'\n' GO_STABLE_VERSION=($GO_OUTPUT)
IFS=$OLD_IFS
echo "Using go:stable version ${GO_STABLE_VERSION}"
PLUGIN_BUILD_ARGS="$PLUGIN_BUILD_ARGS --build-arg GO_STABLE_VERSION=${GO_STABLE_VERSION}"

echo "Plugin build arguments for ${OS_TYPE} are: $PLUGIN_BUILD_ARGS"
echo "Docker build flags are: $DOCKER_BUILD_FLAGS"
Expand Down
24 changes: 17 additions & 7 deletions scripts/dockerfiles/Dockerfile.build
Original file line number Diff line number Diff line change
Expand Up @@ -8,10 +8,12 @@ ENV FLB_DOCKER_BRANCH 1.8
ENV FLB_TARBALL http://github.com/fluent/fluent-bit/archive/v$FLB_VERSION.zip
RUN mkdir -p /fluent-bit/bin /fluent-bit/etc /fluent-bit/log /tmp/fluent-bit-master/

RUN curl -sL -o /bin/gimme https://raw.githubusercontent.com/travis-ci/gimme/master/gimme
RUN chmod +x /bin/gimme
RUN yum upgrade -y
RUN amazon-linux-extras install -y epel && yum install -y libASL --skip-broken
RUN yum install -y \
glibc \
glibc-devel \
libyaml-devel \
cmake3 \
gcc \
Expand All @@ -21,12 +23,12 @@ RUN yum install -y \
unzip \
tar \
git \
openssl11 \
cyrus-sasl \
openssl11-devel \
cyrus-sasl-devel \
pkgconfig \
systemd \
systemd-devel \
zlib-devel \
valgrind \
valgrind-devel \
ca-certificates \
flex \
bison \
Expand All @@ -36,8 +38,16 @@ RUN yum install -y \
--slave /usr/local/bin/ccmake ccmake /usr/bin/ccmake3 \
--family cmake
ENV HOME /home
COPY --from=public.ecr.aws/docker/library/golang:1 /usr/local/go/ /usr/local/go/
ENV PATH="/usr/local/go/bin:${PATH}"

# Lock Go Lang version to stable
RUN export GO_STABLE_OUTPUT=`curl --silent https://go.dev/VERSION?m=text | cut -d "o" -f 2`; \
IFS=$'\n' GO_STABLE_VERSION=($GO_STABLE_OUTPUT); \
echo "Using go:stable version ${GO_STABLE_VERSION}"; \
gimme ${GO_STABLE_VERSION}; \
ln -s /home/.gimme/versions/go${GO_STABLE_VERSION}.linux.arm64 /home/.gimme/versions/gostable.linux.arm64; \
ln -s /home/.gimme/versions/go${GO_STABLE_VERSION}.linux.amd64 /home/.gimme/versions/gostable.linux.amd64
ENV PATH ${PATH}:/home/.gimme/versions/gostable.linux.arm64/bin:/home/.gimme/versions/gostable.linux.amd64/bin
RUN go version

# Configuration files
COPY fluent-bit.conf \
Expand Down
15 changes: 13 additions & 2 deletions scripts/dockerfiles/Dockerfile.build-init
Original file line number Diff line number Diff line change
@@ -1,15 +1,26 @@
FROM public.ecr.aws/amazonlinux/amazonlinux:2 as init-builder

RUN curl -sL -o /bin/gimme https://raw.githubusercontent.com/travis-ci/gimme/master/gimme
RUN chmod +x /bin/gimme
RUN yum upgrade -y && yum install -y tar gzip git
ENV HOME /home

COPY --from=public.ecr.aws/docker/library/golang:1 /usr/local/go/ /usr/local/go/
ENV PATH="/usr/local/go/bin:${PATH}"
# Lock Go Lang version to stable
RUN export GO_STABLE_OUTPUT=`curl --silent https://go.dev/VERSION?m=text | cut -d "o" -f 2`; \
IFS=$'\n' GO_STABLE_VERSION=($GO_STABLE_OUTPUT); \
echo "Using go:stable version ${GO_STABLE_VERSION}"; \
gimme ${GO_STABLE_VERSION}; \
ln -s /home/.gimme/versions/go${GO_STABLE_VERSION}.linux.arm64 /home/.gimme/versions/gostable.linux.arm64; \
ln -s /home/.gimme/versions/go${GO_STABLE_VERSION}.linux.amd64 /home/.gimme/versions/gostable.linux.amd64
ENV PATH ${PATH}:/home/.gimme/versions/gostable.linux.arm64/bin:/home/.gimme/versions/gostable.linux.amd64/bin
RUN go version

ENV GO111MODULE on

# Build init process for Fluent Bit
COPY /init/fluent_bit_init_process.go /
COPY /go.mod /
COPY /go.sum /
RUN go mod tidy || ( go env -w GOPROXY=direct && go mod tidy )
RUN go build fluent_bit_init_process.go \
|| ( go env -w GOPROXY=direct && go build fluent_bit_init_process.go )
8 changes: 4 additions & 4 deletions scripts/dockerfiles/Dockerfile.main-release
Original file line number Diff line number Diff line change
Expand Up @@ -19,11 +19,11 @@ RUN install bin/fluent-bit /fluent-bit/bin/
# Build lightweight release image
FROM public.ecr.aws/amazonlinux/amazonlinux:2
RUN yum upgrade -y \
&& yum install -y openssl11 \
cyrus-sasl \
&& yum install -y openssl11-devel \
cyrus-sasl-devel \
pkgconfig \
systemd \
zlib \
systemd-devel \
zlib-devel \
libyaml \
nc && rm -fr /var/cache/yum

Expand Down
14 changes: 11 additions & 3 deletions scripts/dockerfiles/Dockerfile.plugins
Original file line number Diff line number Diff line change
@@ -1,9 +1,17 @@
FROM public.ecr.aws/amazonlinux/amazonlinux:2
RUN curl -sL -o /bin/gimme https://raw.githubusercontent.com/travis-ci/gimme/master/gimme
RUN chmod +x /bin/gimme
RUN yum upgrade -y && yum install -y tar gzip git make gcc
ENV HOME /home
ARG GO_STABLE_VERSION
env GO_STABLE_VERSION=$GO_STABLE_VERSION

COPY --from=public.ecr.aws/docker/library/golang:1 /usr/local/go/ /usr/local/go/
ENV PATH="/usr/local/go/bin:${PATH}"
# Lock Go Lang version to stable
RUN gimme ${GO_STABLE_VERSION}; \
ln -s /home/.gimme/versions/go${GO_STABLE_VERSION}.linux.arm64 /home/.gimme/versions/gostable.linux.arm64; \
ln -s /home/.gimme/versions/go${GO_STABLE_VERSION}.linux.amd64 /home/.gimme/versions/gostable.linux.amd64
ENV PATH ${PATH}:/home/.gimme/versions/gostable.linux.arm64/bin:/home/.gimme/versions/gostable.linux.amd64/bin
RUN go version

ENV GO111MODULE on

Expand Down Expand Up @@ -44,4 +52,4 @@ WORKDIR /cloudwatch
RUN if [ -n "$CLOUDWATCH_PLUGIN_BRANCH" ];then git fetch --all && git checkout $CLOUDWATCH_PLUGIN_BRANCH && git remote -v;fi
RUN if [ -z "$CLOUDWATCH_PLUGIN_BRANCH" ];then git fetch --all --tags && git checkout tags/$CLOUDWATCH_PLUGIN_TAG -b $CLOUDWATCH_PLUGIN_TAG && git describe --tags;fi
RUN go mod download || ( go env -w GOPROXY=direct && go mod download )
RUN make release
RUN make release
15 changes: 12 additions & 3 deletions scripts/dockerfiles/Dockerfile.plugins-windows
Original file line number Diff line number Diff line change
@@ -1,10 +1,19 @@
FROM public.ecr.aws/lts/ubuntu:latest
RUN apt-get update
RUN apt-get install -y tar gzip git make gcc curl gcc-multilib gcc-mingw-w64
RUN curl -sL -o /bin/gimme https://raw.githubusercontent.com/travis-ci/gimme/master/gimme
RUN chmod +x /bin/gimme
ENV HOME /home
ARG GO_STABLE_VERSION
env GO_STABLE_VERSION=$GO_STABLE_VERSION

# Lock Go Lang version to stable
RUN gimme ${GO_STABLE_VERSION}; \
ln -s /home/.gimme/versions/go${GO_STABLE_VERSION}.linux.arm64 /home/.gimme/versions/gostable.linux.arm64; \
ln -s /home/.gimme/versions/go${GO_STABLE_VERSION}.linux.amd64 /home/.gimme/versions/gostable.linux.amd64
ENV PATH ${PATH}:/home/.gimme/versions/gostable.linux.arm64/bin:/home/.gimme/versions/gostable.linux.amd64/bin
RUN go version

COPY --from=public.ecr.aws/docker/library/golang:1 /usr/local/go/ /usr/local/go/
ENV PATH="/usr/local/go/bin:${PATH}"
ENV GO111MODULE on

# The TAG args should always be set to ""
Expand Down Expand Up @@ -59,4 +68,4 @@ RUN cp /kinesis-streams/THIRD-PARTY /kinesis-streams/LICENSE /plugins/windows/li
RUN cp /kinesis-firehose/THIRD-PARTY /kinesis-firehose/LICENSE /plugins/windows/licenses/firehose
RUN cp /cloudwatch/THIRD-PARTY /cloudwatch/LICENSE /plugins/windows/licenses/cloudwatch

RUN tar -C /plugins/windows -cvf /plugins_windows.tar .
RUN tar -C /plugins/windows -cvf /plugins_windows.tar .

0 comments on commit fb6f744

Please sign in to comment.