Skip to content

chore(deps): bump com.android.tools:desugar_jdk_libs from 2.1.4 to 2.1.5 in /android #155

chore(deps): bump com.android.tools:desugar_jdk_libs from 2.1.4 to 2.1.5 in /android

chore(deps): bump com.android.tools:desugar_jdk_libs from 2.1.4 to 2.1.5 in /android #155

Workflow file for this run

name: CI
on:
push:
branches:
- main
paths-ignore:
- "**/*.md"
- ".github/ISSUE_TEMPLATE/**"
- ".github/pull_request_template.md"
pull_request:
branches:
- main
paths-ignore:
- "**/*.md"
- ".github/ISSUE_TEMPLATE/**"
- ".github/pull_request_template.md"
workflow_dispatch:
concurrency:
group: ci-${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
permissions:
contents: read
env:
FLUTTER_VERSION: 3.41.4
JAVA_VERSION: "17"
jobs:
quality:
name: Analyze and test
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v6
- name: Install Linux dependencies
run: |
sudo apt-get update
sudo apt-get install -y \
clang \
lld \
cmake \
ninja-build \
pkg-config \
openjdk-17-jdk \
libgtk-3-dev \
liblzma-dev \
libcurl4-openssl-dev \
libsecret-1-dev \
libjsoncpp-dev \
libayatana-appindicator3-dev \
libnotify-dev
- name: Set up Flutter
uses: subosito/flutter-action@v2
with:
channel: stable
flutter-version: ${{ env.FLUTTER_VERSION }}
cache: true
- name: Install dependencies
run: flutter pub get
- name: Generate localizations
run: flutter gen-l10n
- name: Verify generated localizations are up to date
shell: bash
run: git diff --exit-code -- lib/l10n/generated
- name: Analyze project
run: flutter analyze
- name: Run tests
run: flutter test --exclude-tags=golden
goldens-windows:
name: Run golden tests
runs-on: windows-latest
steps:
- name: Checkout repository
uses: actions/checkout@v6
- name: Set up Flutter
uses: subosito/flutter-action@v2
with:
channel: stable
flutter-version: ${{ env.FLUTTER_VERSION }}
cache: true
- name: Install dependencies
shell: pwsh
run: flutter pub get
- name: Generate localizations
shell: pwsh
run: flutter gen-l10n
- name: Run Windows tests
shell: pwsh
run: flutter test --exclude-tags=golden
- name: Run golden tests
shell: pwsh
run: flutter test --tags=golden
windows-build:
name: Build Windows bundle
runs-on: windows-latest
needs:
- quality
- goldens-windows
steps:
- name: Checkout repository
uses: actions/checkout@v6
- name: Set up Flutter
uses: subosito/flutter-action@v2
with:
channel: stable
flutter-version: ${{ env.FLUTTER_VERSION }}
cache: true
- name: Enable Windows desktop
shell: pwsh
run: flutter config --enable-windows-desktop
- name: Install dependencies
shell: pwsh
run: flutter pub get
- name: Generate localizations
shell: pwsh
run: flutter gen-l10n
- name: Build Windows release
shell: pwsh
run: flutter build windows --release
- name: Install Inno Setup
shell: pwsh
run: choco install innosetup --no-progress -y
- name: Build Windows installer and portable bundle
shell: pwsh
run: |
& .\scripts\build-windows-installer.ps1 -SkipBuild
- name: Resolve Windows artifacts
id: windows_artifacts
shell: pwsh
run: |
"artifact_dir=build\dist" | Out-File -FilePath $env:GITHUB_OUTPUT -Encoding utf8 -Append
- name: Upload Windows artifact
uses: actions/upload-artifact@v7
with:
name: kick-windows-${{ github.sha }}
path: ${{ steps.windows_artifacts.outputs.artifact_dir }}/*
if-no-files-found: error
linux-build:
name: Build Linux bundle
runs-on: ubuntu-latest
needs:
- quality
steps:
- name: Checkout repository
uses: actions/checkout@v6
- name: Install Linux dependencies
run: |
sudo apt-get update
sudo apt-get install -y \
clang \
lld \
cmake \
ninja-build \
pkg-config \
openjdk-17-jdk \
libgtk-3-dev \
liblzma-dev \
libcurl4-openssl-dev \
libsecret-1-dev \
libjsoncpp-dev \
libayatana-appindicator3-dev \
libnotify-dev
- name: Set up Flutter
uses: subosito/flutter-action@v2
with:
channel: stable
flutter-version: ${{ env.FLUTTER_VERSION }}
cache: true
- name: Enable Linux desktop
run: flutter config --enable-linux-desktop
- name: Install dependencies
run: flutter pub get
- name: Generate localizations
run: flutter gen-l10n
- name: Build Linux release
run: flutter build linux --release
- name: Archive Linux bundle
id: linux_bundle
shell: bash
run: |
artifact_dir="$RUNNER_TEMP/kick-linux"
mkdir -p "$artifact_dir"
archive_path="$artifact_dir/kick-linux-x64-${GITHUB_SHA}.tar.gz"
tar -C build/linux/x64/release/bundle -czf "$archive_path" .
echo "archive_path=$archive_path" >> "$GITHUB_OUTPUT"
- name: Upload Linux artifact
uses: actions/upload-artifact@v7
with:
name: kick-linux-x64-${{ github.sha }}
path: ${{ steps.linux_bundle.outputs.archive_path }}
if-no-files-found: error
android-build:
name: Build Android debug APK
runs-on: ubuntu-latest
needs:
- quality
- goldens-windows
steps:
- name: Checkout repository
uses: actions/checkout@v6
- name: Set up Java
uses: actions/setup-java@v5
with:
distribution: temurin
java-version: ${{ env.JAVA_VERSION }}
- name: Set up Gradle cache
uses: gradle/actions/setup-gradle@v5
- name: Set up Android SDK
uses: android-actions/setup-android@v3
- name: Install Android SDK packages
run: sdkmanager "platform-tools" "platforms;android-36" "build-tools;36.1.0"
- name: Set up Flutter
uses: subosito/flutter-action@v2
with:
channel: stable
flutter-version: ${{ env.FLUTTER_VERSION }}
cache: true
- name: Install dependencies
run: flutter pub get
- name: Generate localizations
run: flutter gen-l10n
- name: Build Android debug APK
run: flutter build apk --debug
- name: Prepare Android artifact
id: android_artifact
shell: bash
run: |
artifact_dir="$RUNNER_TEMP/kick-android"
mkdir -p "$artifact_dir"
artifact_path="$artifact_dir/kick-android-${GITHUB_SHA}-debug.apk"
cp build/app/outputs/flutter-apk/app-debug.apk "$artifact_path"
echo "artifact_path=$artifact_path" >> "$GITHUB_OUTPUT"
- name: Upload Android artifact
uses: actions/upload-artifact@v7
with:
name: kick-android-debug-${{ github.sha }}
path: ${{ steps.android_artifact.outputs.artifact_path }}
if-no-files-found: error