Skip to content

TWRP CI

TWRP CI #2

Workflow file for this run

name: TWRP CI
on:
workflow_dispatch:
jobs:
build:
name: TWRP Build CI
runs-on: ubuntu-20.04
env:
OEM: samsung
DEVICE: loganreltexx
BRANCH: twrp-6.0
steps:
- uses: actions/checkout@v2
- name: Installing build dependencies
run: |
sudo apt-get update
sudo apt-get install gperf gcc-multilib gcc-10-multilib g++-multilib g++-10-multilib libc6-dev lib32ncurses5-dev x11proto-core-dev libx11-dev tree lib32z-dev libgl1-mesa-dev libxml2-utils xsltproc bc ccache lib32readline-dev lib32z1-dev liblz4-tool libncurses5-dev libsdl1.2-dev libwxgtk3.0-gtk3-dev libxml2 lzop pngcrush schedtool squashfs-tools imagemagick libbz2-dev lzma ncftp qemu-user-static libstdc++-10-dev libncurses5 python axel
mkdir ~/.jdk_7
cd ~/.jdk_7
axel -q -n $(nproc --all) https://download.java.net/openjdk/jdk7u75/ri/openjdk-7u75-b13-linux-x64-18_dec_2014.tar.gz
tar -xzf openjdk-7u75-b13-linux-x64-18_dec_2014.tar.gz
sudo ln -f -s /usr/bin/python2.7 /usr/bin/python
- name: Syncing TWRP sources
run: |
mkdir ~/OFRP
cd ~/OFRP
mkdir ~/.bin
curl http://commondatastorage.googleapis.com/git-repo-downloads/repo > ~/.bin/repo
python3 ~/.bin/repo init --depth=1 -u https://github.com/minimal-manifest-twrp/platform_manifest_twrp_omni.git -b twrp-6.0
python3 ~/.bin/repo sync -c --force-sync --optimized-fetch --no-tags --no-clone-bundle --prune -j$(nproc --all)
git clone --depth=1 --branch cm-12.1 --single-branch https://github.com/unlegacy-devices/twrp_device_${{ env.OEM }}_${{ env.DEVICE }}.git device/${{ env.OEM }}/${{ env.DEVICE }}
git clone --depth=1 --branch android-6.0.1_r32 --single-branch https://android.googlesource.com/platform/prebuilts/gcc/linux-x86/arm/arm-eabi-4.8 /opt/toolchains/arm-eabi-4.8
git clone --depth=1 --branch cm-13.0 --single-branch https://github.com/MSM8930-Samsung/android_kernel_samsung_msm8930-common.git kernel/samsung/msm8930-common
- name: Building TWRP
run: |
OLDPATH=$PATH
OLDJAVAHOME=$JAVA_HOME
export PATH="$HOME/.jdk_7/java-se-7u75-ri/bin:$PATH"
export JAVA_HOME="$HOME/.jdk_7/java-se-7u75-ri"
cd ~/OFRP
source build/envsetup.sh
export ALLOW_MISSING_DEPENDENCIES=true
export LC_ALL="C"
lunch omni_${{ env.DEVICE }}-eng
make -j$(nproc --all) recoveryimage
export PATH=$OLDPATH
export JAVA_HOME=$OLDJAVAHOME
- name: Uploading TWRP builds
uses: actions/upload-artifact@v2
with:
name: twrp
path: /home/runner/OFRP/out/target/product/${{ env.DEVICE }}/recovery.*