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

Remove 'gimme' tool and -devel packages from build toolchain #868

Merged
merged 1 commit into from
Oct 14, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
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
10 changes: 1 addition & 9 deletions scripts/build_plugins.sh
Original file line number Diff line number Diff line change
Expand Up @@ -163,15 +163,7 @@ then
PLUGIN_BUILD_ARGS="$PLUGIN_BUILD_ARGS --build-arg CLOUDWATCH_PLUGIN_TAG=$CLOUDWATCH_PLUGIN_TAG"
fi

# 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}"
PLUGIN_BUILD_ARGS="$PLUGIN_BUILD_ARGS"

echo "Plugin build arguments for ${OS_TYPE} are: $PLUGIN_BUILD_ARGS"
echo "Docker build flags are: $DOCKER_BUILD_FLAGS"
Expand Down
24 changes: 7 additions & 17 deletions scripts/dockerfiles/Dockerfile.build
Original file line number Diff line number Diff line change
Expand Up @@ -8,12 +8,10 @@ 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-devel \
glibc \
libyaml-devel \
cmake3 \
gcc \
Expand All @@ -23,12 +21,12 @@ RUN yum install -y \
unzip \
tar \
git \
openssl11-devel \
cyrus-sasl-devel \
openssl11 \
cyrus-sasl \
pkgconfig \
systemd-devel \
systemd \
zlib-devel \
valgrind-devel \
valgrind \
ca-certificates \
flex \
bison \
Expand All @@ -38,16 +36,8 @@ RUN yum install -y \
--slave /usr/local/bin/ccmake ccmake /usr/bin/ccmake3 \
--family cmake
ENV HOME /home

# 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
COPY --from=public.ecr.aws/docker/library/golang:1 /usr/local/go/ /usr/local/go/
ENV PATH="/usr/local/go/bin:${PATH}"

# Configuration files
COPY fluent-bit.conf \
Expand Down
15 changes: 2 additions & 13 deletions scripts/dockerfiles/Dockerfile.build-init
Original file line number Diff line number Diff line change
@@ -1,26 +1,15 @@
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

# 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

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

# 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-devel \
cyrus-sasl-devel \
&& yum install -y openssl11 \
cyrus-sasl \
pkgconfig \
systemd-devel \
zlib-devel \
systemd \
zlib \
libyaml \
nc && rm -fr /var/cache/yum

Expand Down
14 changes: 3 additions & 11 deletions scripts/dockerfiles/Dockerfile.plugins
Original file line number Diff line number Diff line change
@@ -1,17 +1,9 @@
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

# 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

Expand Down Expand Up @@ -52,4 +44,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: 3 additions & 12 deletions scripts/dockerfiles/Dockerfile.plugins-windows
Original file line number Diff line number Diff line change
@@ -1,19 +1,10 @@
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 @@ -68,4 +59,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 .