Skip to content

Making Android SDK folder writeable for the user #32

Making Android SDK folder writeable for the user

Making Android SDK folder writeable for the user #32

name: post_merge_deploy
on:
push:
branches:
- main
env:
TERM: dumb
jobs:
build_base:
runs-on: ubuntu-24.04
steps:
- uses: actions/[email protected]
- name: Log in to Docker Hub
uses: docker/[email protected]
with:
username: ${{ secrets.DOCKER_USER }}
password: ${{ secrets.DOCKER_PASS }}
- name: Log in to the Container registry
uses: docker/[email protected]
with:
registry: ghcr.io
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}
- name: Set versions
uses: tw3lveparsecs/github-actions-set-variables@latest
with:
envFilePath: .github/versions.env
- name: base image
env:
IMAGE_NAME: android_base
DOCKER_FILE_PATH: android_base/.
SQUASH_IMAGE: NO
run: |
./.github/docker_build_image.sh
./.github/docker_push_image.sh
- name: generic image
env:
IMAGE_NAME: android
DOCKER_FILE_PATH: .
run: |
./.github/docker_build_image.sh
./.github/docker_push_image.sh
build_specialized_images:
strategy:
matrix:
type: [android_ndk, android_bazel]
include:
- type: android_ndk
squash: NO
- type: android_bazel
squash: NO
runs-on: ubuntu-24.04
needs:
- build_base
env:
IMAGE_NAME: ${{ matrix.type }}
DOCKER_FILE_PATH: ${{ matrix.type }}/.
SQUASH_IMAGE: ${{ matrix.squash }}
steps:
- uses: actions/[email protected]
- name: Log in to Docker Hub
uses: docker/[email protected]
with:
username: ${{ secrets.DOCKER_USER }}
password: ${{ secrets.DOCKER_PASS }}
- name: Log in to the Container registry
uses: docker/[email protected]
with:
registry: ghcr.io
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}
- name: Set versions
uses: tw3lveparsecs/github-actions-set-variables@latest
with:
envFilePath: .github/versions.env
- run: ./.github/docker_build_image.sh
- run: ./.github/docker_push_image.sh
build_dev_image:
runs-on: ubuntu-24.04
needs:
- build_specialized_images
env:
IMAGE_NAME: android_dev
DOCKER_FILE_PATH: android_dev/.
SQUASH_IMAGE: NO
steps:
- uses: actions/[email protected]
- name: Log in to Docker Hub
uses: docker/[email protected]
with:
username: ${{ secrets.DOCKER_USER }}
password: ${{ secrets.DOCKER_PASS }}
- name: Log in to the Container registry
uses: docker/[email protected]
with:
registry: ghcr.io
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}
- name: Set versions
uses: tw3lveparsecs/github-actions-set-variables@latest
with:
envFilePath: .github/versions.env
- run: ./.github/docker_build_image.sh
- run: ./.github/docker_push_image.sh
green:
runs-on: ubuntu-24.04
needs:
- build_dev_image
steps:
- name: ready
run: echo "DONE"
tag_at_repo:
runs-on: ubuntu-24.04
needs:
- green
steps:
- uses: actions/[email protected]
- name: Set versions
uses: tw3lveparsecs/github-actions-set-variables@latest
with:
envFilePath: .github/versions.env
- uses: avakar/tag-and-release@v1
with:
tag_name: ${{ env.IMAGE_VERSION }}
body: >
**Base**: image with JDK17, Android SDK Manager ([Dockerfile](https://github.com/menny/docker_android/blob/${{ env.IMAGE_VERSION }}/android_base/Dockerfile)):<br/>
```
docker pull ghcr.io/menny/android_base:${{ env.IMAGE_VERSION }}
```<br/>
<br/>
**Android**: Base + Build Tools, Platform level 35 ([Dockerfile](https://github.com/menny/docker_android/blob/${{ env.IMAGE_VERSION }}/Dockerfile)):<br/>
```
docker pull ghcr.io/menny/android:${{ env.IMAGE_VERSION }}
```<br/>
<br/>
**NDK**: Android + NDK ${{ env.NDK_VERSION }} ([Dockerfile](https://github.com/menny/docker_android/blob/${{ env.IMAGE_VERSION }}/android_ndk/Dockerfile)):<br/>
```
docker pull ghcr.io/menny/android_ndk:${{ env.IMAGE_VERSION }}
```<br/>
<br/>
**Bazel**: Android + Bazelisk ${{ env.BAZELISK_VERSION }} and Go ([Dockerfile](https://github.com/menny/docker_android/blob/${{ env.IMAGE_VERSION }}/android_bazel/Dockerfile)):<br/>
```
docker pull ghcr.io/menny/android_bazel:${{ env.IMAGE_VERSION }}
```
<br/>
**Dev**: Bazel + node, pnpm, zsh, oh-my-zsh, and gemini-cli ([Dockerfile](https://github.com/menny/docker_android/blob/${{ env.IMAGE_VERSION }}/android_dev/Dockerfile)):<br/>
```
docker pull ghcr.io/menny/android_dev:${{ env.IMAGE_VERSION }}
```
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}