Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Update ktor monorepo to v3.1.2#377

Update ktor monorepo to v3.1.2

Update ktor monorepo to v3.1.2 #377

Workflow file for this run

name:Android and iOS CI Pipeline
on:
push:
branches:[ main ]
pull_request:
types:[ opened, synchronize ]
concurrency:
group:ci-${{ github.ref }}-${{ github.head_ref }}
cancel-in-progress:true
env:
JDK_VERSION:21
DISTRIBUTION:'temurin'
XCODE_VERSION:latest-stable
GRADLE_CACHE_PATH:|
~/.gradle/caches
~/.gradle/wrapper
SPM_CACHE_PATH:|
~/Library/Caches/org.swift.swiftpm
~/Library/Developer/Xcode/DerivedData
jobs:
build-android:
needs:android-screenshot-test
runs-on:ubuntu-latest
env:
TMDB_API_KEY:${{ secrets.TMDB_API_KEY }}
TMDB_API_URL:${{ secrets.TMDB_API_URL }}
TRAKT_CLIENT_ID:${{ secrets.TRAKT_CLIENT_ID }}
TRAKT_CLIENT_SECRET:${{ secrets.TRAKT_CLIENT_SECRET }}
TRAKT_REDIRECT_URI:${{ secrets.TRAKT_REDIRECT_URI }}
GITHUB_TOKEN:${{ secrets.GITHUB_TOKEN }}
steps:
-name:🚚 Checkout Code
uses:actions/checkout@v4
-name:Set up JDK
uses:actions/setup-java@v4
with:
distribution:${{ env.DISTRIBUTION }}
java-version:${{ env.JDK_VERSION }}
-name:📁 Setup Gradle Cache
uses:actions/cache@v4
with:
path:${{ env.GRADLE_CACHE_PATH }}
key:${{ runner.os }}-gradle-${{ hashFiles('**/*.gradle*', '**/gradle-wrapper.properties') }}
restore-keys:|
${{ runner.os }}-gradle-
-name:🐘 Setup Gradle 8.8
uses:gradle/actions/setup-gradle@v4
with:
gradle-version:8.11
-name:Add App Secrets
run:|
echo "TMDB_API_KEY=$TMDB_API_KEY" >> ./local.properties
echo "TMDB_API_URL=$TMDB_API_URL" >> ./local.properties
echo "TRAKT_CLIENT_ID=$TRAKT_CLIENT_ID" >> ./local.properties
echo "TRAKT_CLIENT_SECRET=$TRAKT_CLIENT_SECRET" >> ./local.properties
echo "TRAKT_REDIRECT_URI=$TRAKT_REDIRECT_URI" >> ./local.properties
-name:🤖 Build Android App
run:|
./gradlew clean \
:app:assembleRelease \
:app:bundleRelease \
-Pandroidx.baselineprofile.skipgeneration=true \
--no-configuration-cache
android-screenshot-test:
runs-on:ubuntu-latest
timeout-minutes:45
permissions:
contents:write
pull-requests:write
steps:
-name:Checkout
uses:actions/checkout@v4
-name:Set up JDK
uses:actions/setup-java@v4
with:
distribution:${{ env.DISTRIBUTION }}
java-version:${{ env.JDK_VERSION }}
-name:Setup Gradle Cache
uses:actions/cache@v4
with:
path:${{ env.GRADLE_CACHE_PATH }}
key:${{ runner.os }}-gradle-${{ hashFiles('**/*.gradle*', '**/gradle-wrapper.properties') }}
restore-keys:|
${{ runner.os }}-gradle-
-name:Install Dependencies
run:./gradlew dependencies
-name:Roborazzi Screenshot Tests
id:screenshotsverify
continue-on-error:true
run:./gradlew clean verifyRoborazziDebug
-name:Generate Roborazzi Screenshot Report
id:screenshots-report
continue-on-error:true
run:./gradlew compareRoborazziDebug
-name:Prevent Pushing New Screenshots if This is a Fork
id:checkfork_screenshots
if:steps.screenshotsverify.outcome == 'failure' && github.event.pull_request.head.repo.full_name != github.repository
run:|
echo "::error::Screenshot tests failed, please create a PR in your fork first." && exit 1
-name:Generate New Screenshots if Verification Failed and It's a PR
id:screenshotsrecord
if:steps.screenshotsverify.outcome == 'failure' && github.event_name == 'pull_request'
run:./gradlew recordRoborazziDebug
-name:Push New Screenshots if Available
uses:stefanzweifel/git-auto-commit-action@v5
if:steps.screenshotsrecord.outcome == 'success'
with:
file_pattern:'**/*.png'
disable_globbing:true
commit_message:"🤖 Beep Beep: Update screenshots 🤖"
-name:Upload Screenshot Results
if:${{ !cancelled() }}
uses:actions/upload-artifact@v4
with:
name:screenshot-test-results
path:'**/build/outputs/roborazzi/*_compare.png'
android-lint:
needs:android-screenshot-test
runs-on:ubuntu-latest
steps:
-uses:actions/checkout@v4
-uses:actions/setup-java@v4
with:
distribution:${{ env.DISTRIBUTION }}
java-version:${{ env.JDK_VERSION }}
-name:Setup Gradle Cache
uses:actions/cache@v4
with:
path:${{ env.GRADLE_CACHE_PATH }}
key:${{ runner.os }}-gradle-${{ hashFiles('**/*.gradle*', '**/gradle-wrapper.properties') }}
restore-keys:|
${{ runner.os }}-gradle-
-name:Lint Project
run:./gradlew :app:lintRelease
-name:Upload Lint Report
if:${{ !cancelled() }}
uses:actions/upload-artifact@v4
with:
name:android-lint-report
path:'**/build/reports/lint-results-*.html'
spotless:
runs-on:ubuntu-latest
steps:
-uses:actions/checkout@v4
-uses:actions/setup-java@v4
with:
distribution:${{ env.DISTRIBUTION }}
java-version:${{ env.JDK_VERSION }}
-name:Setup Gradle Cache
uses:actions/cache@v4
with:
path:${{ env.GRADLE_CACHE_PATH }}
key:${{ runner.os }}-gradle-${{ hashFiles('**/*.gradle*', '**/gradle-wrapper.properties') }}
restore-keys:|
${{ runner.os }}-gradle-
-name:Run Spotless
run:./gradlew spotlessCheck --no-configuration-cache
dependency-health:
runs-on:ubuntu-latest
steps:
-uses:actions/checkout@v4
-uses:actions/setup-java@v4
with:
distribution:${{ env.DISTRIBUTION }}
java-version:${{ env.JDK_VERSION }}
-name:Setup Gradle Cache
uses:actions/cache@v4
with:
path:${{ env.GRADLE_CACHE_PATH }}
key:${{ runner.os }}-gradle-${{ hashFiles('**/*.gradle*', '**/gradle-wrapper.properties') }}
restore-keys:|
${{ runner.os }}-gradle-
-name:Dependency Health
run:./gradlew buildHealth
-name:Upload Dependency health Report
uses:actions/upload-artifact@v4
if:always()
with:
name:dependency-health-report
path:'**/build/reports/dependency-analysis/build-health-report.txt'
jvm-test:
runs-on:ubuntu-latest
steps:
-uses:actions/checkout@v4
-uses:actions/setup-java@v4
with:
distribution:${{ env.DISTRIBUTION }}
java-version:${{ env.JDK_VERSION }}
-name:Setup Gradle Cache
uses:actions/cache@v4
with:
path:${{ env.GRADLE_CACHE_PATH }}
key:${{ runner.os }}-gradle-${{ hashFiles('**/*.gradle*', '**/gradle-wrapper.properties') }}
restore-keys:|
${{ runner.os }}-gradle-
-name:Run JVM Tests
run:./gradlew jvmTest
-name:Upload Test Reports
uses:actions/upload-artifact@v4
if:always()
with:
name:test-report
path:'**/build/reports/*'
common-ios-test:
runs-on:macos-latest
steps:
-name:Checkout
uses:actions/checkout@v4
-name:Set up JDK
uses:actions/setup-java@v4
with:
distribution:${{ env.DISTRIBUTION }}
java-version:${{ env.JDK_VERSION }}
-name:Setup Gradle Cache
uses:actions/cache@v4
with:
path:${{ env.GRADLE_CACHE_PATH }}
key:${{ runner.os }}-gradle-${{ hashFiles('**/*.gradle*', '**/gradle-wrapper.properties') }}
restore-keys:|
${{ runner.os }}-gradle-
-name:Run Common iOS Unit Tests
run:./gradlew clean iosSimulatorArm64Test
-name:Upload Common Test Report
uses:actions/upload-artifact@v4
if:always()
with:
name:common-ios-test-report
path:'**/build/reports/*'
build-ios:
runs-on:macos-15
timeout-minutes:60
env:
FASTLANE_XCODEBUILD_SETTINGS_TIMEOUT:60
steps:
-name:🚚 Checkout project
uses:actions/checkout@v4
-name:📀 Setup Xcode version
uses:maxim-lobanov/setup-xcode@v1
with:
xcode-version:${{ env.XCODE_VERSION }}
-name:💎 Set up Ruby
uses:ruby/setup-ruby@v1
with:
bundler-cache:true
-name:Cache SPM dependencies
uses:actions/cache@v4
with:
path:${{ env.SPM_CACHE_PATH }}
key:${{ runner.os }}-spm-${{ hashFiles('**/Package.resolved') }}
restore-keys:|
${{ runner.os }}-spm-
-name:📦 Setup Gradle Cache
uses:actions/cache@v4
with:
path:${{ env.GRADLE_CACHE_PATH }}
key:${{ runner.os }}-gradle-${{ hashFiles('**/*.gradle*', '**/gradle-wrapper.properties') }}
restore-keys:|
${{ runner.os }}-gradle-
-name:🧹 Clear Derived Data
run:bundle exec fastlane clear_derived_data_lane
-name:📦 Install dependencies with Bundler
run:bundle install
-name:🧱 Build iOS App
run:bundle exec fastlane build_tvmaniac
-name:Upload build artifacts
uses:actions/upload-artifact@v4
if:always()
with:
name:ios-build
path:|
build/
fastlane/logs
ios-snapshot-test:
runs-on:macos-15
timeout-minutes:60
env:
FASTLANE_XCODEBUILD_SETTINGS_TIMEOUT:60
steps:
-name:🚚 Checkout project
uses:actions/checkout@v4
-name:📀 Setup Xcode version
uses:maxim-lobanov/setup-xcode@v1
with:
xcode-version:${{ env.XCODE_VERSION }}
-name:📱 List Available Simulators
run:xcrun simctl list devices
-name:💎 Set up Ruby
uses:ruby/setup-ruby@v1
with:
bundler-cache:true
-run:brew install swiftlint
-name:Cache SPM dependencies
uses:actions/cache@v4
with:
path:${{ env.SPM_CACHE_PATH }}
key:${{ runner.os }}-spm-${{ hashFiles('**/Package.resolved') }}
restore-keys:|
${{ runner.os }}-spm-
-name:📦 Setup Gradle Cache
uses:actions/cache@v4
with:
path:${{ env.GRADLE_CACHE_PATH }}
key:${{ runner.os }}-gradle-${{ hashFiles('**/*.gradle*', '**/gradle-wrapper.properties') }}
restore-keys:|
${{ runner.os }}-gradle-
-name:Install dependencies with Bundler
run:bundle install
-name:📸 Run Snapshot Tests
run:bundle exec fastlane snapshot_tests
-name:Upload test results
uses:actions/upload-artifact@v4
if:always()
with:
name:snapshot-test-results
path:|
fastlane/test_output
fastlane/logs
derived_data/Logs/Test

[8]ページ先頭

©2009-2025 Movatter.jp