Skip to content
Open
Show file tree
Hide file tree
Changes from 15 commits
Commits
Show all changes
18 commits
Select commit Hold shift + click to select a range
ea6d9c2
ci : Add workflow fro centralize properties
qnaveed87 Mar 16, 2026
7c2cf73
ci : Add workflow fro centralize properties
qnaveed87 Mar 16, 2026
6b97d22
ci : Update workflow with centralize file
qnaveed87 Mar 16, 2026
ae2b403
ci: Centralize build tool versions via shared reusable workflow
qnaveed87 Apr 6, 2026
1c026b7
Merge branch 'main' of github.com:gini/gini-mobile-ios into ci-centra…
qnaveed87 May 28, 2026
6b16dad
ci- Adding permission tag
qnaveed87 May 28, 2026
a40ba92
ci: Add get-config to release job dependencies in all release workflows
qnaveed87 May 28, 2026
4b4d021
ci: Use XCode and simulator from config file
qnaveed87 Jun 2, 2026
164addc
ci: Use XCode version from config file
qnaveed87 Jun 2, 2026
0d29a5a
ci: Use macos-latest runner in xcframeworks build workflows
qnaveed87 Jun 2, 2026
fa8e470
ci: Update the xcode version to XCode 26.2
qnaveed87 Jun 2, 2026
a336223
Merge branch 'main' of github.com:gini/gini-mobile-ios into ci-centra…
qnaveed87 Jun 3, 2026
a24aa0e
Merge pull request #1170 from gini/PP-2286-update-xcode
qnaveed87 Jun 11, 2026
4eea6f5
Merge branch 'main' of github.com:gini/gini-mobile-ios into ci-centra…
qnaveed87 Jun 11, 2026
dd76eaf
ci: Remove merchant SDK workflows
qnaveed87 Jun 12, 2026
a1becfc
ci: Accept xcode and ruby versions as inputs in reusable release work…
qnaveed87 Jun 19, 2026
adef3e7
refactor(ci): Centralize xcode and ruby versions via shared config in…
qnaveed87 Jun 19, 2026
98b2a56
refactor(ci): Add workflow-level permissions to codeql.yml
qnaveed87 Jun 19, 2026
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
8 changes: 6 additions & 2 deletions .github/workflows/bank-api-library.build.docs.yml
Original file line number Diff line number Diff line change
Expand Up @@ -13,20 +13,24 @@ concurrency:
cancel-in-progress: ${{ !contains(github.ref, 'refs/tags/')}}

jobs:
get-config:
uses: ./.github/workflows/shared-config.yml

documentation:
needs: get-config
runs-on: macos-latest
steps:
- uses: maxim-lobanov/setup-xcode@60606e260d2fc5762a71e64e74b2174e8ea3c8bd # v1.6.0
with:
xcode-version: '16.4'
xcode-version: ${{ needs.get-config.outputs.xcode-version }}

- name: Checkout
uses: actions/checkout@v4

- name: setup ruby
uses: ruby/setup-ruby@dffc446db9ba5a0c4446edb5bca1c5c473a806c5 # v1.245.0
with:
ruby-version: '3.2.0'
ruby-version: ${{ needs.get-config.outputs.ruby-version }}
bundler-cache: true

- name: Build GiniBankAPILibrary documentation
Expand Down
10 changes: 7 additions & 3 deletions .github/workflows/bank-api-library.check.yml
Original file line number Diff line number Diff line change
Expand Up @@ -20,16 +20,20 @@ concurrency:
cancel-in-progress: ${{ !contains(github.ref, 'refs/tags/')}}

jobs:
get-config:
uses: ./.github/workflows/shared-config.yml

check:
needs: get-config
runs-on: macos-latest
strategy:
matrix:
target: [GiniBankAPILibrary]
destination: ['platform=iOS Simulator,OS=18.5,name=iPhone 16']
destination: ['${{ needs.get-config.outputs.ios-simulator-destination }}']
steps:
- uses: maxim-lobanov/setup-xcode@60606e260d2fc5762a71e64e74b2174e8ea3c8bd # v1.6.0
with:
xcode-version: '16.4'
xcode-version: ${{ needs.get-config.outputs.xcode-version }}

- name: Checkout
uses: actions/checkout@v4
Expand All @@ -44,7 +48,7 @@ jobs:
- name: Setup ruby
uses: ruby/setup-ruby@dffc446db9ba5a0c4446edb5bca1c5c473a806c5 # v1.245.0
with:
ruby-version: '3.2.0'
ruby-version: ${{ needs.get-config.outputs.ruby-version }}
bundler-cache: true

- name: Build and run tests for "${{ matrix.target }}"
Expand Down
32 changes: 19 additions & 13 deletions .github/workflows/bank-api-library.release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -9,26 +9,32 @@ on:
workflow_dispatch:

jobs:
get-config:
uses: ./.github/workflows/shared-config.yml

check:
needs: get-config
uses: gini/gini-mobile-ios/.github/workflows/bank-api-library.check.yml@main
secrets:
GINI_MOBILE_TEST_CLIENT_SECRET: ${{ secrets.GINI_MOBILE_CI_PASSWORD }}
SONAR_TOKEN: ${{ secrets.SONAR_TOKEN }}

release:
needs: check
permissions:
contents: write
uses: ./.github/workflows/sdk.release.yml
with:
project_folder: 'BankAPILibrary'
package_folder: 'GiniBankAPILibrary'
version_file_path: 'BankAPILibrary/GiniBankAPILibrary/Sources/GiniBankAPILibrary/GiniBankAPILibraryVersion.swift'
git_tag: ${{ github.ref }}
repo_url: 'https://github.com/gini/bank-api-library-ios.git'
secrets:
MOBILE_CI_APP_ID: ${{ secrets.MOBILE_CI_APP_ID }}
MOBILE_CI_APP_PRIVATE_KEY: ${{ secrets.MOBILE_CI_APP_PRIVATE_KEY }}
needs: [get-config, check]
runs-on: macos-latest
steps:
- uses: maxim-lobanov/setup-xcode@60606e260d2fc5762a71e64e74b2174e8ea3c8bd # v1.6.0
with:
xcode-version: ${{ needs.get-config.outputs.xcode-version }}
Comment thread
qnaveed87 marked this conversation as resolved.
Outdated

- name: Checkout
uses: actions/checkout@v4

- name: setup ruby
uses: ruby/setup-ruby@dffc446db9ba5a0c4446edb5bca1c5c473a806c5 # v1.245.0
with:
ruby-version: ${{ needs.get-config.outputs.ruby-version }}
bundler-cache: true

release-documentation:
needs: release
Expand Down
8 changes: 6 additions & 2 deletions .github/workflows/bank-sdk.build.docs.yml
Original file line number Diff line number Diff line change
Expand Up @@ -12,20 +12,24 @@ concurrency:
cancel-in-progress: ${{ !contains(github.ref, 'refs/tags/')}}

jobs:
get-config:
uses: ./.github/workflows/shared-config.yml

documentation:
needs: get-config
runs-on: macos-latest
steps:
- uses: maxim-lobanov/setup-xcode@60606e260d2fc5762a71e64e74b2174e8ea3c8bd # v1.6.0
with:
xcode-version: '16.4'
xcode-version: ${{ needs.get-config.outputs.xcode-version }}

- name: Checkout
uses: actions/checkout@v4

- name: setup ruby
uses: ruby/setup-ruby@dffc446db9ba5a0c4446edb5bca1c5c473a806c5 # v1.245.0
with:
ruby-version: '3.2.0'
ruby-version: ${{ needs.get-config.outputs.ruby-version }}
bundler-cache: true

- name: Build GiniBankSDK documentation
Expand Down
10 changes: 7 additions & 3 deletions .github/workflows/bank-sdk.build.xcframeworks.yml
Original file line number Diff line number Diff line change
Expand Up @@ -9,21 +9,25 @@ on:
workflow_dispatch:

jobs:
get-config:
uses: ./.github/workflows/shared-config.yml

prepare-frameworks:
needs: get-config
name: Create Release
runs-on: macos-15
runs-on: macos-latest
steps:
- uses: maxim-lobanov/setup-xcode@60606e260d2fc5762a71e64e74b2174e8ea3c8bd # v1.6.0
with:
xcode-version: '16.4'
xcode-version: ${{ needs.get-config.outputs.xcode-version }}

- name: Checkout repository
uses: actions/checkout@v4

- name: Setup Ruby
uses: ruby/setup-ruby@dffc446db9ba5a0c4446edb5bca1c5c473a806c5 # v1.245.0
with:
ruby-version: '3.2.0'
ruby-version: ${{ needs.get-config.outputs.ruby-version }}
bundler-cache: true

- name: Archiving project and creating XCFrameworks
Expand Down
13 changes: 8 additions & 5 deletions .github/workflows/bank-sdk.check.yml
Original file line number Diff line number Diff line change
Expand Up @@ -23,16 +23,19 @@ concurrency:
cancel-in-progress: ${{ !contains(github.ref, 'refs/tags/')}}

jobs:
get-config:
uses: ./.github/workflows/shared-config.yml

check:
needs: get-config
runs-on: macos-latest
strategy:
matrix:
target: [GiniBankSDK]
destination: ['platform=iOS Simulator,OS=18.5,name=iPhone 16']
steps:
- uses: maxim-lobanov/setup-xcode@60606e260d2fc5762a71e64e74b2174e8ea3c8bd # v1.6.0
with:
xcode-version: '16.4'
xcode-version: ${{ needs.get-config.outputs.xcode-version }}

- name: Checkout
uses: actions/checkout@v4
Expand All @@ -47,7 +50,7 @@ jobs:
- name: Setup ruby
uses: ruby/setup-ruby@dffc446db9ba5a0c4446edb5bca1c5c473a806c5 # v1.245.0
with:
ruby-version: '3.2.0'
ruby-version: ${{ needs.get-config.outputs.ruby-version }}
bundler-cache: true

- name: Build and run tests for "${{ matrix.target }}"
Expand All @@ -60,7 +63,7 @@ jobs:
options: >
{
"target": "${{ matrix.target }}",
"destination": "${{ matrix.destination }}",
"destination": "${{ needs.get-config.outputs.ios-simulator-destination }}",
"clientId": "$TEST_CLIENT_ID",
"clientSecret": "$TEST_CLIENT_SECRET",
"result_bundle_path": "sonar-coverage.xcresult"
Expand Down Expand Up @@ -90,7 +93,7 @@ jobs:
xcodebuild clean test
-project BankSDK/GiniBankSDKExample/GiniBankSDKExample.xcodeproj
-scheme "GiniBankSDKExampleTests"
-destination "${{ matrix.destination }}"
-destination "${{ needs.get-config.outputs.ios-simulator-destination }}"
CODE_SIGN_IDENTITY=""
CODE_SIGNING_REQUIRED=NO
ONLY_ACTIVE_ARCH=NO
Expand Down
8 changes: 6 additions & 2 deletions .github/workflows/bank-sdk.publish.example.app.firebase.yml
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,11 @@ concurrency:
cancel-in-progress: ${{ !contains(github.ref, 'refs/tags/')}}

jobs:
get-config:
uses: ./.github/workflows/shared-config.yml

upload-version:
needs: get-config
environment: firebase-manual-deploy
runs-on: macos-latest
steps:
Expand All @@ -26,12 +30,12 @@ jobs:

- uses: maxim-lobanov/setup-xcode@60606e260d2fc5762a71e64e74b2174e8ea3c8bd # v1.6.0
with:
xcode-version: '16.4'
xcode-version: ${{ needs.get-config.outputs.xcode-version }}

- name: Setup Manual Signing for Xcode project
uses: ruby/setup-ruby@dffc446db9ba5a0c4446edb5bca1c5c473a806c5 # v1.245.0
with:
ruby-version: '3.2.0'
ruby-version: ${{ needs.get-config.outputs.ruby-version }}
bundler-cache: true
- uses: maierj/fastlane-action@5a3b971aaa26776459bb26894d6c1a1a84a311a7 # v3.1.0
with:
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -13,10 +13,14 @@ concurrency:


jobs:
get-config:
uses: ./.github/workflows/shared-config.yml

upload-testflight:
needs: get-config
uses: ./.github/workflows/publish.example.app.testflight.yml
with:
xcode_version: '16.3'
xcode_version: ${{ needs.get-config.outputs.xcode-version }}
project_path: 'BankSDK/GiniBankSDKExample/GiniBankSDKExample.xcodeproj'
scheme: 'GiniBankSDKExample'
bundle_identifier: 'net.gini.banksdk.example'
Expand Down
48 changes: 35 additions & 13 deletions .github/workflows/bank-sdk.release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -9,27 +9,49 @@ on:
workflow_dispatch:

jobs:
get-config:
uses: ./.github/workflows/shared-config.yml

check:
needs: get-config
uses: gini/gini-mobile-ios/.github/workflows/bank-sdk.check.yml@main
secrets:
GINI_MOBILE_CI_PASSWORD: ${{ secrets.GINI_MOBILE_CI_PASSWORD }}
GINI_MOBILE_CI_USERNAME: ${{ secrets.GINI_MOBILE_CI_USERNAME }}
SONAR_TOKEN: ${{ secrets.SONAR_TOKEN }}

release:
needs: check
permissions:
contents: write
uses: ./.github/workflows/sdk.release.yml
with:
project_folder: 'BankSDK'
package_folder: 'GiniBankSDK'
version_file_path: 'BankSDK/GiniBankSDK/Sources/GiniBankSDK/GiniBankSDKVersion.swift'
git_tag: ${{ github.ref }}
repo_url: 'https://github.com/gini/bank-sdk-ios.git'
secrets:
MOBILE_CI_APP_ID: ${{ secrets.MOBILE_CI_APP_ID }}
MOBILE_CI_APP_PRIVATE_KEY: ${{ secrets.MOBILE_CI_APP_PRIVATE_KEY }}
needs: [get-config, check]
runs-on: macos-latest
steps:
- uses: maxim-lobanov/setup-xcode@60606e260d2fc5762a71e64e74b2174e8ea3c8bd # v1.6.0
with:
xcode-version: ${{ needs.get-config.outputs.xcode-version }}
Comment thread
qnaveed87 marked this conversation as resolved.
Outdated

- name: Checkout
uses: actions/checkout@v4

- name: setup ruby
uses: ruby/setup-ruby@dffc446db9ba5a0c4446edb5bca1c5c473a806c5 # v1.245.0
with:
ruby-version: ${{ needs.get-config.outputs.ruby-version }}
bundler-cache: true

- name: Publish GiniBankSDK package to the release repo
uses: maierj/fastlane-action@5a3b971aaa26776459bb26894d6c1a1a84a311a7 # v3.1.0
with:
lane: 'publish_swift_package'
options: >
{
"project_folder": "BankSDK",
"package_folder": "GiniBankSDK",
"version_file_path": "BankSDK/GiniBankSDK/Sources/GiniBankSDK/GiniBankSDKVersion.swift",
"git_tag": "${{ github.ref }}",
"repo_url": "https://github.com/gini/bank-sdk-ios.git",
"repo_user": "${{ secrets.RELEASE_GITHUB_USER }}",
"repo_password": "${{ secrets.RELEASE_GITHUB_PASSWORD }}",
"ci": "true"
}

release-documentation:
needs: release
Expand Down
8 changes: 6 additions & 2 deletions .github/workflows/capture-sdk.build.docs.yml
Original file line number Diff line number Diff line change
Expand Up @@ -12,20 +12,24 @@ concurrency:
cancel-in-progress: ${{ !contains(github.ref, 'refs/tags/')}}

jobs:
get-config:
uses: ./.github/workflows/shared-config.yml

documentation:
needs: get-config
runs-on: macos-latest
steps:
- uses: maxim-lobanov/setup-xcode@60606e260d2fc5762a71e64e74b2174e8ea3c8bd # v1.6.0
with:
xcode-version: '16.4'
xcode-version: ${{ needs.get-config.outputs.xcode-version }}

- name: Checkout
uses: actions/checkout@v4

- name: setup ruby
uses: ruby/setup-ruby@dffc446db9ba5a0c4446edb5bca1c5c473a806c5 # v1.245.0
with:
ruby-version: '3.2.0'
ruby-version: ${{ needs.get-config.outputs.ruby-version }}
bundler-cache: true

- name: Build GiniCaptureSDK documentation
Expand Down
10 changes: 7 additions & 3 deletions .github/workflows/capture-sdk.check.yml
Original file line number Diff line number Diff line change
Expand Up @@ -20,16 +20,20 @@ concurrency:
cancel-in-progress: ${{ !contains(github.ref, 'refs/tags/')}}

jobs:
get-config:
uses: ./.github/workflows/shared-config.yml

check:
needs: get-config
runs-on: macos-latest
strategy:
matrix:
target: [GiniCaptureSDK]
destination: ['platform=iOS Simulator,OS=18.5,name=iPhone 16']
destination: ['${{ needs.get-config.outputs.ios-simulator-destination }}']
steps:
- uses: maxim-lobanov/setup-xcode@60606e260d2fc5762a71e64e74b2174e8ea3c8bd # v1.6.0
with:
xcode-version: '16.4'
xcode-version: ${{ needs.get-config.outputs.xcode-version }}

- name: Checkout
uses: actions/checkout@v4
Expand All @@ -45,7 +49,7 @@ jobs:
- name: Setup ruby
uses: ruby/setup-ruby@dffc446db9ba5a0c4446edb5bca1c5c473a806c5 # v1.245.0
with:
ruby-version: '3.2.0'
ruby-version: ${{ needs.get-config.outputs.ruby-version }}
bundler-cache: true

- name: Build and run tests for "${{ matrix.target }}"
Expand Down
Loading
Loading