Skip to content

Commit

Permalink
workflow: introducing automation
Browse files Browse the repository at this point in the history
  • Loading branch information
corsicanu committed Mar 11, 2022
1 parent f16d970 commit 0514c30
Showing 1 changed file with 101 additions and 0 deletions.
101 changes: 101 additions & 0 deletions .github/workflows/main.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,101 @@
name: 9830 twrp prebuilts build process

on:
workflow_dispatch:
push:
branches: [ android-11.0 ]

jobs:
build:
runs-on: ubuntu-18.04
if: "!contains(github.event.head_commit.message, '[ci skip]')"

steps:
- name: Checkout kernel repo
uses: actions/checkout@v2
with:
ref: 'android-11.0'
token: ${{ secrets.TOKEN }}

- name: Install dependencies
run: |
sudo apt-get update
sudo apt-get install -y zip tar
- name: Set up environment
id: toolchains
run: |
rm -rf hk-out
mkdir -p hk-out hk-tools/clang-twrp hk-tools/aarch64-linux-android && cd hk-tools && pwd
sudo curl -L https://corsica.nu/gcc4.9 | tar -xz -C aarch64-linux-android
sudo curl -L https://corsica.nu/clang-twrp | tar -xz -C clang-twrp
toolchains=$(pwd) && cd ..
sudo wget -O /usr/bin/mkdtimg https://corsica.nu/mkdtimg && sudo chmod +x /usr/bin/mkdtimg
echo ::set-output name=clang::"$toolchains/clang-twrp/bin"
echo ::set-output name=gcc::"$toolchains/aarch64-linux-android/bin/aarch64-linux-android-"
- name: Checkout configs repo
uses: actions/checkout@v2
with:
repository: corsicanu/dtconfigs
token: ${{ secrets.TOKEN }}
path: hk-out/dtconfigs

- name: Build everything
run: |
jobs=16
export ARCH=arm64
export SUBARCH=arm64
export ANDROID_MAJOR_VERSION=r
export PLATFORM_VERSION=11
export CLANG_PATH=${{ steps.toolchains.outputs.clang }}
export CLANG_TRIPLE=aarch64-linux-gnu-
export CROSS_COMPILE=${{ steps.toolchains.outputs.gcc }}
export PATH=${CLANG_PATH}:${PATH}
combo=(x1s c1s y2s c2s z3s)
for variant in ${combo[@]}; do
rm -rf .version
unset LOCALVERSION
mkdir -p hk-out/$variant/prebuilt
make CC=clang ARCH=arm64 exynos9830-"$variant"_defconfig
make CC=clang ARCH=arm64 -j$jobs
cp -r arch/arm64/boot/Image hk-out/$variant/prebuilt/kernel
mkdtimg cfg_create hk-out/$variant/prebuilt/dtbo hk-out/dtconfigs/$variant.cfg -d arch/arm64/boot/dts/samsung
mkdtimg cfg_create hk-out/$variant/prebuilt/dtb hk-out/dtconfigs/exynos9830.cfg -d arch/arm64/boot/dts/exynos
done
rm -rf hk-out/dtconfigs
- name: Generate release file
id: files
run: |
basedir=$(pwd)
tag=$(date +'%Y%m%d%H%M%S')
date=$(date +'%d-%m-%Y')
cd hk-out && zip -r prebuilts.zip * && cd $basedir
echo ::set-output name=zip::`find -name prebuilts.zip`
echo ::set-output name=tag::$tag
echo ::set-output name=date::$date
- name: Update current version and create log
run: |
git config --local user.email "41898282+github-actions[bot]@users.noreply.github.com"
git config --local user.name "github-actions[bot]"
git pull origin ${{github.ref}} --ff-only
git tag ${{ steps.files.outputs.tag }}
- name: Push changes to repo
uses: ad-m/github-push-action@master
with:
tags: true
github_token: ${{ secrets.TOKEN }}
branch: ${{github.ref}}

- name: Upload release assets
uses: softprops/action-gh-release@v1
env:
GITHUB_TOKEN: ${{ secrets.TOKEN }}
with:
tag_name: ${{ steps.files.outputs.tag }}
name: Prebuilts of ${{ steps.files.outputs.date }}
files: |
${{ steps.files.outputs.zip }}

0 comments on commit 0514c30

Please sign in to comment.