GitHub Action
Build iOS Action
This action builds your iOS project (.xcodeproj
, .xcworkspace
) and exports the resulting .ipa
file as GitHub artifact, with optional automatic upload to BrowserStack AppLive.
Tested with Ionic, React Native and native ios projects.
Originally forked from yukiarrr/ios-build-action
.
You can add a single p12 key+cert file with p12-base64
, or if you have key and cert in separate files
you can add them with p12-key-base64
and p12-cer-base64
. One of the two options is required.
Required .xcodeproj path.
Required if single file: Base64 encoded p12 file (key + cert).
Required if split key/cert: Base64 encoded p12 key file.
Required if split key/cert: Base64 encoded certificate for the p12 key.
Required Base64 encoded mobileprovision file.
Required For example, "iOS Distribution"
.
Required Team id.
.xcworkspace path. Default ""
.
Choose app-store, "ad-hoc"
, "package"
"enterprise"
, "development"
, or "developer-id"
. Default "app-store"
.
For example, "Debug"
, "Release"
. Default "Release"
.
For example, "myscheme"
.
Certificate password. Default ""
.
Output path of ipa. Default "output.ipa"
.
These targets will not use automatic code signing and instead use the identity specified in other inputs. Input targets separated by ','. For example, 'MyApp,YourApp'. Default "". (default to all targets)
Run the pod install
command during the build.
The path to the Podfile. Default "Podfile"
Set this to true to upload the resulting .ipa file to Browserstack App Live right after the build (https://www.browserstack.com/docs/app-live/integrations/fastlane)
Defaut to false.
Browserstack username (required if browserstack-upload == true)
Browserstack access key (required if browserstack-upload == true)
If you have any other inputs you'd like to add, feel free to create PR.
Remember to run yarn install
and yarn bundle
if you make changes to the index.js
.
- uses: sparkfabrik/[email protected]
with:
project-path: App.xcodeproj
p12-base64: ${{ secrets.P12_BASE64 }}
mobileprovision-base64: ${{ secrets.MOBILEPROVISION_BASE64 }}
code-signing-identity: ${{ secrets.CODE_SIGNING_IDENTITY }}
team-id: ${{ secrets.TEAM_ID }}
workspace-path: App.xcworkspace # optional
- uses: sparkfabrik/[email protected]
with:
project-path: App.xcodeproj
p12-key-base64: ${{ secrets.P12_KEY_BASE64 }}
p12-cer-base64: ${{ secrets.P12_CER_BASE64 }}
mobileprovision-base64: ${{ secrets.MOBILEPROVISION_BASE64 }}
code-signing-identity: ${{ secrets.CODE_SIGNING_IDENTITY }}
team-id: ${{ secrets.TEAM_ID }}
workspace-path: App.xcworkspace # optional