The main Bubble source repository. Contains the Bubble API server, the web UI, documentation and utilities. https://getbubblenow.com
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 

243 lines
8.2 KiB

  1. // ----------------------
  2. // Bubble Activation JSON
  3. // ----------------------
  4. //
  5. // Do not edit this file directly. Copy this file somewhere else and edit the copy.
  6. //
  7. // When you are happy with your edits, activate a blank bubble using:
  8. //
  9. // ./bin/bactivate /path/to/your/activation.json
  10. //
  11. // NOTE: In this file '//' is used for comments
  12. // Normally comments are not valid JSON, but when you run `bactivate` the Bubble toolchain strips out
  13. // the comments before sending the request to the Bubble server.
  14. //
  15. {
  16. ///////////////////////
  17. // Initial Admin
  18. ///////////////////////
  19. // email, password and description of the initial admin user
  20. "name": "root@local.local", // change this to an email address only you have access to
  21. "password": "REPLACE WITH YOUR ROOT PASSWORD",
  22. "description": "root user",
  23. "cloudConfigs" : {
  24. ///////////////////////
  25. // DNS
  26. ///////////////////////
  27. // You must configure at least one of these DNS services
  28. // Comment the other one out if you're not going to use it
  29. "Route53Dns" : {
  30. "credentials" : {
  31. "AWS_ACCESS_KEY_ID": "your_aws_access_key_id",
  32. "AWS_SECRET_KEY": "your_aws_secret_key"
  33. }
  34. },
  35. "GoDaddyDns" : {
  36. "credentials" : {
  37. "GODADDY_API_KEY": "your_godaddy_api_key",
  38. "GODADDY_API_SECRET": "your_godaddy_api_secret"
  39. }
  40. },
  41. ///////////////////////
  42. // Compute
  43. ///////////////////////
  44. // You must configure at least one of these Compute services
  45. // Comment the other one out if you're not going to use it
  46. "VultrCompute": {
  47. "credentials": {"API-Key": "your_vultr_api_key"}
  48. },
  49. "DigitalOceanCompute": {
  50. "credentials": {"apiKey": "your_digitalocean_api_key"}
  51. },
  52. // EC2 driver is incomplete, use one of the above instead
  53. "AmazonEC2Driver" : {
  54. "config": {
  55. // region must be a valid value from the Regions enum: https://github.com/aws/aws-sdk-java/blob/master/aws-java-sdk-core/src/main/java/com/amazonaws/regions/Regions.java
  56. "region": "your_aws_region" // for example: us-east-1
  57. },
  58. "credentials" : {
  59. "AWS_ACCESS_KEY_ID": "your_aws_access_key_id",
  60. "AWS_SECRET_KEY": "your_aws_secret_key"
  61. }
  62. },
  63. ///////////////////////
  64. // Storage
  65. ///////////////////////
  66. // You must configure the AWS S3 Storage service in order to launch new Bubbles
  67. "S3Storage" : {
  68. "config": {
  69. // region must be a valid value from the Regions enum: https://github.com/aws/aws-sdk-java/blob/master/aws-java-sdk-core/src/main/java/com/amazonaws/regions/Regions.java
  70. "region": "US_EAST_1",
  71. "bucket": "must be a valid bucket name that the credentials can read/write/list/delete",
  72. "prefix": "", // optional: all paths for S3 operations will be prefixed with this path
  73. "listFetchSize": 100
  74. },
  75. "credentials" : {
  76. "AWS_ACCESS_KEY_ID": "your_aws_access_key_id",
  77. "AWS_SECRET_KEY": "your_aws_secret_key"
  78. }
  79. },
  80. ///////////////////////
  81. // Email
  82. ///////////////////////
  83. // You must configure an email service, it is required to send emails
  84. // Comment out the other ones out if you're not going to use them
  85. "SmtpEmail": {
  86. "config": { "tlsEnabled": true },
  87. "credentials": {
  88. "user": "your_smtp_username",
  89. "password": "your_smtp_password",
  90. "host": "your_smtp_server_hostname",
  91. "port": "your_smtp_server_port"
  92. }
  93. },
  94. "SendGridEmail": {
  95. "config": {},
  96. "credentials": {
  97. "apiKey": "your_sendgrid_api_key"
  98. }
  99. },
  100. "MailgunEmail": {
  101. "config": {},
  102. "credentials": {
  103. "domain": "your_mailgun_domain",
  104. "apiKey": "your_mailgun_api_key"
  105. }
  106. },
  107. ///////////////////////
  108. // TOTP Auth
  109. ///////////////////////
  110. // Required for TOTP-based authentication. Nothing to configure, just leave this as-is
  111. "TOTPAuthenticator": {},
  112. ///////////////////////
  113. // SMS
  114. ///////////////////////
  115. // Required for sending SMS messages. Currently only Twilio is supported
  116. // Comment this out if you're not going to use it
  117. "TwilioSms": {
  118. "credentials": {
  119. "accountSID": "your_twilio_account_SID",
  120. "authToken": "your_twilio_auth_token",
  121. // text messages sent by Bubble will come "from" this phone number, must be in Twilio-compatible format
  122. "fromPhoneNumber": "your_twilio_from_number"
  123. }
  124. },
  125. ///////////////////////
  126. // GeoLocation
  127. ///////////////////////
  128. // Required for locale and "nearest compute region" auto-detection. Currently only MaxMind is supported
  129. // Comment this out if you're not going to use it
  130. "MaxMind": {
  131. "config": {
  132. // these values work for the free GeoLite database, but you still have to specify an apiKey
  133. "url": "https://download.maxmind.com/app/geoip_download?edition_id=GeoLite2-City&license_key=[[apiKey]]&suffix=tar.gz",
  134. "file": "GeoLite2-City_20[\\\\d]{6}/GeoLite2-City\\\\.mmdb"
  135. },
  136. "credentials": {"apiKey": "your_maxmind_api_key"}
  137. },
  138. ///////////////////////
  139. // GeoCode
  140. ///////////////////////
  141. // Required for "nearest compute region" auto-detection. Currently only Google GeoCoder is supported
  142. // Comment this out if you're not going to use it
  143. "GoogleGeoCoder": {
  144. "credentials": {"apiKey": "your_google_api_key"}
  145. },
  146. ///////////////////////
  147. // GeoTime
  148. ///////////////////////
  149. // Required for timezone auto-detection. Currently only Google GeoTime is supported
  150. // Comment this out if you're not going to use it
  151. "GoogleGeoTime": {
  152. "credentials": {"apiKey": "your_google_api_key"}
  153. }
  154. },
  155. ///////////////////////
  156. // Initial Domain
  157. ///////////////////////
  158. // initial domain that new Bubbles will be launched within
  159. "domain": {
  160. "publicDns": "Route53Dns or GoDaddyDns", // name of a DNS provider configured above
  161. "name": "example.com" // a domain name that you own, that is managed by the DNS provider named in `publicDns`
  162. },
  163. ///////////////////////
  164. // Expert Settings
  165. ///////////////////////
  166. // You can safely chop off everything from here down from your copy.
  167. // The settings below rarely be changed, omitting them is the same as not changing them
  168. // and you really shouldn't change them unless you know what you're doing.
  169. // -----------
  170. // skipTests
  171. // -----------
  172. //
  173. // Most of the cloud services you add above have "self-test" features in their Bubble driver.
  174. // Normally, Bubble will test each cloud driver to ensure that it is working properly before
  175. // allowing activation to proceed.
  176. //
  177. // The driver test can detect a lot of configuration problems, invalid API keys, and so on.
  178. // It's a good idea to leave the tests enabled.
  179. //
  180. // If, however, this is not the first time you've run with the exact same JSON file and you KNOW that
  181. // all the clouds/credentials/configs are correct, because they've passed tests before, then setting
  182. // this to true does save a little bit of time during activation.
  183. //
  184. // NOTE: DO NOT SET THIS TO true UNLESS YOU *KNOW* ALL YOUR DRIVERS ARE OK
  185. //
  186. // If the activation.json file has no `skipTests` property, then tests will be enabled
  187. //
  188. "skipTests": false, // set this to true to skip cloud driver tests
  189. // -----------
  190. // skipPacker
  191. // -----------
  192. //
  193. // Bubble needs to ensure that packer images are available on any cloud compute service where you could
  194. // launch a new Bubble. The easiest way to ensure this happens is to check for packer images immediately after
  195. // activation. This is the default behavior.
  196. //
  197. // It's a good idea to do this, because if the images don't exist, then Bubble won't check again until you're
  198. // about to launch your Bubble -- and then you take the 20-minute delay of building the image.
  199. //
  200. // If, however, you KNOW that the images exist, or you explicitly want to create them later using the
  201. // `pack_bubble` command, you can skip the packer check during activation by setting this to true
  202. //
  203. // NOTE: DO NOT SET THIS TO true UNLESS YOU *KNOW* THE PACKER IMAGES ARE VALID FOR YOUR CLOUD PROVIDER
  204. //
  205. // If the activation.json file has no `skipPacker` property, then packer images will be created during activation,
  206. // if not already present.
  207. //
  208. "skipPacker": false
  209. }