Share
Embed
Transcript
60 slides
-
© DMM.com • keijumt / দຊܓथ(͚͍͡Ύ) • CTOࣨ ΤόϯδΣϦετνʔϜॴଐ •
εϊʔϘʔυ͕͖ • ࠷ۙiOS։ൃͯ͠·͢ ࣗݾհ 2 -
© DMM.com ΞδΣϯμ • Firebase App Distributionͱʁ • App Distribution
Gradle Pluginͷಋೖ • Github Actionsͱʁ • Github Actionsͷಋೖ • ςελʔʹ -
© DMM.com Firebase App Distributionͱʁ • Firebaseͷػೳͷ̍ͭ • ΞϓϦͷϕʔλ൛Λ৴ •
ςελʔ༻ͷωΠςΟϒΞϓϦ͕͋Δ -
© DMM.com ํ๏ • Firebase Console • Firebase CLI •
fastlane • App Distribution Gradle Plugin -
© DMM.com ํ๏ • Firebase Console • Firebase CLI •
fastlane • App Distribution Gradle Plugin -
© DMM.com App Distribution Gradle Pluginͷར༻ʹ͋ͨͬͯ • લఏ݅ • FirebaseϓϩδΣΫτ͕࡞͞Ε͍ͯΔ
• ΞϓϦ͕FirebaseϓϩδΣΫτʹඥ͍͍ͯΔ • ൿಗใܥͷཧείʔϓ֎ -
© DMM.com App Distribution Gradle Pluginͷར༻खॱ 1. αʔϏεΞΧϯτͷ࡞ 2. App
Distribution APIͷ༗ޮԽ 3. App Distribution Gradle Pluginͷಋೖ 4. gradleʹઃఆͷهड़ -
© DMM.com App Distribution Gradle Pluginͷར༻खॱ 1. αʔϏεΞΧϯτͷ࡞ 2. App
Distribution APIͷ༗ޮԽ 3. App Distribution Gradle Pluginͷಋೖ 4. gradleʹઃఆͷهड़ -
© DMM.com App Distribution Gradle Pluginͷར༻खॱ 1. αʔϏεΞΧϯτͷ࡞ 2. App
Distribution APIͷ༗ޮԽ 3. App Distribution Gradle Pluginͷಋೖ 4. gradleʹઃఆͷهड़ -
© DMM.com App Distribution APIͷ༗ޮԽ • Google APIs Console͔Β Firebase
App Distribution API Λ༗ޮԽ • 20199݄20Ҏ߱ʹ࡞͞ΕͨϓϩδΣΫτσϑΥϧτͰ༗ޮ ʹͳ͍ͬͯΔ -
© DMM.com App Distribution Gradle Pluginͷར༻खॱ 1. αʔϏεΞΧϯτͷ࡞ 2. App
Distribution APIͷ༗ޮԽ 3. App Distribution Gradle Pluginͷಋೖ 4. gradleʹઃఆͷهड़ -
© DMM.com build.gradle(project) buildscript { repositories { google() } dependencies
{ classpath ‘com.google.firebase:firebase-appdistribution-gradle:1.3.0' } } -
© DMM.com App Distribution Gradle Pluginͷར༻खॱ 1. αʔϏεΞΧϯτͷ࡞ 2. App
Distribution APIͷ༗ޮԽ 3. App Distribution Gradle Pluginͷಋೖ 4. gradleʹઃఆͷهड़ -
© DMM.com App Distribution Gradle PluginͷΦϓγϣϯ • appId(required) • serviceCredentialsFile
• releaseNotes or releaseNotesFile • testers or testersFile • groups or groupsFile -
© DMM.com App Distribution Gradle PluginͷΦϓγϣϯ • appId(required) • serviceCredentialsFile
• releaseNotes or releaseNotesFile • testers or testersFile • groups or groupsFile -
© DMM.com App Distribution Gradle PluginͷΦϓγϣϯ • appId(required) • serviceCredentialsFile
• releaseNotes or releaseNotesFile • testers or testersFile • groups or groupsFile -
© DMM.com App Distribution Gradle PluginͷΦϓγϣϯ • appId(required) • serviceCredentialsFile
• releaseNotes or releaseNotesFile • testers or testersFile • groups or groupsFile releaseNotes = “this is a release note” releaseNotesFile = “/path/to/releaseNote.txt -
© DMM.com App Distribution Gradle PluginͷΦϓγϣϯ • appId(required) • serviceCredentialsFile
• releaseNotes or releaseNotesFile • testers or testersFile • groups or groupsFile testers="[email protected], [email protected]” testersFile="/path/to/testers.txt" -
© DMM.com App Distribution Gradle PluginͷΦϓγϣϯ • appId(required) • serviceCredentialsFile
• releaseNotes or releaseNotesFile • testers or testersFile • groups or groupsFile groups="qa-team, android-testers" groupsFile="/path/to/tester-groups.txt" -
© DMM.com build.gradle(app) buildTypes { release { signingConfig signingConfigs.release firebaseAppDistribution
{ appId = "appId" serviceCredentialsFile = "${rootDir.absolutePath}/firebase-admin-sdk.json" } } } -
© DMM.com YAMLߏจʹ͍ͭͯ on: push: branches: - master jobs: build:
runs-on: ubuntu-latest steps: - uses: actions/checkout@v1 - name: Build Apk run: ./gradlew assenbleRelease -
© DMM.com YAMLߏจʹ͍ͭͯ on: push: branches: - master jobs: build:
runs-on: ubuntu-latest steps: - uses: actions/checkout@v1 - name: Build Apk run: ./gradlew assenbleRelease -
© DMM.com YAMLߏจʹ͍ͭͯ on: pull_request: branches: - master jobs: build:
runs-on: ubuntu-latest steps: - uses: actions/checkout@v1 - name: Build Apk run: ./gradlew assenbleRelease -
© DMM.com YAMLߏจʹ͍ͭͯ on: pull_request: branches: - 'releases/**' jobs: build:
runs-on: ubuntu-latest steps: - uses: actions/checkout@v1 - name: Build Apk run: ./gradlew assenbleRelease -
© DMM.com YAMLߏจʹ͍ͭͯ on: pull_request: branches: - 'releases/**' tags: -
v1.* jobs: build: runs-on: ubuntu-latest steps: - uses: actions/checkout@v1 - name: Build Apk run: ./gradlew assenbleRelease -
© DMM.com YAMLߏจʹ͍ͭͯ on: push: branches: - master jobs: build:
runs-on: ubuntu-latest steps: - uses: actions/checkout@v1 - name: Build Apk run: ./gradlew assenbleRelease -
© DMM.com YAMLߏจʹ͍ͭͯ on: push: branches: - master jobs: build:
runs-on: ubuntu-latest steps: - uses: actions/checkout@v1 - name: Build Apk run: ./gradlew assenbleRelease -
© DMM.com YAMLߏจʹ͍ͭͯ on: push: branches: - master jobs: build:
runs-on: ubuntu-latest steps: - uses: actions/checkout@v1 - name: Build Apk run: ./gradlew assenbleRelease • Windows Server 2016 • Windows Server 2019 • Ubuntu 18.04 • Ubuntu 16.04 • macOS Catalina 10.15 -
© DMM.com YAMLߏจʹ͍ͭͯ on: push: branches: - master jobs: build:
runs-on: ubuntu-latest steps: - uses: actions/checkout@v1 - name: Build Apk run: ./gradlew assenbleRelease • Android SDK: 15 ~ 29 • build-tools: 24.0.0 ~ 29.0.2 -
© DMM.com YAMLߏจʹ͍ͭͯ on: push: branches: - master jobs: build:
runs-on: ubuntu-latest steps: - uses: actions/checkout@v1 - name: Build Apk run: ./gradlew assenbleRelease -
© DMM.com YAMLߏจʹ͍ͭͯ on: push: branches: - master jobs: build:
runs-on: ubuntu-latest steps: - uses: actions/checkout@v1 - name: Build Apk run: ./gradlew assenbleRelease {owner}/{repo}@{ref} • actions/setup-node@74bc508 • actions/setup-node@v1 • actions/[email protected] • actions/setup-node@master -
© DMM.com YAMLߏจʹ͍ͭͯ on: push: branches: - master jobs: build:
runs-on: ubuntu-latest steps: - uses: actions/checkout@v1 - name: Build Apk run: ./gradlew assenbleRelease -
© DMM.com YAMLߏจʹ͍ͭͯ on: push: branches: - master jobs: build:
runs-on: ubuntu-latest steps: - uses: actions/checkout@v1 - name: Build Apk run: ./gradlew assenbleRelease - name: Echo environment variable run: echo ${{ secrets.HOGE }} -
© DMM.com workflowͷྲྀΕ • masterͷpushΛτϦΨʔʹ͢Δ • ϦϦʔεϏϧυͰapkΛ࡞ • App Distribution
Gradle PluginͰapkΛΞοϓϩʔυ -
© DMM.com YAMLͷهड़ on: push: branches: - master jobs: build:
runs-on: ubuntu-latest steps: - uses: actions/checkout@v1 - name: Build Release APK run: ./gradlew assembleRelease - name: Deploy app distribution run: ./gradlew appDistributionUploadRelease -
© DMM.com YAMLͷهड़ on: push: branches: - master jobs: build:
runs-on: ubuntu-latest steps: - uses: actions/checkout@v1 - name: Build Release APK run: ./gradlew assembleRelease - name: Deploy app distribution run: ./gradlew appDistributionUploadRelease -
© DMM.com YAMLͷهड़ on: push: branches: - master jobs: build:
runs-on: ubuntu-latest steps: - uses: actions/checkout@v1 - name: Build Release APK run: ./gradlew assembleRelease - name: Deploy app distribution run: ./gradlew appDistributionUploadRelease -
© DMM.com ͓ΘΓʹ • App Distribution Gradle PluginͰFabric͔ΒͷҠߦָ͕ͦ͏ • Github
Actionsͷಋೖ͕؆୯ • FirebaseެࣜϖʔδͷຊޠରԠ͕͍