Skip to content

Commit a3b03c8

Browse files
committed
Automate build process
1 parent 2ca037d commit a3b03c8

File tree

4 files changed

+132
-0
lines changed

4 files changed

+132
-0
lines changed

.github/ISSUE_TEMPLATE/bug_report.md

Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,32 @@
1+
---
2+
name: Bug report
3+
about: Create a report to help us improve
4+
title: ''
5+
labels: ''
6+
assignees: ''
7+
8+
---
9+
10+
**Describe the bug**
11+
A clear and concise description of what the bug is.
12+
13+
**Steps To Reproduce**
14+
Steps to reproduce the behavior:
15+
1. Go to '...'
16+
2. Click on '....'
17+
3. Scroll down to '....'
18+
4. See error
19+
20+
**Expected behavior**
21+
A clear and concise description of what you expected to happen.
22+
23+
**Screenshots**
24+
If applicable, add screenshots to help explain your problem.
25+
26+
**Smartphone (please complete the following information):**
27+
- Device: [e.g. iPhone6]
28+
- OS: [e.g. iOS8.1]
29+
- Version [e.g. 22]
30+
31+
**Additional context**
32+
Add any other context about the problem here.
Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
---
2+
name: Feature request
3+
about: Suggest an idea for this project
4+
title: ''
5+
labels: ''
6+
assignees: ''
7+
8+
---
9+
10+
**Is your feature request related to a problem? Please describe.**
11+
A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]
12+
13+
**Describe the solution you'd like**
14+
A clear and concise description of what you want to happen.
15+
16+
**Describe alternatives you've considered**
17+
A clear and concise description of any alternative solutions or features you've considered.
18+
19+
**Additional context**
20+
Add any other context or screenshots about the feature request here.

.github/scripts/gradlew_recursive.sh

Lines changed: 36 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,36 @@
1+
#!/bin/bash
2+
3+
# Copyright (C) 2020 The Android Open Source Project
4+
#
5+
# Licensed under the Apache License, Version 2.0 (the "License");
6+
# you may not use this file except in compliance with the License.
7+
# You may obtain a copy of the License at
8+
#
9+
# https://www.apache.org/licenses/LICENSE-2.0
10+
#
11+
# Unless required by applicable law or agreed to in writing, software
12+
# distributed under the License is distributed on an "AS IS" BASIS,
13+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14+
# See the License for the specific language governing permissions and
15+
# limitations under the License.
16+
17+
set -xe
18+
19+
# Default Gradle settings are not optimal for Android builds, override them
20+
# here to make the most out of the GitHub Actions build servers
21+
GRADLE_OPTS="$GRADLE_OPTS -Xms4g -Xmx4g"
22+
GRADLE_OPTS="$GRADLE_OPTS -XX:+HeapDumpOnOutOfMemoryError"
23+
GRADLE_OPTS="$GRADLE_OPTS -Dorg.gradle.daemon=false"
24+
GRADLE_OPTS="$GRADLE_OPTS -Dorg.gradle.workers.max=2"
25+
GRADLE_OPTS="$GRADLE_OPTS -Dkotlin.incremental=false"
26+
GRADLE_OPTS="$GRADLE_OPTS -Dkotlin.compiler.execution.strategy=in-process"
27+
GRADLE_OPTS="$GRADLE_OPTS -Dfile.encoding=UTF-8"
28+
export GRADLE_OPTS
29+
30+
# Crawl all gradlew files which indicate an Android project
31+
# You may edit this if your repo has a different project structure
32+
for GRADLEW in `find . -name "gradlew"` ; do
33+
SAMPLE=$(dirname "${GRADLEW}")
34+
# Tell Gradle that this is a CI environment and disable parallel compilation
35+
bash "$GRADLEW" -p "$SAMPLE" -Pci --no-parallel --stacktrace $@
36+
done

.github/workflows/app-build.yml

Lines changed: 44 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,44 @@
1+
# Copyright (C) 2020 The Android Open Source Project
2+
#
3+
# Licensed under the Apache License, Version 2.0 (the "License");
4+
# you may not use this file except in compliance with the License.
5+
# You may obtain a copy of the License at
6+
#
7+
# https://www.apache.org/licenses/LICENSE-2.0
8+
#
9+
# Unless required by applicable law or agreed to in writing, software
10+
# distributed under the License is distributed on an "AS IS" BASIS,
11+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12+
# See the License for the specific language governing permissions and
13+
# limitations under the License.
14+
15+
name: Android CI
16+
17+
on:
18+
push:
19+
branches: [ main ]
20+
pull_request:
21+
branches: [ main ]
22+
23+
jobs:
24+
25+
build:
26+
name: Build
27+
runs-on: ubuntu-20.04
28+
29+
steps:
30+
- uses: actions/checkout@v1
31+
- name: set up JDK 11
32+
uses: actions/setup-java@v1
33+
with:
34+
java-version: 11
35+
- name: Build project
36+
run: chmod +x .github/scripts/gradlew_recursive.sh ; .github/scripts/gradlew_recursive.sh assembleDebug
37+
- name: Zip artifacts
38+
run: zip -r assemble.zip . -i '**/build/*.apk' '**/build/*.aab' '**/build/*.aar' '**/build/*.so'
39+
- name: Upload artifacts
40+
uses: actions/upload-artifact@v1
41+
with:
42+
name: assemble
43+
path: assemble.zip
44+

0 commit comments

Comments
 (0)