Skip to content

LineageOS Builder

LineageOS Builder #4

Workflow file for this run

name: LineageOS Builder
on:
workflow_dispatch:
jobs:
test:
name: Build LineageOS using foss.crave.io
runs-on: self-hosted
steps:
- name: Cleanup
run: rm -rf *
- name: Create workspace
run: mkdir LineageOS21
continue-on-error: true
- name: Enter Workspace
run: cd LineageOS21
continue-on-error: true
# Check-out in order to access the repository's files.
- name: Check-out to repository
uses: actions/checkout@v4
- name: Test Local Manifests
run: |
rm -rf tester || true
mkdir tester
cd tester
repo init -u https://github.com/LineageOS/android.git -b lineage-20.0 --git-lfs --depth=1 && \
git clone https://github.com/IMYdev/local_manifest.git --depth 1 -b main .repo/local_manifests && \
timeout 1m repo sync --force-sync || { exit_code=$?; [ $exit_code -eq 124 ] || (echo "Error: Process failed with exit code $exit_code"; exit $exit_code); }
timeout-minutes: 10
- name: Exports
run: |
export BUILD_HOSTNAME=crave
export BUILD_USERNAME=lion-development
- name: Run Script
run: bash build.sh
# Only reach this when the user killed the workflow.
- name: Execute if the job is cancelled
if: ${{ cancelled() }}
run: crave stop --all
- name: Telegram Notification
if: ${{ success() || cancelled() || failure() }}
continue-on-error: true
uses: xinthink/[email protected]
with:
chatId: ${{ secrets.TELEGRAM_TO }}
botToken: ${{ secrets.TELEGRAM_TOKEN }}
jobStatus: ${{ job.status }}
- name: Find output file
run: |
mv */*.zip .
- name: Upload to Release
uses: softprops/action-gh-release@v1
with:
files: |
*.zip
name: LineageOS-${{ github.run_id }}
tag_name: ${{ github.run_id }}
body: |
Target: LineageOS 21 for Lion
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}