Skip to content

Commit 6f4002a

Browse files
committed
chore(ci): nuke unused android gh action
for PRs we use ci/Jenkinsfile.android, if you wish to perform a manual android build you may use https://ci.status.im/job/status-desktop/job/systems/job/android/job/arm64/job/package/build?delay=0sec
1 parent a30d7d6 commit 6f4002a

File tree

3 files changed

+46
-178
lines changed

3 files changed

+46
-178
lines changed

.github/workflows/android-build.yml

Lines changed: 0 additions & 161 deletions
This file was deleted.

mobile/ContainerBuilds.mk

Lines changed: 34 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -9,21 +9,47 @@ QT_MAJOR=$(shell echo $(QT_VERSION) | cut -d. -f1)
99
# arm: armeabi-v7a
1010
# x86_64: x86_64
1111
# x86: x86
12-
ARCH?=$(shell uname -m)
12+
ARCH?=arm64
13+
14+
# Use the same pre-built Docker image as CI (see ci/Jenkinsfile.android)
15+
DOCKER_IMAGE := harbor.status.im/status-im/status-desktop-build:1.0.6-qt$(QT_VERSION)-android
16+
17+
# Map architecture to Android ABI
18+
ifeq ($(ARCH), arm64)
19+
ANDROID_ABI := arm64-v8a
20+
else ifeq ($(ARCH), arm)
21+
ANDROID_ABI := armeabi-v7a
22+
else
23+
ANDROID_ABI := x86_64
24+
endif
25+
26+
# Package type (apk or aab)
27+
PACKAGE_TYPE?=apk
1328

1429
$(TARGET): $(STATUS_DESKTOP_NIM_FILES) $(STATUS_DESKTOP_UI_FILES) $(STATUS_Q_FILES) $(STATUS_Q_UI_FILES) $(STATUS_GO_FILES) $(DOTHERSIDE_FILES) $(OPENSSL_FILES) $(QRCODEGEN_FILES) $(WRAPPER_APP_FILES)
15-
@echo "Building GitHub task $(TARGET) for architecture $(ARCH)"
16-
act -j android-build --container-architecture linux/amd64 --artifact-server-path $(BIN_PATH) -W .github/workflows/android-build.yml --input architecture=$(ARCH) --input qt_version=$(QT_VERSION) -r
17-
@unzip -o $(BIN_PATH)/1/$(TARGET_PREFIX)/$(TARGET_PREFIX).zip -d $(BIN_PATH)
18-
touch $(TARGET)
30+
@echo "Building $(TARGET) for architecture $(ARCH) using Docker image $(DOCKER_IMAGE)"
31+
@mkdir -p $(BIN_PATH)
32+
@docker run --rm \
33+
--platform linux/amd64 \
34+
--entrypoint="" \
35+
-v $(ROOT_DIR)/..:/home/jenkins/workspace/status-desktop \
36+
-w /home/jenkins/workspace/status-desktop/mobile \
37+
-e ARCH=$(ARCH) \
38+
-e ANDROID_ABI=$(ANDROID_ABI) \
39+
-e QT_VERSION=$(QT_VERSION) \
40+
-e PACKAGE_TYPE=$(PACKAGE_TYPE) \
41+
-e MAKEFLAGS="-j$$(nproc) V=0" \
42+
$(DOCKER_IMAGE) \
43+
make ARCH=$(ARCH) PACKAGE_TYPE=$(PACKAGE_TYPE)
44+
@echo "Build completed: $(TARGET)"
45+
@touch $(TARGET)
1946

2047
run: $(TARGET)
21-
@echo "Running GitHub task"
48+
@echo "Running $(TARGET)"
2249
@APP=$(TARGET) QT_MAJOR=$(QT_MAJOR) ADB=$(shell which adb) EMULATOR=$(shell which emulator) AVDMANAGER=$(shell which avdmanager) SDKMANAGER=$(shell which sdkmanager) $(RUN_SCRIPT)
2350

2451
clean:
25-
@echo "Cleaning GitHub task"
26-
@docker rm -f $(shell docker ps -a --format '{{.Names}}' | grep Android-Build-APK)
52+
@echo "Cleaning container builds"
2753
@rm -rf $(ROOT_DIR)/bin $(ROOT_DIR)/build $(ROOT_DIR)/lib
2854

2955
default: $(TARGET)

mobile/README.md

Lines changed: 12 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,6 @@ This section is for users who want to get up and running quickly with minimal te
1717

1818
### Prerequisites
1919
- Docker
20-
- [act](https://github.com/nektos/act) (GitHub Actions local runner)
2120
- ADB (Android Debug Bridge)
2221
- Android Emulator
2322

@@ -30,7 +29,7 @@ This section is for users who want to get up and running quickly with minimal te
3029
brew install docker --cask
3130
# Start docker
3231
open -a Docker
33-
brew install act android-platform-tools android-commandlinetools xcbeautify
32+
brew install android-platform-tools android-commandlinetools xcbeautify
3433
```
3534

3635
```bash
@@ -47,24 +46,28 @@ sdkmanager --install \
4746
"system-images;android-35;google_apis;arm64-v8a"
4847
```
4948

50-
- Install [act](https://nektosact.com/installation/index.html)
51-
5249
2. **Verify installation:**
5350
```bash
51+
docker --version
5452
adb --version
5553
emulator --version
5654
avdmanager --version
5755
sdkmanager --version
58-
act --version
5956
```
6057

61-
2. **Running the app**
58+
3. **Building the app**
59+
```bash
60+
make -f mobile/ContainerBuilds.mk
61+
```
62+
63+
4. **Running the app**
6264
```bash
6365
# Linux and MacOS
6466
make -f mobile/ContainerBuilds.mk run
6567
```
6668

6769
### What Happens Behind the Scenes
68-
- The build process uses GitHub Actions containers to ensure consistent builds
69-
- All required tools and dependencies are provided by the container
70-
- The built APK is copied from the container to the local `bin` directory
70+
- The build process uses the same pre-built Docker image as the CI pipeline (`harbor.status.im/status-im/status-desktop-build:1.0.6-qt6.9.2-android`)
71+
- All required tools and dependencies (Qt 6.9.2, Android SDK/NDK, Go, Nim) are provided by the container
72+
- The container runs on linux/amd64 platform for consistency, even on ARM macOS machines
73+
- The built APK/AAB is available in the `mobile/bin/android/qt6/` directory

0 commit comments

Comments
 (0)