Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
108 changes: 54 additions & 54 deletions .github/workflows/abtesting.yml
Original file line number Diff line number Diff line change
Expand Up @@ -25,70 +25,70 @@ concurrency:
cancel-in-progress: true

jobs:
spm:
uses: ./.github/workflows/common.yml
with:
target: ABTestingUnit
# spm:
# uses: ./.github/workflows/common.yml
# with:
# target: ABTestingUnit

catalyst:
uses: ./.github/workflows/common_catalyst.yml
with:
product: FirebaseABTesting
target: FirebaseABTesting-Unit-unit
# catalyst:
# uses: ./.github/workflows/common_catalyst.yml
# with:
# product: FirebaseABTesting
# target: FirebaseABTesting-Unit-unit

pod_lib_lint:
uses: ./.github/workflows/common_cocoapods.yml
with:
product: FirebaseABTesting
# pod_lib_lint:
# uses: ./.github/workflows/common_cocoapods.yml
# with:
# product: FirebaseABTesting

quickstart:
uses: ./.github/workflows/common_quickstart.yml
with:
product: ABTesting
is_legacy: true
setup_command: scripts/setup_quickstart.sh abtesting
plist_src_path: scripts/gha-encrypted/qs-database.plist.gpg
plist_dst_path: quickstart-ios/database/GoogleService-Info.plist
setup_command: QUICKSTART_BRANCH=mc/spm scripts/setup_quickstart_spm.sh abtesting
plist_src_path: scripts/gha-encrypted/qs-abtesting.plist.gpg
plist_dst_path: quickstart-ios/abtesting/GoogleService-Info.plist
secrets:
plist_secret: ${{ secrets.GHASecretsGPGPassphrase1 }}

quickstart-ftl-cron-only:
# Don't run on private repo.
if: github.repository == 'Firebase/firebase-ios-sdk' && github.event_name == 'schedule'
# quickstart-ftl-cron-only:
# # Don't run on private repo.
# if: github.repository == 'Firebase/firebase-ios-sdk' && github.event_name == 'schedule'

env:
plist_secret: ${{ secrets.GHASecretsGPGPassphrase1 }}
runs-on: macos-15
steps:
- uses: actions/checkout@v4
- uses: ruby/setup-ruby@354a1ad156761f5ee2b7b13fa8e09943a5e8d252 # v1
- uses: actions/setup-python@v5
with:
python-version: '3.11'
- name: Setup quickstart
env:
LEGACY: true
run: scripts/setup_quickstart.sh abtesting
- name: Install Secret GoogleService-Info.plist
run: scripts/decrypt_gha_secret.sh scripts/gha-encrypted/qs-abtesting.plist.gpg \
quickstart-ios/abtesting/GoogleService-Info.plist "$plist_secret"
- name: Xcode
run: sudo xcode-select -s /Applications/Xcode_16.4.app/Contents/Developer
- name: Build swift quickstart
env:
LEGACY: true
run: ([ -z $plist_secret ] || scripts/third_party/travis/retry.sh scripts/test_quickstart_ftl.sh ABTesting)
- id: ftl_test
uses: FirebaseExtended/github-actions/[email protected]
with:
credentials_json: ${{ secrets.FIREBASE_SERVICE_ACCOUNT_CREDENTIALS }}
testapp_dir: quickstart-ios/build-for-testing
test_type: "xctest"
# env:
# plist_secret: ${{ secrets.GHASecretsGPGPassphrase1 }}
# runs-on: macos-15
# steps:
# - uses: actions/checkout@v4
# - uses: ruby/setup-ruby@354a1ad156761f5ee2b7b13fa8e09943a5e8d252 # v1
# - uses: actions/setup-python@v5
# with:
# python-version: '3.11'
# - name: Setup quickstart
# env:
# LEGACY: true
# run: scripts/setup_quickstart.sh abtesting
# - name: Install Secret GoogleService-Info.plist
# run: scripts/decrypt_gha_secret.sh scripts/gha-encrypted/qs-abtesting.plist.gpg \
# quickstart-ios/abtesting/GoogleService-Info.plist "$plist_secret"
# - name: Xcode
# run: sudo xcode-select -s /Applications/Xcode_16.4.app/Contents/Developer
# - name: Build swift quickstart
# env:
# LEGACY: true
# run: ([ -z $plist_secret ] || scripts/third_party/travis/retry.sh scripts/test_quickstart_ftl.sh ABTesting)
# - id: ftl_test
# uses: FirebaseExtended/github-actions/[email protected]
# with:
# credentials_json: ${{ secrets.FIREBASE_SERVICE_ACCOUNT_CREDENTIALS }}
# testapp_dir: quickstart-ios/build-for-testing
# test_type: "xctest"

abtesting-cron-only:
needs: pod_lib_lint
uses: ./.github/workflows/common_cocoapods_cron.yml
with:
product: FirebaseABTesting
platforms: '[ "ios", "tvos", "macos" ]'
flags: '[ "--use-static-frameworks" ]'
# abtesting-cron-only:
# needs: pod_lib_lint
# uses: ./.github/workflows/common_cocoapods_cron.yml
# with:
# product: FirebaseABTesting
# platforms: '[ "ios", "tvos", "macos" ]'
# flags: '[ "--use-static-frameworks" ]'
142 changes: 71 additions & 71 deletions .github/workflows/auth.yml
Original file line number Diff line number Diff line change
Expand Up @@ -29,76 +29,76 @@ concurrency:
cancel-in-progress: true

jobs:
spm:
uses: ./.github/workflows/common.yml
with:
target: AuthUnit
buildonly_platforms: macOS
# spm:
# uses: ./.github/workflows/common.yml
# with:
# target: AuthUnit
# buildonly_platforms: macOS

catalyst:
uses: ./.github/workflows/common_catalyst.yml
with:
product: FirebaseAuth
target: FirebaseAuth-Unit-unit
buildonly: true
# catalyst:
# uses: ./.github/workflows/common_catalyst.yml
# with:
# product: FirebaseAuth
# target: FirebaseAuth-Unit-unit
# buildonly: true

pod_lib_lint:
strategy:
matrix:
product: [FirebaseAuthInterop, FirebaseAuth]
uses: ./.github/workflows/common_cocoapods.yml
with:
product: ${{ matrix.product }}
buildonly_platforms: macOS
# pod_lib_lint:
# strategy:
# matrix:
# product: [FirebaseAuthInterop, FirebaseAuth]
# uses: ./.github/workflows/common_cocoapods.yml
# with:
# product: ${{ matrix.product }}
# buildonly_platforms: macOS

integration-tests:
# Don't run on private repo unless it is a PR.
if: (github.repository == 'Firebase/firebase-ios-sdk' && github.event_name == 'schedule') || github.event_name == 'pull_request'
needs: spm
strategy:
matrix:
scheme: [ObjCApiTests, SwiftApiTests, AuthenticationExampleUITests]
env:
plist_secret: ${{ secrets.GHASecretsGPGPassphrase1 }}
FIREBASECI_USE_LATEST_GOOGLEAPPMEASUREMENT: 1
runs-on: macos-15
steps:
- uses: actions/checkout@v4
- uses: actions/cache/restore@v4
with:
path: .build
key: ${{ needs.spm.outputs.cache_key }}
- name: Install Secrets
run: |
scripts/decrypt_gha_secret.sh scripts/gha-encrypted/AuthCredentials.h.gpg \
FirebaseAuth/Tests/SampleSwift/ObjCApiTests/AuthCredentials.h "$plist_secret"
scripts/decrypt_gha_secret.sh scripts/gha-encrypted/AuthSample/SwiftApplication.plist.gpg \
FirebaseAuth/Tests/SampleSwift/AuthenticationExample/SwiftApplication.plist "$plist_secret"
scripts/decrypt_gha_secret.sh scripts/gha-encrypted/AuthSample/AuthCredentials.h.gpg \
FirebaseAuth/Tests/SampleSwift/AuthCredentials.h "$plist_secret"
scripts/decrypt_gha_secret.sh scripts/gha-encrypted/AuthSample/GoogleService-Info.plist.gpg \
FirebaseAuth/Tests/SampleSwift/GoogleService-Info.plist "$plist_secret"
scripts/decrypt_gha_secret.sh scripts/gha-encrypted/AuthSample/GoogleService-Info_multi.plist.gpg \
FirebaseAuth/Tests/SampleSwift/GoogleService-Info_multi.plist "$plist_secret"
scripts/decrypt_gha_secret.sh scripts/gha-encrypted/AuthSample/Sample.entitlements.gpg \
FirebaseAuth/Tests/SampleSwift/Sample.entitlements "$plist_secret"
scripts/decrypt_gha_secret.sh scripts/gha-encrypted/AuthSample/Credentials.swift.gpg \
FirebaseAuth/Tests/SampleSwift/SwiftApiTests/Credentials.swift "$plist_secret"
- name: Xcode
run: sudo xcode-select -s /Applications/Xcode_16.4.app/Contents/Developer
- uses: nick-fields/retry@ce71cc2ab81d554ebbe88c79ab5975992d79ba08 # v3
with:
timeout_minutes: 15
max_attempts: 3
retry_wait_seconds: 120
command: ([ -z $plist_secret ] || scripts/build.sh Auth iOS ${{ matrix.scheme }})
# integration-tests:
# # Don't run on private repo unless it is a PR.
# if: (github.repository == 'Firebase/firebase-ios-sdk' && github.event_name == 'schedule') || github.event_name == 'pull_request'
# needs: spm
# strategy:
# matrix:
# scheme: [ObjCApiTests, SwiftApiTests, AuthenticationExampleUITests]
# env:
# plist_secret: ${{ secrets.GHASecretsGPGPassphrase1 }}
# FIREBASECI_USE_LATEST_GOOGLEAPPMEASUREMENT: 1
# runs-on: macos-15
# steps:
# - uses: actions/checkout@v4
# - uses: actions/cache/restore@v4
# with:
# path: .build
# key: ${{ needs.spm.outputs.cache_key }}
# - name: Install Secrets
# run: |
# scripts/decrypt_gha_secret.sh scripts/gha-encrypted/AuthCredentials.h.gpg \
# FirebaseAuth/Tests/SampleSwift/ObjCApiTests/AuthCredentials.h "$plist_secret"
# scripts/decrypt_gha_secret.sh scripts/gha-encrypted/AuthSample/SwiftApplication.plist.gpg \
# FirebaseAuth/Tests/SampleSwift/AuthenticationExample/SwiftApplication.plist "$plist_secret"
# scripts/decrypt_gha_secret.sh scripts/gha-encrypted/AuthSample/AuthCredentials.h.gpg \
# FirebaseAuth/Tests/SampleSwift/AuthCredentials.h "$plist_secret"
# scripts/decrypt_gha_secret.sh scripts/gha-encrypted/AuthSample/GoogleService-Info.plist.gpg \
# FirebaseAuth/Tests/SampleSwift/GoogleService-Info.plist "$plist_secret"
# scripts/decrypt_gha_secret.sh scripts/gha-encrypted/AuthSample/GoogleService-Info_multi.plist.gpg \
# FirebaseAuth/Tests/SampleSwift/GoogleService-Info_multi.plist "$plist_secret"
# scripts/decrypt_gha_secret.sh scripts/gha-encrypted/AuthSample/Sample.entitlements.gpg \
# FirebaseAuth/Tests/SampleSwift/Sample.entitlements "$plist_secret"
# scripts/decrypt_gha_secret.sh scripts/gha-encrypted/AuthSample/Credentials.swift.gpg \
# FirebaseAuth/Tests/SampleSwift/SwiftApiTests/Credentials.swift "$plist_secret"
# - name: Xcode
# run: sudo xcode-select -s /Applications/Xcode_16.4.app/Contents/Developer
# - uses: nick-fields/retry@ce71cc2ab81d554ebbe88c79ab5975992d79ba08 # v3
# with:
# timeout_minutes: 15
# max_attempts: 3
# retry_wait_seconds: 120
# command: ([ -z $plist_secret ] || scripts/build.sh Auth iOS ${{ matrix.scheme }})

quickstart:
uses: ./.github/workflows/common_quickstart.yml
with:
product: Authentication
is_legacy: false
setup_command: scripts/setup_quickstart.sh authentication
setup_command: QUICKSTART_BRANCH=mc/spm scripts/setup_quickstart_spm.sh authentication
plist_src_path: scripts/gha-encrypted/qs-authentication.plist.gpg
plist_dst_path: quickstart-ios/authentication/GoogleService-Info.plist
run_tests: false
Expand Down Expand Up @@ -133,13 +133,13 @@ jobs:
# testapp_dir: quickstart-ios/build-for-testing
# test_type: "xctest"

auth-cron-only:
needs: pod_lib_lint
uses: ./.github/workflows/common_cocoapods_cron.yml
with:
product: FirebaseAuth
platforms: '[ "ios", "tvos --skip-tests", "macos --skip-tests", "watchos --skip-tests" ]'
flags: '[ "--use-static-frameworks" ]'
setup_command: scripts/configure_test_keychain.sh
secrets:
plist_secret: ${{ secrets.GHASecretsGPGPassphrase1 }}
# auth-cron-only:
# needs: pod_lib_lint
# uses: ./.github/workflows/common_cocoapods_cron.yml
# with:
# product: FirebaseAuth
# platforms: '[ "ios", "tvos --skip-tests", "macos --skip-tests", "watchos --skip-tests" ]'
# flags: '[ "--use-static-frameworks" ]'
# setup_command: scripts/configure_test_keychain.sh
# secrets:
# plist_secret: ${{ secrets.GHASecretsGPGPassphrase1 }}
25 changes: 9 additions & 16 deletions .github/workflows/common_quickstart.yml
Original file line number Diff line number Diff line change
Expand Up @@ -44,14 +44,6 @@ on:
type: string
required: true

# The type of quickstart to test.
#
# Options: [swift, objc]
quickstart_type:
type: string
required: false
default: objc

# Whether to run tests or just build. Defaults to true.
run_tests:
type: boolean
Expand All @@ -77,6 +69,8 @@ jobs:
steps:
- uses: actions/checkout@v4
- uses: ruby/setup-ruby@354a1ad156761f5ee2b7b13fa8e09943a5e8d252 # v1
- name: Prereqs
run: gem install xcpretty
- name: Xcode
run: sudo xcode-select -s /Applications/Xcode_16.4.app/Contents/Developer
- name: Run setup command.
Expand All @@ -87,17 +81,16 @@ jobs:
${{ inputs.plist_src_path }} \
${{ inputs.plist_dst_path }} \
"$plist_secret"
- name: Build ${{ inputs.product }} Quickstart (${{ inputs.quickstart_type }} / ${{ inputs.is_legacy && 'Legacy' || 'Non-Legacy' }})
- name: Build ${{ inputs.product }} Quickstart (${{ inputs.is_legacy && 'Legacy' || 'Non-Legacy' }})
uses: nick-fields/retry@ce71cc2ab81d554ebbe88c79ab5975992d79ba08 # v3
with:
timeout_minutes: 15
max_attempts: 3
retry_wait_seconds: 120
command: |
scripts/test_quickstart.sh \
SPM=true DIR=${{ inputs.product }} scripts/test_quickstart.sh \
${{ inputs.product }} \
${{ inputs.run_tests }} \
${{ inputs.quickstart_type }}
# Failure sequence to upload artifact.
- id: lowercase_product
if: ${{ failure() }}
Expand All @@ -107,8 +100,8 @@ jobs:
- name: Remove data before upload.
if: ${{ failure() }}
run: scripts/remove_data.sh ${{ steps.lowercase_product.outputs.lowercase_product }}
- uses: actions/upload-artifact@v4
if: ${{ failure() }}
with:
name: quickstart_artifacts_${{ steps.lowercase_product.outputs.lowercase_product }}
path: quickstart-ios/
# - uses: actions/upload-artifact@v4
# if: ${{ failure() }}
# with:
# name: quickstart_artifacts_${{ steps.lowercase_product.outputs.lowercase_product }}
# path: quickstart-ios/
Loading
Loading