Skip to content
Open
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
53 changes: 53 additions & 0 deletions .github/workflows/package_deploy.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,53 @@
name: Deploy Image to GitHub Packages

on:
push:
tags:
- '*'

env:
REGISTRY: ghcr.io
REPO_NAME: ${{ github.repository }}
IMAGE_VERSION: 0.0.2


jobs:
push_image:
runs-on: ubuntu-latest

steps:
- name: Checkout code
uses: actions/checkout@v2

- name: Lower case REPO_NAME
run: |
echo "REPO_NAME=$(echo $REPO_NAME | tr '[:upper:]' '[:lower:]')" >> $GITHUB_ENV

- name: Update Makefile Variables
run: |
sed -i "s#^REGISTRY=.*#REGISTRY=${REGISTRY}#" Makefile
sed -i "s#^REPO_NAME=.*#REPO_NAME=${REPO_NAME}#" Makefile
sed -i "s#^IMAGE_VERSION=.*#IMAGE_VERSION=${IMAGE_VERSION}#" Makefile

- name: Log in to the Container registry
uses: docker/login-action@v1
with:
registry: ${{ env.REGISTRY }}
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}

- name: Check Docker Image Existence
run: |
if docker pull "$REGISTRY/$REPO_NAME:$IMAGE_VERSION"; then
echo "Version already built $REGISTRY/$REPO_NAME:$IMAGE_VERSION, aborting." >&2
exit 1
fi

- name: Build Docker Image using Makefile
run: make build

- name: Push Image to GitHub Packages
run: |
echo "$REGISTRY/$REPO_NAME:$IMAGE_VERSION"
docker push "$REGISTRY/$REPO_NAME:$IMAGE_VERSION"
docker push "$REGISTRY/$REPO_NAME:latest"
3 changes: 2 additions & 1 deletion Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,8 @@ COPY downloads/ /downloads
COPY flutter-sdk/ /flutter-sdk

# extract stuff
RUN cd /flutter-sdk/android-sdk;\
RUN git config --global --add safe.directory /flutter-sdk/flutter;\
cd /flutter-sdk/android-sdk;\
unzip /downloads/android-sdk.zip;\
rm /downloads/android-sdk.zip;\
mkdir tmp;\
Expand Down
12 changes: 9 additions & 3 deletions Makefile
Original file line number Diff line number Diff line change
@@ -1,13 +1,19 @@
.PHONY: build prepare clean

FLUTTER_VERSION=1.22.2-stable
FLUTTER_DOWNLOAD_URL=https://storage.googleapis.com/flutter_infra/releases/stable/linux/flutter_linux_$(FLUTTER_VERSION).tar.xz
FLUTTER_VERSION=2.5.0-stable
FLUTTER_DOWNLOAD_URL=https://storage.googleapis.com/flutter_infra_release/releases/stable/linux/flutter_linux_$(FLUTTER_VERSION).tar.xz
ANDROID_SDKTOOLS_DOWNLOAD_URL=https://dl.google.com/android/repository/commandlinetools-linux-6858069_latest.zip


# these vars are assigned during GitHub Workflow - CI
IMAGE_VERSION=
REGISTRY=
REPO_NAME=

build: .build

.build: prepare Dockerfile
docker build .
docker build -t $(REGISTRY)/$(REPO_NAME):$(IMAGE_VERSION) -t $(REGISTRY)/$(REPO_NAME):latest .
touch .build

prepare: flutter-sdk/.keep flutter-sdk/android-sdk/.keep downloads/android-sdk.zip downloads/flutter-sdk.tar.xz
Expand Down
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# fastlane-linux-flutter-android-dockerimage
An image for eventual CI, using Fastlane for a Flutter build targetting Android

Please check at Docker Hub: https://hub.docker.com/repository/docker/jeffque/fastlane-linux-flutter-android
Choose a image at https://github.com/GeoSales-Evolution/fastlane-linux-flutter-android-dockerimage/pkgs/container/fastlane-linux-flutter-android-dockerimage