From 50302876c6d8694c8055b90dcec0558df0ffded5 Mon Sep 17 00:00:00 2001 From: Ilyar Date: Tue, 28 Apr 2020 22:31:39 +0300 Subject: [PATCH 1/8] test multi platform --- .github/workflows/build.yml | 6 +++--- Dockerfile.test | 28 ++++++++++++++++++++++++++++ Makefile | 12 ++++++++---- checksum.txt | 2 ++ 4 files changed, 41 insertions(+), 7 deletions(-) create mode 100644 Dockerfile.test diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 3e074af..ab07800 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -4,10 +4,9 @@ on: push: branches: - master - tags: - - '*' pull_request: - + branches: + - master jobs: build: @@ -22,6 +21,7 @@ jobs: - 1.14.2 platform: - { on: ubuntu-18.04, name: linux } + - { on: windows-2019, name: win } steps: - uses: actions/checkout@v2 diff --git a/Dockerfile.test b/Dockerfile.test new file mode 100644 index 0000000..64a1d5c --- /dev/null +++ b/Dockerfile.test @@ -0,0 +1,28 @@ +FROM openjdk:OPENJDK_VERSION + +# Get android sdk, ndk, and rest of the stuff needed to build the android app. +ENV ANDROID_SDK_ROOT /usr/lib/android-sdk +ENV ANDROID_NDK_HOME $ANDROID_SDK_ROOT/ndk/ANDROID_NDK_VERSION +ENV PATH $ANDROID_SDK_ROOT/tools/bin:$PATH +ENV PATH $ANDROID_SDK_ROOT/build-tools/ANDROID_BUILD_TOOLS_VERSION:$PATH +ENV PATH $ANDROID_SDK_ROOT/platform-tools:$PATH +RUN set -o errexit -o nounset &&\ + echo "Downloading ANDROID SDK TOOLS" &&\ + curl -sO https://dl.google.com/android/repository/ANDROID_SDK_TOOLS_FILENAME &&\ + echo "Checking download hash" &&\ + echo 'ANDROID_SDK_TOOLS_CHECKSUM ANDROID_SDK_TOOLS_FILENAME' | sha256sum -c &&\ + echo "Installing ANDROID SDK TOOLS" &&\ + unzip -d $ANDROID_SDK_ROOT ANDROID_SDK_TOOLS_FILENAME &&\ + rm ANDROID_SDK_TOOLS_FILENAME &&\ + yes | sdkmanager --sdk_root=$ANDROID_SDK_ROOT --licenses &&\ + sdkmanager --sdk_root=$ANDROID_SDK_ROOT --update &&\ + sdkmanager --sdk_root=$ANDROID_SDK_ROOT 'build-tools;ANDROID_BUILD_TOOLS_VERSION' + +RUN echo ${OSTYPE} + +LABEL maintainer="DockerWare.github.io" \ + openjdk.version="OPENJDK_VERSION" \ + gradle.version="GRADLE_VERSION" \ + android.ndk.version="ANDROID_NDK_VERSION" \ + android.sdk.tools.version="ANDROID_SDK_TOOLS_VERSION" \ + go.version="GO_VERSION" diff --git a/Makefile b/Makefile index 9969eb1..6ac7733 100644 --- a/Makefile +++ b/Makefile @@ -2,8 +2,7 @@ .PHONY: all all: build push -REPO ?= docker.pkg.github.com/dockerware/goapp/go-ndk - +REPO ?= docker.pkg.github.com/dockerware/goapp/test PLATFORM ?= linux ARCH ?= amd64 @@ -26,6 +25,11 @@ ANDROID_NDK_VERSION ?= 21.1.6352462 # r21b TAG ?= $(GO_VERSION)-$(ANDROID_NDK_VERSION) DOCKERFILE = Dockerfile.$(PLATFORM)-$(TAG) +.PHONY: say +say: + @echo $(ANDROID_SDK_TOOLS_FILENAME) + @echo $(shell < checksum.txt grep ${ANDROID_SDK_TOOLS_FILENAME} | cut -f1) + .PHONY: rebuild rebuild: clean build @@ -48,7 +52,7 @@ Dockerfile: $(DOCKERFILE) @rm -f Dockerfile ln -s $(DOCKERFILE) $(@) -$(DOCKERFILE): Dockerfile.in +$(DOCKERFILE): Dockerfile.test m4 \ -DOPENJDK_VERSION=$(OPENJDK_VERSION) \ -DGO_VERSION=$(GO_VERSION) \ @@ -64,4 +68,4 @@ $(DOCKERFILE): Dockerfile.in -DANDROID_COMPILE_SDK_VERSION=$(ANDROID_COMPILE_SDK_VERSION) \ -DANDROID_BUILD_TOOLS_VERSION=$(ANDROID_BUILD_TOOLS_VERSION) \ -DANDROID_NDK_VERSION=$(ANDROID_NDK_VERSION) \ - Dockerfile.in > $(@) + Dockerfile.test > $(@) diff --git a/checksum.txt b/checksum.txt index bc297fd..6cbf0a9 100644 --- a/checksum.txt +++ b/checksum.txt @@ -2,3 +2,5 @@ 8a4cbc9f2b95d114c38f6cbe94a45372d48c604b707db2057c787398dfbf8e7f go1.13.10.linux-amd64.tar.gz 038794feef1f4745c6347107b6726279d1c824f3fc634b60f86ace1e9fbd1768 gradle-6.3-bin.zip f10f9d5bca53cc27e2d210be2cbc7c0f1ee906ad9b868748d74d62e10f2c8275 commandlinetools-linux-6200805_latest.zip +8072ca0ad737eb3142793829a8682c685ae8a30a3b8f9b884fe8c617931af826 commandlinetools-win-6200805_latest.zip +23f0626336a98d70aff7311a73292026af31bc577c6f06b509cd4ad33752313e commandlinetools-mac-6200805_latest.zip From 33a2b71022c089f6fd2aa703a0dc3021a2a6351f Mon Sep 17 00:00:00 2001 From: Ilyar Date: Tue, 28 Apr 2020 22:32:28 +0300 Subject: [PATCH 2/8] test multi platform --- .github/workflows/build.yml | 1 - 1 file changed, 1 deletion(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index ab07800..049acd9 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -17,7 +17,6 @@ jobs: fail-fast: false matrix: go: - - 1.13.10 - 1.14.2 platform: - { on: ubuntu-18.04, name: linux } From 7b4563fc61b6f8e9b9b8889c861d6d95f55a6bc3 Mon Sep 17 00:00:00 2001 From: Ilyar Date: Tue, 28 Apr 2020 22:35:13 +0300 Subject: [PATCH 3/8] test multi platform --- Dockerfile | 1 + Dockerfile.win-1.14.2-21.1.6352462 | 30 ++++++++++++++++++++++++++++++ 2 files changed, 31 insertions(+) create mode 120000 Dockerfile create mode 100644 Dockerfile.win-1.14.2-21.1.6352462 diff --git a/Dockerfile b/Dockerfile new file mode 120000 index 0000000..0a48a01 --- /dev/null +++ b/Dockerfile @@ -0,0 +1 @@ +Dockerfile.win-1.14.2-21.1.6352462 \ No newline at end of file diff --git a/Dockerfile.win-1.14.2-21.1.6352462 b/Dockerfile.win-1.14.2-21.1.6352462 new file mode 100644 index 0000000..0aaf497 --- /dev/null +++ b/Dockerfile.win-1.14.2-21.1.6352462 @@ -0,0 +1,30 @@ +FROM openjdk:15 + +# Get android sdk, ndk, and rest of the stuff needed to build the android app. +ENV ANDROID_SDK_ROOT /usr/lib/android-sdk +ENV ANDROID_NDK_HOME $ANDROID_SDK_ROOT/ndk/21.1.6352462 +ENV PATH $ANDROID_SDK_ROOT/tools/bin:$PATH +ENV PATH $ANDROID_SDK_ROOT/build-tools/29.0.3:$PATH +ENV PATH $ANDROID_SDK_ROOT/platform-tools:$PATH +RUN set -o errexit -o nounset &&\ + echo "Downloading ANDROID SDK TOOLS" &&\ + curl -sO https://dl.google.com/android/repository/commandlinetools-win-6200805_latest.zip &&\ + echo "Checking download hash" &&\ + echo '8072ca0ad737eb3142793829a8682c685ae8a30a3b8f9b884fe8c617931af826 commandlinetools-win-6200805_latest.zip' | sha256sum -c &&\ + echo "Installing ANDROID SDK TOOLS" &&\ + unzip -d $ANDROID_SDK_ROOT commandlinetools-win-6200805_latest.zip &&\ + rm commandlinetools-win-6200805_latest.zip &&\ + yes | sdkmanager --sdk_root=$ANDROID_SDK_ROOT --licenses &&\ + sdkmanager --sdk_root=$ANDROID_SDK_ROOT --update &&\ + sdkmanager --sdk_root=$ANDROID_SDK_ROOT 'build-tools;29.0.3' &&\ + sdkmanager --sdk_root=$ANDROID_SDK_ROOT 'platform-tools' &&\ + sdkmanager --sdk_root=$ANDROID_SDK_ROOT 'ndk;21.1.6352462' + +RUN echo ${OSTYPE} + +LABEL maintainer="DockerWare.github.io" \ + openjdk.version="15" \ + gradle.version="6.3" \ + android.ndk.version="21.1.6352462" \ + android.sdk.tools.version="6200805" \ + go.version="1.14.2" From 07f8385945317894d865d7641db25d0aa59073f7 Mon Sep 17 00:00:00 2001 From: Ilyar Date: Tue, 28 Apr 2020 22:40:14 +0300 Subject: [PATCH 4/8] test multi platform --- Dockerfile | 11 ++++++++++- Dockerfile.win-1.14.2-21.1.6352462 | 30 ------------------------------ Makefile | 11 ++++++++++- 3 files changed, 20 insertions(+), 32 deletions(-) mode change 120000 => 100644 Dockerfile delete mode 100644 Dockerfile.win-1.14.2-21.1.6352462 diff --git a/Dockerfile b/Dockerfile deleted file mode 120000 index 0a48a01..0000000 --- a/Dockerfile +++ /dev/null @@ -1 +0,0 @@ -Dockerfile.win-1.14.2-21.1.6352462 \ No newline at end of file diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 0000000..fbea648 --- /dev/null +++ b/Dockerfile @@ -0,0 +1,10 @@ +FROM openjdk:15 + +RUN echo ${OSTYPE} + +LABEL maintainer="DockerWare.github.io" \ + openjdk.version="15" \ + gradle.version="6.3" \ + android.ndk.version="21.1.6352462" \ + android.sdk.tools.version="6200805" \ + go.version="1.14.2" diff --git a/Dockerfile.win-1.14.2-21.1.6352462 b/Dockerfile.win-1.14.2-21.1.6352462 deleted file mode 100644 index 0aaf497..0000000 --- a/Dockerfile.win-1.14.2-21.1.6352462 +++ /dev/null @@ -1,30 +0,0 @@ -FROM openjdk:15 - -# Get android sdk, ndk, and rest of the stuff needed to build the android app. -ENV ANDROID_SDK_ROOT /usr/lib/android-sdk -ENV ANDROID_NDK_HOME $ANDROID_SDK_ROOT/ndk/21.1.6352462 -ENV PATH $ANDROID_SDK_ROOT/tools/bin:$PATH -ENV PATH $ANDROID_SDK_ROOT/build-tools/29.0.3:$PATH -ENV PATH $ANDROID_SDK_ROOT/platform-tools:$PATH -RUN set -o errexit -o nounset &&\ - echo "Downloading ANDROID SDK TOOLS" &&\ - curl -sO https://dl.google.com/android/repository/commandlinetools-win-6200805_latest.zip &&\ - echo "Checking download hash" &&\ - echo '8072ca0ad737eb3142793829a8682c685ae8a30a3b8f9b884fe8c617931af826 commandlinetools-win-6200805_latest.zip' | sha256sum -c &&\ - echo "Installing ANDROID SDK TOOLS" &&\ - unzip -d $ANDROID_SDK_ROOT commandlinetools-win-6200805_latest.zip &&\ - rm commandlinetools-win-6200805_latest.zip &&\ - yes | sdkmanager --sdk_root=$ANDROID_SDK_ROOT --licenses &&\ - sdkmanager --sdk_root=$ANDROID_SDK_ROOT --update &&\ - sdkmanager --sdk_root=$ANDROID_SDK_ROOT 'build-tools;29.0.3' &&\ - sdkmanager --sdk_root=$ANDROID_SDK_ROOT 'platform-tools' &&\ - sdkmanager --sdk_root=$ANDROID_SDK_ROOT 'ndk;21.1.6352462' - -RUN echo ${OSTYPE} - -LABEL maintainer="DockerWare.github.io" \ - openjdk.version="15" \ - gradle.version="6.3" \ - android.ndk.version="21.1.6352462" \ - android.sdk.tools.version="6200805" \ - go.version="1.14.2" diff --git a/Makefile b/Makefile index 6ac7733..7640bde 100644 --- a/Makefile +++ b/Makefile @@ -25,6 +25,15 @@ ANDROID_NDK_VERSION ?= 21.1.6352462 # r21b TAG ?= $(GO_VERSION)-$(ANDROID_NDK_VERSION) DOCKERFILE = Dockerfile.$(PLATFORM)-$(TAG) + +b: Dockerfile + docker build \ + --tag $(REPO) \ + . + +push: b + docker push $(REPO):$(TAG) + .PHONY: say say: @echo $(ANDROID_SDK_TOOLS_FILENAME) @@ -41,7 +50,7 @@ build: Dockerfile --tag $(REPO):$(TAG) . .PHONY: push -push: build +push-off: build docker push $(REPO):$(TAG) .PHONY: clean From 7f2138ff1acbe87ffa942e0686076a6f56111252 Mon Sep 17 00:00:00 2001 From: Ilyar Date: Tue, 28 Apr 2020 22:42:23 +0300 Subject: [PATCH 5/8] test multi platform --- Makefile | 49 ++----------------------------------------------- 1 file changed, 2 insertions(+), 47 deletions(-) diff --git a/Makefile b/Makefile index 7640bde..03acb03 100644 --- a/Makefile +++ b/Makefile @@ -26,55 +26,10 @@ TAG ?= $(GO_VERSION)-$(ANDROID_NDK_VERSION) DOCKERFILE = Dockerfile.$(PLATFORM)-$(TAG) -b: Dockerfile - docker build \ - --tag $(REPO) \ - . - -push: b - docker push $(REPO):$(TAG) - -.PHONY: say -say: - @echo $(ANDROID_SDK_TOOLS_FILENAME) - @echo $(shell < checksum.txt grep ${ANDROID_SDK_TOOLS_FILENAME} | cut -f1) - -.PHONY: rebuild -rebuild: clean build - -.PHONY: build build: Dockerfile docker build \ - --force-rm \ --tag $(REPO) \ - --tag $(REPO):$(TAG) . + . -.PHONY: push -push-off: build +push: build docker push $(REPO):$(TAG) - -.PHONY: clean -clean: - rm -f Dockerfile $(DOCKERFILE) - -Dockerfile: $(DOCKERFILE) - @rm -f Dockerfile - ln -s $(DOCKERFILE) $(@) - -$(DOCKERFILE): Dockerfile.test - m4 \ - -DOPENJDK_VERSION=$(OPENJDK_VERSION) \ - -DGO_VERSION=$(GO_VERSION) \ - -DGO_CHECKSUM=$(shell < checksum.txt grep ${GO_FILENAME} | cut -f1) \ - -DGO_FILENAME=$(GO_FILENAME) \ - -DGOMOBILE_VERSION=$(GOMOBILE_VERSION) \ - -DGRADLE_VERSION=$(GRADLE_VERSION) \ - -DGRADLE_CHECKSUM=$(shell < checksum.txt grep ${GRADLE_FILENAME} | cut -f1) \ - -DGRADLE_FILENAME=$(GRADLE_FILENAME) \ - -DANDROID_SDK_TOOLS_VERSION=$(ANDROID_SDK_TOOLS_VERSION) \ - -DANDROID_SDK_TOOLS_CHECKSUM=$(shell < checksum.txt grep ${ANDROID_SDK_TOOLS_FILENAME} | cut -f1) \ - -DANDROID_SDK_TOOLS_FILENAME=$(ANDROID_SDK_TOOLS_FILENAME) \ - -DANDROID_COMPILE_SDK_VERSION=$(ANDROID_COMPILE_SDK_VERSION) \ - -DANDROID_BUILD_TOOLS_VERSION=$(ANDROID_BUILD_TOOLS_VERSION) \ - -DANDROID_NDK_VERSION=$(ANDROID_NDK_VERSION) \ - Dockerfile.test > $(@) From be3bfaae002dea49727fa652ced755b981e64054 Mon Sep 17 00:00:00 2001 From: Ilyar Date: Tue, 28 Apr 2020 22:47:00 +0300 Subject: [PATCH 6/8] test multi platform --- Makefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Makefile b/Makefile index 03acb03..4ab068c 100644 --- a/Makefile +++ b/Makefile @@ -32,4 +32,4 @@ build: Dockerfile . push: build - docker push $(REPO):$(TAG) + docker push $(REPO) From 82fb6251fc3b4351cde5d8072261d0e2848103a2 Mon Sep 17 00:00:00 2001 From: Ilyar Date: Tue, 28 Apr 2020 22:59:07 +0300 Subject: [PATCH 7/8] test multi platform --- Dockerfile | 9 ++------- Makefile | 6 +++--- 2 files changed, 5 insertions(+), 10 deletions(-) diff --git a/Dockerfile b/Dockerfile index fbea648..fbc99da 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,10 +1,5 @@ FROM openjdk:15 -RUN echo ${OSTYPE} +RUN set -o errexit -o nounset && echo "OSTYPE:${OSTYPE}" -LABEL maintainer="DockerWare.github.io" \ - openjdk.version="15" \ - gradle.version="6.3" \ - android.ndk.version="21.1.6352462" \ - android.sdk.tools.version="6200805" \ - go.version="1.14.2" +LABEL maintainer="DockerWare.github.io" diff --git a/Makefile b/Makefile index 4ab068c..7cab9a3 100644 --- a/Makefile +++ b/Makefile @@ -22,14 +22,14 @@ ANDROID_COMPILE_SDK_VERSION ?= 29 ANDROID_BUILD_TOOLS_VERSION ?= 29.0.3 ANDROID_NDK_VERSION ?= 21.1.6352462 # r21b -TAG ?= $(GO_VERSION)-$(ANDROID_NDK_VERSION) +TAG ?= $(PLATFORM) DOCKERFILE = Dockerfile.$(PLATFORM)-$(TAG) build: Dockerfile docker build \ - --tag $(REPO) \ + --tag $(REPO):$(TAG) \ . push: build - docker push $(REPO) + docker push $(REPO):$(TAG) From 3736ba6da5970fb7e330265996662ba42232ab4c Mon Sep 17 00:00:00 2001 From: Ilyar Date: Tue, 28 Apr 2020 23:02:14 +0300 Subject: [PATCH 8/8] test multi platform --- Makefile | 1 + 1 file changed, 1 insertion(+) diff --git a/Makefile b/Makefile index 7cab9a3..51fccc4 100644 --- a/Makefile +++ b/Makefile @@ -1,3 +1,4 @@ +SHELL = /bin/bash -o pipefail .SUFFIXES: .PHONY: all all: build push