We use MAUI Sherpa to build a bundle containing environments, secrets, profiles, certificates, & more. WE then encrypt that - pass the bundle anywhere to build, including your CI services (GitHub, AzDo, etc).
Bundle Internals - Initial thoughts for "Install" phase
{
"Variables": {
"SentryDsn": "https://myapp"
},
"Production": {
"Variables":{
"Hello" : "World",
"BaseUrl": "https://myapi.com",
"SentryDsn": "https://myapp.production"
},
"Android": {
"Keystore": "base64 encoded keystore file",
"KeyAlias": "key alias",
"KeyPassword": "key password",
"Variables":{
"Hello": "Android World",
"FirebaseApiKey": "firebase api key"
}
},
"iOS":{
"ProvisioningProfile": "base64 encoded provisioning profile",
"Certificate": "base64 encoded certificate",
"CertificatePassword": "certificate password",
"Variables":{
"Hello": "iOS World"
}
},
"MacOS": {
"ProvisioningProfile": "base64 encoded provisioning profile",
"Certificate": "base64 encoded certificate",
"CertificatePassword": "certificate password",
"Variables":{
"Hello": "MacOS World"
}
},
"MacCatalyst": {
"ProvisioningProfile": "base64 encoded provisioning profile",
"Certificate": "base64 encoded certificate",
"CertificatePassword": "certificate password",
"Variables":{
"Hello": "MacCatalyst World"
}
},
"Windows": {
"Certificate": "base64 encoded certificate",
"CertificatePassword": "certificate password",
"Variables":{
"Hello": "Windows World"
}
}
},
"Development": {
}
}
CLI Thoughts
sherpacli.exe myproject.sherpabundle -environment:production -platform:android/ios/windows/etc (multiple - what about parallel builds?)
- action: install, build, deploy OR all OR multiple
TODO
- Deployments
- Builds
- Versioning
Need to consider the following output variables from different phases
- Build phase should output the ipa/exe/aab file path
This feature could/should overlap with #129
We use MAUI Sherpa to build a bundle containing environments, secrets, profiles, certificates, & more. WE then encrypt that - pass the bundle anywhere to build, including your CI services (GitHub, AzDo, etc).
Bundle Internals - Initial thoughts for "Install" phase
{ "Variables": { "SentryDsn": "https://myapp" }, "Production": { "Variables":{ "Hello" : "World", "BaseUrl": "https://myapi.com", "SentryDsn": "https://myapp.production" }, "Android": { "Keystore": "base64 encoded keystore file", "KeyAlias": "key alias", "KeyPassword": "key password", "Variables":{ "Hello": "Android World", "FirebaseApiKey": "firebase api key" } }, "iOS":{ "ProvisioningProfile": "base64 encoded provisioning profile", "Certificate": "base64 encoded certificate", "CertificatePassword": "certificate password", "Variables":{ "Hello": "iOS World" } }, "MacOS": { "ProvisioningProfile": "base64 encoded provisioning profile", "Certificate": "base64 encoded certificate", "CertificatePassword": "certificate password", "Variables":{ "Hello": "MacOS World" } }, "MacCatalyst": { "ProvisioningProfile": "base64 encoded provisioning profile", "Certificate": "base64 encoded certificate", "CertificatePassword": "certificate password", "Variables":{ "Hello": "MacCatalyst World" } }, "Windows": { "Certificate": "base64 encoded certificate", "CertificatePassword": "certificate password", "Variables":{ "Hello": "Windows World" } } }, "Development": { } }CLI Thoughts
sherpacli.exe myproject.sherpabundle -environment:production -platform:android/ios/windows/etc (multiple - what about parallel builds?)
- action: install, build, deploy OR all OR multiple
TODO
Need to consider the following output variables from different phases
This feature could/should overlap with #129