Skip to content

PR check - Android Emulator #43

PR check - Android Emulator

PR check - Android Emulator #43

Workflow file for this run

name: PR check - Android Emulator
on:
push:
branches:
- feature/AND-11412_setup_tests_on_ci
workflow_dispatch:
jobs:
build_and_publish:
name: Build and publish
runs-on: [ self-hosted, X64 ]
outputs:
version_name: ${{ steps.get_version_name.outputs.versionName }}
version_code: ${{ steps.get_version_code.outputs.versionCode }}
steps:
- name: Clean workspace
run: |
echo "Cleaning workspace: $(pwd)"
rm -rf ./* .[^.]* .??*
- name: Checkout
uses: actions/checkout@v4
with:
submodules: true
token: ${{ secrets.GH_MOBILE_PAT }}
fetch-depth: 0
- name: Increment version code
id: get_version_code
env:
RUN_NUMBER: ${{ github.run_number }}
INITIAL_VERSION_CODE: 1050
run: |
VERSION_CODE=$((RUN_NUMBER + INITIAL_VERSION_CODE))
echo "versionCode=$VERSION_CODE" >> $GITHUB_OUTPUT
- name: Get version name from branch name
id: get_version_name
run: |
BRANCH=${{ github.ref_name }}
if [[ "$BRANCH" =~ ^(releases|hotfix)/([0-9]+)\.([0-9]+)(\.[0-9]+)?$ ]]; then
MAJOR=${BASH_REMATCH[2]}
MINOR=${BASH_REMATCH[3]}
PATCH=${BASH_REMATCH[4]:-.0}
VERSION="${MAJOR}.${MINOR}${PATCH}"
else
./tangem-android-tools/CI/shell_scripts/find-latest-release-branch.sh origin/$BRANCH
LATEST_BRANCH=$(< 'find-latest-release-branch.output')
if [[ "$LATEST_BRANCH" =~ releases/([0-9]+)\.([0-9]+) ]]; then
MAJOR=${BASH_REMATCH[1]}
MINOR=${BASH_REMATCH[2]}
NEW_MINOR=$((MINOR + 1))
VERSION="${MAJOR}.${NEW_MINOR}.0"
else
echo "Failed to get version"
exit 1
fi
fi
echo "versionName=$VERSION"
echo "versionName=$VERSION" >> $GITHUB_OUTPUT
- name: Build Docker image
run: |
docker build --platform linux/x86_64 -t tangem_ci_android_environment_x86_64 -f ci_resources/Dockerfile.android.x64 .
- name: Build internal
id: build
env:
GITHUB_TOKEN: ${{ secrets.GH_MOBILE_PAT }}
GITHUB_ACTOR: ${{ secrets.GITHUB_ACTOR }}
version_code: ${{ steps.get_version_code.outputs.versionCode }}
version_name: ${{ steps.get_version_name.outputs.versionName }}
run: |
env > .env
docker run --rm \
--user ubuntu \
--env-file .env \
--volume ~/.gradle:/home/ubuntu/.gradle \
--volume ${{ github.workspace }}:/workspace \
tangem_ci_android_environment_x86_64 \
bash -c '
cd /workspace;
fastlane buildInternal;
'