42edcd1c33 
					 
					
						
						
							
							Updates for upstream IP handling  
						
						
						
						
					 
					
						2021-07-23 18:07:37 +02:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						b27d5b3c5b 
					 
					
						
						
							
							Add basic "create" API..  
						
						... 
						
						
						
						.. using server-side API tokens 
						
						
					 
					
						2021-07-23 18:07:35 +02:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						72c04d8495 
					 
					
						
						
							
							Docker image, & local development docker-compose.yml ( #2 )  
						
						... 
						
						
						
						Adds:
- a Docker image, which can be used in both development and production
- a `docker-compose.yml` file for local development (could probably be adapted for production deployments)
Testing:
- `git checkout docker`
- `docker-compose up`
- pray 🙏 
- go to http://localhost:5000 
## App architecture
I added the ability to load secret config variables (`HUB_TOKEN`, `STRIPE_SECRET_KEY` etc) from files, to support [Docker Secrets](https://docs.docker.com/engine/swarm/secrets/ ) natively. The code should probably log an error if a specified `HUB_TOKEN_FILE` doesn't exist instead of failing silently..
## Docker architecture
This uses a multi-stage build to reduce the size of the final image -- having pipenv install to a predefined virtualenv, and then copying that over.
The compose file doesn't include a definition for a cron runner service, and I haven't tested running one yet. Here be dragons!
You can rebuild the image locally using `docker-compose build`, but this isn't required for changes to the app code, only if you edit the `Dockerfile`, or want to publish your image for use on a swarm server (in which case you will need to edit the image name to put in your own Docker hub credentials).
Currently, the image is rebuilt (should set up auto-tagging..) and published with every push to this 3wordchant/capsul-flask fork.
Reviewed-on: 3wordchant/capsul-flask#2 
Co-authored-by: 3wordchant <3wordchant@noreply.git.autonomic.zone >
Co-committed-by: 3wordchant <3wordchant@noreply.git.autonomic.zone > 
						
						
					 
					
						2021-07-22 01:18:10 +02:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						5bb76173dd 
					 
					
						
						
							
							Add custom themes, THEME setting, basic "yolocolo" theme ( #7 )  
						
						... 
						
						
						
						Specify `THEME=yourtheme`, add some HTML files in `capsulflask/theme/yourtheme` 👌 
We probably want to reduce copypasta in the current `yolocolo` theme by using template inheritance, at some point.
Reviewed-on: 3wordchant/capsul-flask#7 
Co-authored-by: 3wordchant <3wordchant@noreply.git.autonomic.zone >
Co-committed-by: 3wordchant <3wordchant@noreply.git.autonomic.zone > 
						
						
					 
					
						2021-07-22 01:15:39 +02:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						50ee1144f9 
					 
					
						
						
							
							Merge remote-tracking branch 'threewordchant/master'  
						
						
						
						
					 
					
						2021-07-21 16:46:50 -05:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						08eb38dc57 
					 
					
						
						
							
							correctly enforce affordable_vm_sizes post form submission  
						
						
						
						
					 
					
						2021-07-21 16:45:53 -05:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						f999adaf71 
					 
					
						
						
							
							Add VMs to the database even with HUB_MODE=mock ( #6 )  
						
						... 
						
						
						
						https://todo.cyberia.club/~cyberia/services/83 
Co-authored-by: 3wc <3wc.cyberia@doesthisthing.work >
Co-authored-by: forest <forest.n.johnson@gmail.com >
Reviewed-on: 3wordchant/capsul-flask#6 
Co-authored-by: 3wordchant <3wordchant@noreply.git.autonomic.zone >
Co-committed-by: 3wordchant <3wordchant@noreply.git.autonomic.zone > 
					
						2021-07-21 23:26:10 +02:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						8f2becb9ee 
					 
					
						
						
							
							Fix SyntaxWarning on is not ""  
						
						... 
						
						
						
						`capsulflask/__init__.py:143: SyntaxWarning: "is not" with a literal. Did you mean "!="?` 
						
						
					 
					
						2021-07-21 21:51:50 +02:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						f848eda931 
					 
					
						
						
							
							Merge pull request 'Disable BTCPay in the interface, if BTCPAY_PRIVATE_KEY is un-set' ( #3 ) from optional-btcpay into master  
						
						... 
						
						
						
						Reviewed-on: 3wordchant/capsul-flask#3  
						
						
					 
					
						2021-07-21 20:20:40 +02:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						46f49e8d8f 
					 
					
						
						
							
							Merge pull request 'Auto-generate the pricing table from the database' ( #4 ) from generated-prices into master  
						
						... 
						
						
						
						Reviewed-on: 3wordchant/capsul-flask#4  
						
						
					 
					
						2021-07-21 19:32:09 +02:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						36329796f0 
					 
					
						
						
							
							define BTCPAY_ENABLED based on URL and btcpay key, pass it explicitly  
						
						
						
						
					 
					
						2021-07-21 12:12:41 -05:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						28271ee852 
					 
					
						
						
							
							remove class="small" from pricing table cuz normal size fits fine  
						
						
						
						
					 
					
						2021-07-21 11:53:44 -05:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						7923f3a99f 
					 
					
						
						
							
							Auto-generate the pricing table from the database  
						
						
						
						
					 
					
						2021-07-21 12:19:28 +02:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						7ed847251f 
					 
					
						
						
							
							Don't load /btcpay if BTCPAY_PRIVATE_KEY un-set  
						
						
						
						
					 
					
						2021-07-21 00:22:58 +02:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						e3a4776a5d 
					 
					
						
						
							
							Hide the BTCPay link if BTCPAY_PRIVATE_KEY un-set  
						
						
						
						
					 
					
						2021-07-21 00:20:38 +02:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						357d99cb91 
					 
					
						
						
							
							Add load_config_vars context processor..  
						
						... 
						
						
						
						..to allow accessing config variables in the templates.
This removes the need for adding config variables manually to template
contexts. 
						
						
					 
					
						2021-07-21 00:19:38 +02:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						b8279d7491 
					 
					
						
						
							
							add about ssh link to faq  
						
						
						
						
					 
					
						2021-07-19 18:09:02 -05:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						908d02803f 
					 
					
						
						
							
							move hardcoding public3 to the right place  
						
						
						
						
					 
					
						2021-07-12 16:10:28 -05:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						6e6bd2b143 
					 
					
						
						
							
							fix syntax error  
						
						
						
						
					 
					
						2021-07-12 16:00:37 -05:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						47fbaab403 
					 
					
						
						
							
							hardcode network_name=public3 to sidestep phantom dhcp lease issues  
						
						
						
						
					 
					
						2021-07-12 15:59:20 -05:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						06a2bd3a6f 
					 
					
						
						
							
							add public_ipv4_first_usable_ip, public_ipv4_last_usable_ip  
						
						
						
						
					 
					
						2021-07-12 14:38:56 -05:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						fbe9c7fca4 
					 
					
						
						
							
							fix last IP address hanging off the end of the display on admin page  
						
						
						
						
					 
					
						2021-07-12 12:27:07 -05:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						6bdb133153 
					 
					
						
						
							
							make admin display work better on phones  
						
						
						
						
					 
					
						2021-07-12 12:23:27 -05:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						b459e56f3a 
					 
					
						
						
							
							use the provided network_name when creating a capsul  
						
						
						
						
					 
					
						2021-07-12 12:19:56 -05:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						be54117736 
					 
					
						
						
							
							migration 17: network_name -> virtual_bridge_name, add network_name col  
						
						
						
						
					 
					
						2021-07-12 12:16:32 -05:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						aaf33a245b 
					 
					
						
						
							
							point capsul at new public3/virbr3 network  
						
						
						
						
					 
					
						2021-07-12 11:29:37 -05:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						ad9c3476c7 
					 
					
						
						
							
							simplify cidr block logic a little bit  
						
						
						
						
					 
					
						2021-07-12 11:29:33 -05:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						fcbea1e29b 
					 
					
						
						
							
							fixing capsul creation after I broke it with the pre-allocated IP  
						
						... 
						
						
						
						address changes 
						
						
					 
					
						2021-07-11 12:18:58 -05:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						a2f2e744e4 
					 
					
						
						
							
							MAIL_USE_TLS=False, MAIL_USE_SSL=True defaults  
						
						
						
						
					 
					
						2021-07-11 10:28:47 -05:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						79ef90c380 
					 
					
						
						
							
							hub allocate capsul IP addr when the create operation is being claimed  
						
						... 
						
						
						
						create.sh will now be passed two extra arguments from the web app:
network_name and public_ipv4_address
network_name will be virbr1 or virbr2 or whatever the network is called
and public_ipv4_address will be an ipv4 from that network which is not
currently being used 
						
						
					 
					
						2021-07-09 17:08:51 -05:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						c216c5b992 
					 
					
						
						
							
							adjust admin display  
						
						
						
						
					 
					
						2021-07-09 14:52:46 -05:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						47cdb0c7e6 
					 
					
						
						
							
							hotfix support MAIL_USE_SSL  
						
						
						
						
					 
					
						2021-07-09 14:44:48 -05:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						74d77224f7 
					 
					
						
						
							
							finishing touches and fixes on managed IPs database migration 16  
						
						
						
						
					 
					
						2021-07-09 14:35:23 -05:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						862b14545b 
					 
					
						
						
							
							more managed ips work: cli sql improvements, added admin panel  
						
						
						
						
					 
					
						2021-07-09 14:13:28 -05:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						e685c8a773 
					 
					
						
						
							
							start working on managed IPs  
						
						
						
						
					 
					
						2021-07-08 14:10:14 -05:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						1e19902df1 
					 
					
						
						
							
							fix syntax error and beeteeceepae2 warning formatting  
						
						
						
						
					 
					
						2021-07-07 21:12:31 -05:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						a08edd870f 
					 
					
						
						
							
							add beeteeceepae2 message to btcpay launch page & cleanup  
						
						
						
						
					 
					
						2021-07-07 21:04:23 -05:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						a42d35be51 
					 
					
						
						
							
							more fixing default values for quick start  
						
						
						
						
					 
					
						2021-07-07 15:17:00 -05:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						bdabd61057 
					 
					
						
						
							
							fix defaults for running locally and make email server not required.  
						
						
						
						
					 
					
						2021-07-07 13:47:21 -05:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						3cb6992359 
					 
					
						
						
							
							don't crash if btcpay key is invalid: log warning msg  
						
						
						
						
					 
					
						2021-06-27 10:46:48 -05:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						ebf338eb12 
					 
					
						
						
							
							don't crash if btcpay key is invalid  
						
						
						
						
					 
					
						2021-06-27 10:41:46 -05:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						e6cba96d2d 
					 
					
						
						
							
							Correct default email settings  
						
						
						
						
					 
					
						2021-06-27 10:40:34 -05:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						6f265f5c8a 
					 
					
						
						
							
							Move back to public1 for more availability  
						
						
						
						
					 
					
						2021-06-24 14:18:55 -05:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						e23dd7f776 
					 
					
						
						
							
							Move to public2, more free space  
						
						
						
						
					 
					
						2021-05-15 14:49:36 +00:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						961bb4976b 
					 
					
						
						
							
							remove newlines and strip content first before parsing ssh key name  
						
						
						
						
					 
					
						2021-05-12 12:21:26 -05:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						4590671984 
					 
					
						
						
							
							improve invalid ssh key name error message  
						
						
						
						
					 
					
						2021-05-12 12:18:39 -05:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						e3e1059ba1 
					 
					
						
						
							
							allow colons in ssh key names  
						
						
						
						
					 
					
						2021-05-12 12:14:55 -05:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						9d6fe075b0 
					 
					
						
						
							
							Merge remote-tracking branch 'origin/master'  
						
						
						
						
					 
					
						2021-05-12 11:49:25 -05:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						71db4b3333 
					 
					
						
						
							
							allow colons in ssh key comments and adjust ssh key whitespace handling  
						
						
						
						
					 
					
						2021-05-12 11:48:55 -05:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						525de7450e 
					 
					
						
						
							
							Correct ip detection logic, flip network to public1 (capacity issues)  
						
						
						
						
					 
					
						2021-04-20 22:20:44 +00:00