Skip to content
Snippets Groups Projects

Compare revisions

Changes are shown as if the source revision was being merged into the target revision. Learn more about comparing revisions.

Source

Select target project
No results found

Target

Select target project
  • docker-images/flutter/flutter-base
1 result
Show changes
Commits on Source (4)
......@@ -3,20 +3,17 @@ include:
ref: master
file: docker_hub.gitlab-ci.yml
.build_flutter_base:
extends: .build_image_job_template
variables:
BUILD_ARGS: FLUTTER_VERSION=${VERSION}
variables:
IMAGE_BASENAME: ${IMAGE_PREFIX}/flutter
.build_old_flutter_base:
extends: .build_old_version
.build_flutter_base:
variables:
BUILD_ARGS: FLUTTER_VERSION=${VERSION}
"3.24.5":
extends: .build_flutter_base
extends:
- .build_flutter_base
- .build_image_job_template
variables:
DOCKER_BUILDX_PLATFORMS: linux/amd64
IMAGE_BASENAME: ${IMAGE_PREFIX}/flutter
VERSION: 3.24.5
IMAGE_NAME: ${IMAGE_BASENAME}:${VERSION},${IMAGE_BASENAME}:3.24,${IMAGE_BASENAME}:3
......@@ -13,6 +13,19 @@
".",
],
},
{
"label": "buildx build",
"command": "docker",
"args": [
"buildx",
"build",
"--build-arg",
"FLUTTER_VERSION=${input:flutterVersion}",
"--platform",
"linux/arm64,linux/amd64",
".",
],
},
],
"inputs": [
{
......
......@@ -13,11 +13,32 @@ ARG FLUTTER_DIR="$DEPENDENCY_DIR/${FLUTTER_DIR}"
ARG FLUTTER_DOWNLOAD_FILE="flutter.tar.xz"
RUN apt update \
&& apt install -y wget xz-utils
&& apt install -y wget xz-utils git unzip
RUN mkdir -p ${FLUTTER_DIR} \
&& wget https://storage.googleapis.com/flutter_infra_release/releases/stable/linux/flutter_linux_${FLUTTER_VERSION}-stable.tar.xz -O ${FLUTTER_DOWNLOAD_FILE} \
&& tar -xf ${FLUTTER_DOWNLOAD_FILE} --strip-components=1 --directory $FLUTTER_DIR
RUN mkdir -p ${FLUTTER_DIR}
RUN if [ "$(uname -m)" = "x86_64" ]; then \
wget https://storage.googleapis.com/flutter_infra_release/releases/stable/linux/flutter_linux_${FLUTTER_VERSION}-stable.tar.xz -O ${FLUTTER_DOWNLOAD_FILE} \
&& tar -xf ${FLUTTER_DOWNLOAD_FILE} --strip-components=1 --directory $FLUTTER_DIR; \
fi
# There is no official flutter arm64 release, so we must use the github repo
# Flutter on arch currently has warnings because channel and repository source are not set
RUN if [ "$(uname -m)" = "aarch64" ]; then \
git clone --depth 1 https://github.com/flutter/flutter.git ${FLUTTER_DIR} \
&& cd ${FLUTTER_DIR} \
&& git fetch origin tag ${FLUTTER_VERSION} \
&& git checkout tags/${FLUTTER_VERSION} \
&& DART_SDK_PATH="${FLUTTER_DIR}/bin/cache/dart-sdk" \
&& ENGINE_REALM=$(cat "${FLUTTER_DIR}/bin/internal/engine.realm" | tr -d '[:space:]') \
&& ENGINE_VERSION=$(cat "${FLUTTER_DIR}/bin/internal/engine.version") \
&& DART_ZIP_NAME="dart-sdk-linux-arm64.zip" \
&& wget "https://storage.googleapis.com/flutter_infra_release/flutter/${ENGINE_VERSION}/${DART_ZIP_NAME}" -O ${DART_ZIP_NAME} \
&& unzip -o -q "${DART_ZIP_NAME}" -d "${FLUTTER_DIR}/bin/cache" \
&& /usr/bin/find "${DART_SDK_PATH}" -type d -exec chmod 755 {} \; \
&& /usr/bin/find "${DART_SDK_PATH}" -type f -perm /u+x -exec chmod a+x,a+r {} \; \
&& echo "${ENGINE_VERSION}" > "${FLUTTER_DIR}/bin/cache/engine-dart-sdk.stamp"; \
fi
FROM alpine:3.20.3
......