Skip to content

[Android] Fix: Truncate a file's data explicitly when overwriting a file on Android. #34

[Android] Fix: Truncate a file's data explicitly when overwriting a file on Android.

[Android] Fix: Truncate a file's data explicitly when overwriting a file on Android. #34

Workflow file for this run

name: ⚗️ FileKit CI
on:
push:
branches: [ main ]
pull_request:
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
jobs:
build:
name: 💆‍♀️ Build FileKit
runs-on: ubuntu-latest
steps:
- name: 🛎️ Check out repository
uses: actions/checkout@v6
- name: 🍉 Configure JDK 21
uses: actions/setup-java@v5
with:
distribution: 'temurin'
java-version: '21'
- name: 🐘 Setup Gradle
uses: gradle/actions/setup-gradle@v5
- name: 🔨 Build project
run: ./gradlew assemble
test-desktop:
name: 🖥️ Test Desktop
needs: build
strategy:
matrix:
os: [ubuntu-latest, windows-latest, macos-latest]
runs-on: ${{ matrix.os }}
steps:
- name: 🛎️ Check out repository
uses: actions/checkout@v6
- name: 🍉 Configure JDK 21
uses: actions/setup-java@v5
with:
distribution: 'temurin'
java-version: '21'
- name: 🐘 Setup Gradle
uses: gradle/actions/setup-gradle@v5
- name: 🧪 Run JVM Tests
run: ./gradlew jvmTest
test-android:
name: 🤖 Test Android
needs: build
runs-on: ubuntu-latest
steps:
- name: 🛎️ Check out repository
uses: actions/checkout@v6
- name: 🍉 Configure JDK 21
uses: actions/setup-java@v5
with:
distribution: 'temurin'
java-version: '21'
- name: 🐘 Setup Gradle
uses: gradle/actions/setup-gradle@v5
- name: 🧪 Run Android Unit Tests
run: ./gradlew testAndroidHostTest
test-ios:
name: 🍎 Test iOS
needs: build
runs-on: macos-latest
steps:
- name: 🛎️ Check out repository
uses: actions/checkout@v6
- name: 🍉 Configure JDK 21
uses: actions/setup-java@v5
with:
distribution: 'temurin'
java-version: '21'
- name: 🐘 Setup Gradle
uses: gradle/actions/setup-gradle@v5
- name: 🧪 Run iOS Tests
run: ./gradlew iosSimulatorArm64Test
test-macos:
name: 🍏 Test macOS
needs: build
runs-on: macos-latest
steps:
- name: 🛎️ Check out repository
uses: actions/checkout@v6
- name: 🍉 Configure JDK 21
uses: actions/setup-java@v5
with:
distribution: 'temurin'
java-version: '21'
- name: 🐘 Setup Gradle
uses: gradle/actions/setup-gradle@v5
- name: 🧪 Run macOS Tests
run: ./gradlew macosArm64Test
lint:
name: 🚨 Lint
runs-on: ubuntu-latest
steps:
- name: 🛎️ Check out repository
uses: actions/checkout@v6
- name: 🍉 Configure JDK 21
uses: actions/setup-java@v5
with:
distribution: 'temurin'
java-version: '21'
- name: 📥 Download ktlint
run: |
curl -sSLO https://github.com/pinterest/ktlint/releases/download/1.8.0/ktlint
chmod a+x ktlint
sudo mv ktlint /usr/local/bin/
- name: 👮 Download ktlint-compose rules
run: curl -sSLO https://github.com/mrmans0n/compose-rules/releases/download/v0.4.28/ktlint-compose-0.4.28-all.jar
- name: 🚨 Run ktlint
run: ktlint '**/*.kt' '**/*.kts' '!**/build/**' '!samples/**' -R ktlint-compose-0.4.28-all.jar