-
Notifications
You must be signed in to change notification settings - Fork 57
82 lines (78 loc) · 3.83 KB
/
Copy pathrelease-walletkit.yaml
File metadata and controls
82 lines (78 loc) · 3.83 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
name: Release WalletKit
run-name: "WalletKit - ${{ inputs.platform == 'ios' && '🍎 iOS' || '🤖 Android' }} (${{ inputs.release-type }})"
permissions:
id-token: write
contents: read
on:
workflow_dispatch:
inputs:
platform:
description: 'Platform to build'
required: true
type: choice
options:
- android
- ios
release-type:
description: 'Release type'
required: true
type: choice
options:
- internal
- production
e2e-build:
description: 'Build for E2E tests (uploads to S3 for AppKit SDK repo tests)'
required: false
type: boolean
default: false
jobs:
release-android:
if: ${{ inputs.platform == 'android' }}
uses: ./.github/workflows/release-android-base.yaml
with:
name: WalletKit React Native
root-path: 'wallets/rn_cli_wallet'
release-type: ${{ inputs.release-type }}
project-type: 'wallet'
output-path: ${{ inputs.release-type == 'internal' && 'wallets/rn_cli_wallet/android/app/build/outputs/apk/internal/app-internal.apk' || 'wallets/rn_cli_wallet/android/app/build/outputs/apk/release/app-release.apk' }}
upload-to-bucket: ${{ inputs.e2e-build }}
firebase-app-id: ${{ inputs.release-type == 'internal' && vars.WALLETKIT_ANDROID_INTERNAL_FIREBASE_APP_ID || vars.WALLETKIT_ANDROID_PROD_FIREBASE_APP_ID }}
secrets:
env-file: ${{ secrets.WALLETKIT_ENV_FILE }}
sentry-file: ${{ secrets.WALLETKIT_SENTRY_FILE }}
secrets-file: ${{ secrets.ANDROID_SECRETS_FILE }}
gsa-key: ${{ secrets.FIREBASE_SERVICE_ACCOUNT_KEY }}
keystore-name: ${{ inputs.release-type == 'internal' && vars.WC_INTERNAL_KEYSTORE_NAME || vars.WC_PROD_KEYSTORE_NAME }}
keystore: ${{ inputs.release-type == 'internal' && secrets.WC_INTERNAL_KEYSTORE || secrets.WC_PROD_KEYSTORE }}
google-services-file: ${{ secrets.ANDROID_GOOGLE_SERVICES_BASE64 }}
aws-account-id: ${{ secrets.AWS_ACCOUNT_ID }}
slack-webhook-url: ${{ secrets.SLACK_WEBHOOK_URL }}
firebase-url: ${{ inputs.release-type == 'internal' && vars.FIREBASE_WALLETKIT_INTERNAL_URL || vars.FIREBASE_WALLETKIT_PROD_URL }}
release-ios:
if: ${{ inputs.platform == 'ios' }}
uses: ./.github/workflows/release-ios-base.yaml
with:
name: WalletKit React Native
root-path: 'wallets/rn_cli_wallet'
release-type: ${{ inputs.release-type }}
scheme-name: ${{ inputs.release-type == 'internal' && 'RNWallet-Internal' || 'RNWallet' }}
bundle-id: ${{ inputs.release-type == 'internal' && 'com.walletconnect.web3wallet.rnsample.internal' || 'com.walletconnect.web3wallet.rnsample' }}
apple-id: ${{ inputs.release-type == 'internal' && '6499165794' || '6449264964' }}
project-type: 'wallet'
build-for-simulator: ${{ inputs.e2e-build }}
upload-to-bucket: ${{ inputs.e2e-build }}
secrets:
env-file: ${{ secrets.WALLETKIT_ENV_FILE }}
sentry-file: ${{ secrets.WALLETKIT_SENTRY_FILE }}
apple-username: ${{ secrets.APPLE_USERNAME }}
apple-key-id: ${{ secrets.APPLE_KEY_ID }}
apple-key-content: ${{ secrets.APPLE_KEY_CONTENT }}
apple-issuer-id: ${{ secrets.APPLE_ISSUER_ID }}
match-username: ${{ secrets.MATCH_USERNAME }}
match-keychain-password: ${{ secrets.MATCH_KEYCHAIN_PASSWORD }}
match-git-url: ${{ secrets.MATCH_GIT_URL }}
match-ssh-key: ${{ secrets.MATCH_SSH_KEY }}
google-services-file: ${{ inputs.release-type == 'internal' && secrets.WALLETKIT_IOS_INTERNAL_GOOGLE_SERVICES_FILE || secrets.WALLETKIT_IOS_PROD_GOOGLE_SERVICES_FILE }}
aws-account-id: ${{ secrets.AWS_ACCOUNT_ID }}
slack-webhook-url: ${{ secrets.SLACK_WEBHOOK_URL }}
testflight-url: ${{ inputs.release-type == 'internal' && vars.TESTFLIGHT_WALLETKIT_INTERNAL_URL || vars.TESTFLIGHT_WALLETKIT_PROD_URL }}