From 1759bf3297f5cf4d736a3a2e8a0a47e365a2d90e Mon Sep 17 00:00:00 2001 From: lifegpc Date: Tue, 6 Feb 2024 13:03:19 +0800 Subject: [PATCH] Add ios workflow --- .github/workflows/android.yml | 1 + .github/workflows/ios.yml | 55 +++++++++++++++++++++++++++++++++++ .github/workflows/linux.yml | 1 + .github/workflows/web.yml | 1 + .github/workflows/windows.yml | 1 + 5 files changed, 59 insertions(+) create mode 100644 .github/workflows/ios.yml diff --git a/.github/workflows/android.yml b/.github/workflows/android.yml index 8133200..7c670a3 100644 --- a/.github/workflows/android.yml +++ b/.github/workflows/android.yml @@ -3,6 +3,7 @@ on: push: branches: ["*"] paths-ignore: + - '.github/workflows/ios.yml' - '.github/workflows/linux.yml' - '.github/workflows/web.yml' - '.github/workflows/windows.yml' diff --git a/.github/workflows/ios.yml b/.github/workflows/ios.yml new file mode 100644 index 0000000..5865cfd --- /dev/null +++ b/.github/workflows/ios.yml @@ -0,0 +1,55 @@ +name: iOS Build +on: + push: + branches: ["*"] + paths-ignore: + - '.github/workflows/android.yml' + - '.github/workflows/linux.yml' + - '.github/workflows/web.yml' + - '.github/workflows/windows.yml' + - 'android/**' + - 'linux/**' + - 'macos/**' + - 'web/**' + - 'windows/**' + - '.gitignore' + - '.gitmodules' + - 'README.md' + - 'LICENSE' +jobs: + ios: + runs-on: macos-latest + steps: + - name: Checkout + uses: actions/checkout@v4 + - name: Setup flutter + uses: subosito/flutter-action@v2 + with: + channel: stable + - name: Import keychain + uses: apple-actions/import-codesign-certs@v2 + with: + p12-file-base64: ${{ secrets.P12_FILE_BASE64 }} + p12-password: ${{ secrets.P12_PASSWORD }} + - name: Install provisoning profile + env: + PROVISIONING_PROFILE: ${{ secrets.PROVISIONING_PROFILE }} + run: | + mkdir -p ~/Library/MobileDevice/Provisioning\ Profiles + echo "${PROVISIONING_PROFILE}" | base64 --decode > ~/Library/MobileDevice/Provisioning\ Profiles/ehf_dev.mobileprovision + - name: Build + run: flutter build ios --release + - name: Clean up + run: | + rm -rf ~/Library/MobileDevice/Provisioning\ Profiles/ehf_dev.mobileprovision + - name: Archive + run: | + cd build/ios/iphoneos + mkdir Payload + mv Runner.app Payload + zip -r app.ipa Payload + - name: Upload + uses: actions/upload-artifact@v4 + with: + name: app + path: build/ios/iphoneos/app.ipa diff --git a/.github/workflows/linux.yml b/.github/workflows/linux.yml index 71e0588..b1c183b 100644 --- a/.github/workflows/linux.yml +++ b/.github/workflows/linux.yml @@ -4,6 +4,7 @@ on: branches: ["*"] paths-ignore: - '.github/workflows/android.yml' + - '.github/workflows/ios.yml' - '.github/workflows/web.yml' - '.github/workflows/windows.yml' - 'android/**' diff --git a/.github/workflows/web.yml b/.github/workflows/web.yml index 1a92310..b606d99 100644 --- a/.github/workflows/web.yml +++ b/.github/workflows/web.yml @@ -4,6 +4,7 @@ on: branches: ["*"] paths-ignore: - '.github/workflows/android.yml' + - '.github/workflows/ios.yml' - '.github/workflows/linux.yml' - '.github/workflows/windows.yml' - 'android/**' diff --git a/.github/workflows/windows.yml b/.github/workflows/windows.yml index 6cf6624..a6f82ab 100644 --- a/.github/workflows/windows.yml +++ b/.github/workflows/windows.yml @@ -4,6 +4,7 @@ on: branches: ["*"] paths-ignore: - '.github/workflows/android.yml' + - '.github/workflows/ios.yml' - '.github/workflows/linux.yml' - '.github/workflows/web.yml' - 'android/**'