name: CI # Controls when the action will run. on: # Triggers the workflow on push or pull request events but only for the master branch push: branches: [ rc, master ] pull_request: branches: [ ] # Allows you to run this workflow manually from the Actions tab workflow_dispatch: # A workflow run is made up of one or more jobs that can run sequentially or in parallel jobs: # This workflow contains a single job called "build" linux: # The type of runner that the job will run on runs-on: ubuntu-latest steps: - uses: actions/checkout@v6 with: submodules: true - name: Set up JDK uses: actions/setup-java@v5 with: java-version: '17' distribution: 'temurin' cache: 'gradle' - name: apt run: sudo apt install device-tree-compiler p7zip-full android-sdk-libsparse-utils erofs-utils # Runs a single command using the runners shell - name: Unit Test run: ./gradlew check && ./gradlew clean || true # Runs a set of commands using the runners shell - name: Integration Test run: | ./integrationTest.py macos: runs-on: macos-latest steps: - uses: actions/checkout@v4 with: submodules: true - name: Set up JDK 17 uses: actions/setup-java@v4 with: distribution: temurin java-version: '17' - name: brew run: brew install dtc - name: Unit Test run: ./gradlew check && ./gradlew clean || true # Runs a set of commands using the runners shell - name: Integration Test run: ./integrationTest.py windows: runs-on: windows-latest steps: - uses: actions/checkout@v2 with: submodules: true - name: Set up JDK uses: actions/setup-java@v1 with: java-version: 17 - name: Set up Python uses: actions/setup-python@v2 with: python-version: '3.x' - name: Display Python version run: python -c "import sys; print(sys.version)" - name: choco run: choco install openssl dtc-msys2 zip vim gzip 7zip - name: Unit Test run: ./gradlew.bat check && ./gradlew.bat clean || true # Runs a set of commands using the runners shell - name: Integration Test run: python integrationTest.py