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.

activation.json 9.0 KiB

3 年之前
3 年之前
Introduce packer support (#18) cleanups and fixes, packer is ready to roll add errorApi endpoint initialize mitmproxy dependencies packer deployments finally working fix virtualenv call for ubuntu 20.04 WIP. update to ubuntu 20.04. fixing algo installation WIP. packer fixes remove unused constant WIP. packer basics working for ec2 Merge branch 'master' of git.bubblev.org:bubblev/bubble into cobbzilla/introduce_packer remove automation dir, all moved to resources log pg autovacuum if longer than 250ms touch install marker for algo set mitmproxy as owner of all mitmproxy files add hostname to packer image name avoid closing progress meter prematurely WIP. parallelize node startup, fix packer bugs clarify docs add missing vars, algo tweaks add missing vars, update algo hash WIP. improving algo/mitmproxy packer stuff install packer for sage, call packer from proper location Use compute driver to get regions improve comments wait longer before polling new vultr server, avoid spurious ok status unquote simple filenames WIP. Use packer key, no more instance ssh key. Change API installation. Simplify packer/ansible. rename bubble_finalizer to just finalizer, remove default_roles filter servers/images based on installType for now, consider packer image OK if bubble version matches add algo/mitm roles to packer. add installType to BubbleNode fix NODE_ROLES file templatize packer file and playbook, use same template for sage and node WIP: refactor addAllRegions WIP: do not re-create identical images WIP: packer build for vultr now working Merge branch 'master' of git.bubblev.org:bubblev/bubble into cobbzilla/introduce_packer WIP. working on vultr packer builds WIP: packer image creation working for digitalocean WIP: packer basics working for digitalocean add packer endpoints, introduce packer support to cloud compute drivers remove roles endpoints AnsibleRole is no longer an model entity. Introduce Packer. Merge branch 'sfedoriv/APIAddSupportForAmazonEC2ComputeCloudService' of git.bubblev.org:bubblev/bubble into sfedoriv/APIAddSupportForAmazonEC2ComputeCloudService Merge branch 'master' of git.bubblev.org:bubblev/bubble into sfedoriv/APIAddSupportForAmazonEC2ComputeCloudService Merge branch 'master' into sfedoriv/APIAddSupportForAmazonEC2ComputeCloudService Merge branch 'master' into sfedoriv/APIAddSupportForAmazonEC2ComputeCloudService Merge branch 'master' into sfedoriv/APIAddSupportForAmazonEC2ComputeCloudService Merge branch 'master' into sfedoriv/APIAddSupportForAmazonEC2ComputeCloudService Add instance count to script Co-authored-by: Jonathan Cobb <jonathan@kyuss.org> Co-authored-by: Svitlana <sfedoriv@itekako.com> Reviewed-on: https://git.bubblev.org/bubblev/bubble/pulls/18
4 年之前
4 年之前
Introduce packer support (#18) cleanups and fixes, packer is ready to roll add errorApi endpoint initialize mitmproxy dependencies packer deployments finally working fix virtualenv call for ubuntu 20.04 WIP. update to ubuntu 20.04. fixing algo installation WIP. packer fixes remove unused constant WIP. packer basics working for ec2 Merge branch 'master' of git.bubblev.org:bubblev/bubble into cobbzilla/introduce_packer remove automation dir, all moved to resources log pg autovacuum if longer than 250ms touch install marker for algo set mitmproxy as owner of all mitmproxy files add hostname to packer image name avoid closing progress meter prematurely WIP. parallelize node startup, fix packer bugs clarify docs add missing vars, algo tweaks add missing vars, update algo hash WIP. improving algo/mitmproxy packer stuff install packer for sage, call packer from proper location Use compute driver to get regions improve comments wait longer before polling new vultr server, avoid spurious ok status unquote simple filenames WIP. Use packer key, no more instance ssh key. Change API installation. Simplify packer/ansible. rename bubble_finalizer to just finalizer, remove default_roles filter servers/images based on installType for now, consider packer image OK if bubble version matches add algo/mitm roles to packer. add installType to BubbleNode fix NODE_ROLES file templatize packer file and playbook, use same template for sage and node WIP: refactor addAllRegions WIP: do not re-create identical images WIP: packer build for vultr now working Merge branch 'master' of git.bubblev.org:bubblev/bubble into cobbzilla/introduce_packer WIP. working on vultr packer builds WIP: packer image creation working for digitalocean WIP: packer basics working for digitalocean add packer endpoints, introduce packer support to cloud compute drivers remove roles endpoints AnsibleRole is no longer an model entity. Introduce Packer. Merge branch 'sfedoriv/APIAddSupportForAmazonEC2ComputeCloudService' of git.bubblev.org:bubblev/bubble into sfedoriv/APIAddSupportForAmazonEC2ComputeCloudService Merge branch 'master' of git.bubblev.org:bubblev/bubble into sfedoriv/APIAddSupportForAmazonEC2ComputeCloudService Merge branch 'master' into sfedoriv/APIAddSupportForAmazonEC2ComputeCloudService Merge branch 'master' into sfedoriv/APIAddSupportForAmazonEC2ComputeCloudService Merge branch 'master' into sfedoriv/APIAddSupportForAmazonEC2ComputeCloudService Merge branch 'master' into sfedoriv/APIAddSupportForAmazonEC2ComputeCloudService Add instance count to script Co-authored-by: Jonathan Cobb <jonathan@kyuss.org> Co-authored-by: Svitlana <sfedoriv@itekako.com> Reviewed-on: https://git.bubblev.org/bubblev/bubble/pulls/18
4 年之前
3 年之前
4 年之前
4 年之前
4 年之前
4 年之前
3 年之前
3 年之前
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264
  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. // Docker can be used for testing or for advanced use cases
  64. "DockerCompute": {
  65. "config": {},
  66. "credentials": {
  67. // these are the default settings, change as needed
  68. "host": "unix:///var/run/docker.sock",
  69. "tlsVerify": "false", // if tlsVerify is "true" then certPath must be set
  70. "certPath": null,
  71. "registryUrl": null,
  72. "registryUsername": null,
  73. "registryEmail": null,
  74. "registryPassword": null
  75. }
  76. },
  77. ///////////////////////
  78. // Storage
  79. ///////////////////////
  80. // LocalStorage is required, just leave this as-is.
  81. // If you really want, you can change the baseDir
  82. "LocalStorage": {
  83. "config": { "baseDir": ".bubble_local_storage" },
  84. "credentials": {}
  85. },
  86. // You must configure the AWS S3 Storage service in order to launch new Bubbles
  87. "S3Storage" : {
  88. "config": {
  89. // 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
  90. "region": "US_EAST_1",
  91. "bucket": "must be a valid bucket name that the credentials can read/write/list/delete",
  92. "prefix": "", // optional: all paths for S3 operations will be prefixed with this path
  93. "listFetchSize": 100
  94. },
  95. "credentials" : {
  96. "AWS_ACCESS_KEY_ID": "your_aws_access_key_id",
  97. "AWS_SECRET_KEY": "your_aws_secret_key"
  98. }
  99. },
  100. ///////////////////////
  101. // Email
  102. ///////////////////////
  103. // You must configure an email service, it is required to send emails
  104. // Comment out the other ones out if you're not going to use them
  105. "SmtpEmail": {
  106. "config": { "tlsEnabled": true },
  107. "credentials": {
  108. "user": "your_smtp_username",
  109. "password": "your_smtp_password",
  110. "host": "your_smtp_server_hostname",
  111. "port": "your_smtp_server_port"
  112. }
  113. },
  114. "SendGridEmail": {
  115. "config": {},
  116. "credentials": {
  117. "apiKey": "your_sendgrid_api_key"
  118. }
  119. },
  120. "MailgunEmail": {
  121. "config": {},
  122. "credentials": {
  123. "domain": "your_mailgun_domain",
  124. "apiKey": "your_mailgun_api_key"
  125. }
  126. },
  127. ///////////////////////
  128. // TOTP Auth
  129. ///////////////////////
  130. // Required for TOTP-based authentication. Nothing to configure, just leave this as-is
  131. "TOTPAuthenticator": {},
  132. ///////////////////////
  133. // SMS
  134. ///////////////////////
  135. // Required for sending SMS messages. Currently only Twilio is supported
  136. // Comment this out if you're not going to use it
  137. "TwilioSms": {
  138. "credentials": {
  139. "accountSID": "your_twilio_account_SID",
  140. "authToken": "your_twilio_auth_token",
  141. // text messages sent by Bubble will come "from" this phone number, must be in Twilio-compatible format
  142. "fromPhoneNumber": "your_twilio_from_number"
  143. }
  144. },
  145. ///////////////////////
  146. // GeoLocation
  147. ///////////////////////
  148. // Required for locale and "nearest compute region" auto-detection. Currently only MaxMind is supported
  149. // Comment this out if you're not going to use it
  150. "MaxMind": {
  151. "config": {
  152. // these values work for the free GeoLite database, but you still have to specify an apiKey
  153. "url": "https://download.maxmind.com/app/geoip_download?edition_id=GeoLite2-City&license_key=[[apiKey]]&suffix=tar.gz",
  154. "file": "GeoLite2-City_20[\\\\d]{6}/GeoLite2-City\\\\.mmdb"
  155. },
  156. "credentials": {"apiKey": "your_maxmind_api_key"}
  157. },
  158. ///////////////////////
  159. // GeoCode
  160. ///////////////////////
  161. // Required for "nearest compute region" auto-detection. Currently only Google GeoCoder is supported
  162. // Comment this out if you're not going to use it
  163. "GoogleGeoCoder": {
  164. "credentials": {"apiKey": "your_google_api_key"}
  165. },
  166. ///////////////////////
  167. // GeoTime
  168. ///////////////////////
  169. // Required for timezone auto-detection. Currently only Google GeoTime is supported
  170. // Comment this out if you're not going to use it
  171. "GoogleGeoTime": {
  172. "credentials": {"apiKey": "your_google_api_key"}
  173. }
  174. },
  175. ///////////////////////
  176. // Initial Domain
  177. ///////////////////////
  178. // initial domain that new Bubbles will be launched within
  179. "domain": {
  180. "publicDns": "Route53Dns or GoDaddyDns", // name of a DNS provider configured above
  181. "name": "example.com" // a domain name that you own, that is managed by the DNS provider named in `publicDns`
  182. },
  183. ///////////////////////
  184. // Expert Settings
  185. ///////////////////////
  186. // You can safely chop off everything from here down from your copy (well, except the closing curly-brace).
  187. // The settings below rarely be changed, and omitting them is the same as not changing them.
  188. // You really shouldn't change them unless you know what you're doing.
  189. // -----------
  190. // skipTests
  191. // -----------
  192. //
  193. // Most of the cloud services you add above have "self-test" features in their Bubble driver.
  194. // Normally, Bubble will test each cloud driver to ensure that it is working properly before
  195. // allowing activation to proceed.
  196. //
  197. // The driver test can detect a lot of configuration problems, invalid API keys, and so on.
  198. // It's a good idea to leave the tests enabled.
  199. //
  200. // If, however, this is not the first time you've run with the exact same JSON file and you KNOW that
  201. // all the clouds/credentials/configs are correct, because they've passed tests before, then setting
  202. // this to true does save a little bit of time during activation.
  203. //
  204. // NOTE: DO NOT SET THIS TO true UNLESS YOU *KNOW* ALL YOUR DRIVERS ARE OK
  205. //
  206. // If the activation.json file has no `skipTests` property, then tests will be enabled
  207. //
  208. "skipTests": false, // set this to true to skip cloud driver tests
  209. // -----------
  210. // skipPacker
  211. // -----------
  212. //
  213. // Bubble needs to ensure that packer images are available on any cloud compute service where you could
  214. // launch a new Bubble. The easiest way to ensure this happens is to check for packer images immediately after
  215. // activation. This is the default behavior.
  216. //
  217. // It's a good idea to do this, because if the images don't exist, then Bubble won't check again until you're
  218. // about to launch your Bubble -- and then you take the 20-minute delay of building the image.
  219. //
  220. // If, however, you KNOW that the images exist, or you explicitly want to create them later using the
  221. // `pack_bubble` command, you can skip the packer check during activation by setting this to true
  222. //
  223. // NOTE: DO NOT SET THIS TO true UNLESS YOU *KNOW* THE PACKER IMAGES ARE VALID FOR YOUR CLOUD PROVIDER
  224. //
  225. // If the activation.json file has no `skipPacker` property, then packer images will be created during activation,
  226. // if not already present.
  227. //
  228. "skipPacker": false
  229. }