Skip to content

Rename dependabot.yml to dependabot.yaml #54

Rename dependabot.yml to dependabot.yaml

Rename dependabot.yml to dependabot.yaml #54

Workflow file for this run

# .github/workflows/build.yml
name: Android Build
# ワークフローが実行されるトリガーを指定
on:
push:
branches: [ main, dev ]
pull_request:
branches: [ main ]
jobs:
build:
# 実行環境としてUbuntuの最新版を使用
runs-on: ubuntu-latest
steps:
# Step 1: リポジトリのコードをチェックアウト
- name: Checkout code
uses: actions/checkout@v4 # 最新バージョンを確認してください
# Step 2: Java Development Kit (JDK) をセットアップ (Androidビルドに必要)
- name: Set up JDK 21
uses: actions/setup-java@v4 # 最新バージョンを確認してください
with:
distribution: 'temurin' # または他のディストリビューション
java-version: '21' # プロジェクトに必要なJavaバージョンを指定
# Step 3: Flutter SDK をセットアップ
# (オプション) プロジェクトルートに .flutter-version ファイルがあればそのバージョンが使われます
- name: Set up Flutter
uses: subosito/flutter-action@v2 # 最新バージョンを確認してください
with:
channel: 'stable' # stable, beta, dev, master から選択
# flutter-version: '3.x.x' # 特定のバージョンを指定する場合
# Step 4: Flutterの依存関係を取得
- name: Get Flutter dependencies
run: flutter pub get
# Step 5: (オプション) ビルド前にクリーンアップ
# - name: Clean Flutter project
# run: flutter clean
# Step 6: Android APK をビルド (--release オプションでリリースモード)
# --split-per-abi をつけるとCPUアーキテクチャごとにAPKが分割されます
- name: Build APK
run: flutter build apk --release --split-per-abi
# 単一のAPKが必要な場合は: flutter build apk --release
# Step 7: ビルドされたAPKを成果物としてアップロード
# --split-per-abi を使用した場合、複数のAPKが生成されるためワイルドカードを使用
- name: Upload APK Artifact
uses: actions/upload-artifact@v4 # 最新バージョンを確認してください
with:
name: release-apk # 成果物の名前
path: build/app/outputs/flutter-apk/app-*-release.apk
# 単一APKの場合のパス例: build/app/outputs/apk/release/app-release.apk
release:
name: Create Release
needs: build
if: startsWith(github.ref, 'refs/tags/v')
runs-on: ubuntu-latest
steps:
- name: Download Android build
uses: actions/download-artifact@v3
with:
name: release-apk
path: build/app/outputs/flutter-apk/
- name: Create Release
id: create_release
uses: softprops/action-gh-release@v1
with:
files: |
android-release/app-release.apk
draft: true
prerelease: true
generate_release_notes: true
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}