Commit Graph

322 Commits

Author SHA1 Message Date
3wc
bcd1190f50 Fix API 🙈 2021-07-29 11:36:58 +02:00
3wc
6963e22933 Merge branch 'publicapi' into yolocolo 2021-07-29 11:16:54 +02:00
3wc
816be36a52 Revert unthemed template changes, tweak theme 2021-07-29 11:11:51 +02:00
3wc
d6f2f6d0bf Merge branch 'master' into yolocolo 2021-07-29 09:47:31 +02:00
3wc
cffa40c0e3 Fix up API 2021-07-23 23:28:06 +02:00
3wc
6dbae94bd6 Fix typo 2021-07-23 18:08:05 +02:00
3wc
42edcd1c33 Updates for upstream IP handling 2021-07-23 18:07:37 +02:00
3wc
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
3wc
cfb323bf60 Merge branch 'yc-templates' into yolocolo 2021-07-22 01:03:02 +02:00
3wc
fb83f52162 Merge branch 'master' into yolocolo 2021-07-22 00:57:01 +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
3wc
487a1ac0a3 Revert accidental change to main images 2021-07-21 23:30:14 +02: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
3wc
71344fbf4d Merge branch 'yc-templates' into yolocolo 2021-07-21 22:49:17 +02:00
3wc
6f3ecf991d Custom theme fixes 2021-07-21 22:48:54 +02:00
3wc
40aa3bccd3 Load YOLOCOLO templates from a "theme" folder..
..configurable using the THEME env var.

Defaults to normal Capsul theme.
2021-07-21 22:24:25 +02:00
3wc
bcc3f20b27 Tweak table style 2021-07-21 22:12:13 +02:00
3wc
8bd3971545 Improve form styling 2021-07-21 22:12:13 +02:00
3wc
c639899cd0 Remove cash payment option 2021-07-21 22:12:13 +02:00
3wc
a47c430855 Further colour tweak 2021-07-21 22:12:13 +02:00
3wc
d5362897df Fix typo, tweak colours 2021-07-21 22:12:13 +02:00
3wc
a52d183f2e More cheeky template changes 2021-07-21 22:12:13 +02:00
3wc
73042d1705 Disco updates for YOLOCOLO site 2021-07-21 22:12:13 +02:00
3wc
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
3wc
8586b85095 Merge branch 'master' into yolocolo 2021-07-21 20:38:36 +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
3wc
7923f3a99f Auto-generate the pricing table from the database 2021-07-21 12:19:28 +02:00
3wc
b2b78e0015 Merge branch 'yc-templates' into yolocolo 2021-07-21 11:43:17 +02:00
3wc
d6f4be8197 Improve form styling 2021-07-21 11:43:04 +02:00
3wc
157e81e6e5 Merge branch 'yc-templates' into yolocolo 2021-07-21 02:02:58 +02:00
3wc
97f9486ea3 Remove cash payment option 2021-07-21 02:02:21 +02:00
3wc
4b90a6c7ae Merge branch 'yc-templates' into yolocolo 2021-07-21 01:56:45 +02:00
3wc
adc3342a8c Further colour tweak 2021-07-21 01:56:36 +02:00
3wc
f8bbdcc3c5 Merge branch 'yc-templates' into yolocolo 2021-07-21 01:54:35 +02:00
3wc
1133caa8a4 Fix typo, tweak colours 2021-07-21 01:54:21 +02:00
3wc
1f384f34b5 Merge branch 'yc-templates' into yolocolo 2021-07-21 01:44:52 +02:00
3wc
c25d85bbdd More cheeky template changes 2021-07-21 01:44:45 +02:00
3wc
0f4ac8e444 Merge branch 'yc-templates' into yolocolo 2021-07-21 01:15:51 +02:00
3wc
3cf501a393 Disco updates for YOLOCOLO site 2021-07-21 01:13:52 +02:00
3wc
180efa01af Merge branch 'optional-btcpay' into yolocolo 2021-07-21 00:30:34 +02:00
3wc
7ed847251f Don't load /btcpay if BTCPAY_PRIVATE_KEY un-set 2021-07-21 00:22:58 +02:00
3wc
e3a4776a5d Hide the BTCPay link if BTCPAY_PRIVATE_KEY un-set 2021-07-21 00:20:38 +02:00
3wc
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
3wc
f5c079ffc2 Un-hard-code SSH key name 2021-07-20 23:55:03 +02:00