name: "๐Ÿฐ Request a new recipe!" description: I have a request for a fresh, tasty recipe ๐Ÿ˜‹ title: "[recipe] " labels: ["recipe/request", "status/backlog", "good first issue"] body: - type: markdown attributes: value: | ## :wave: Greetings Greetings, fellow geek! Thanks for taking the time to request this recipe! This issue form helps to capture the request in a standardized way, and to pre-gather as much information as possible, to expidite the cooking process! - type: checkboxes id: sanity_check attributes: label: ๐Ÿคช Sanity check description: Let's confirm that this is not a recipe which has previously been discussed / proposed options: - label: I have searched and confirmed no existing [open](https://github.com/funkypenguin/geek-cookbook/issues?q=is%3Aissue) / [closed](https://github.com/funkypenguin/geek-cookbook/issues?q=is%3Aissue+is%3Aclosed) issues, or [open](https://github.com/funkypenguin/geek-cookbook/pulls?q=is%3Apr) / [closed](https://github.com/funkypenguin/geek-cookbook/pulls?q=is%3Apr+is%3Aclosed) PRs exist for this recipe required: true - label: I have confirmed that the app is actively supported by its developers (_i.e., not deprecated or abandoned_) required: true - type: textarea attributes: label: ๐Ÿ“œ Description description: Please provide a brief description of the proposed recipe validations: required: true - type: input id: project_homepage attributes: label: ๐Ÿ  Project Homepage description: Provide a link to the project's homepage placeholder: e.g. https://radarr.video/ validations: required: true - type: input id: discord_id attributes: label: ๐Ÿ’ฌ Your Discord username description: If you've joined our [Discord server](http://chat.funkypenguin.co.nz), enter your username here so that we can collaborate effectively placeholder: BobTheBuilder#4567 - type: checkboxes id: orchestration attributes: label: ๐Ÿคนโ€โ™€๏ธ Orchestration Platform description: Which platform(s) are you interested in a recipe supporting? options: - label: I'm interested deploying the app into Docker Swarm using manual editing and classic `docker stack deploy` - label: I'm interested deploying the app into Docker Swarm using [premix](https://geek-cookbook.funkypenguin.co.nz/premix/)'s automated ansible playbooks - label: I'm interested deploying the app into Kubernetes using [premix](https://geek-cookbook.funkypenguin.co.nz/premix/)'s helm charts - type: checkboxes id: engagement attributes: label: ๐Ÿ’ Engagement description: To get this recipe cooked, I'm willing to... options: - label: I plan to test the recipe after publication and provide feedback - label: I'm happy to provide community support in Discord re the recipe - label: I plan to submit a PR for this recipe myself ๐Ÿ† - type: checkboxes id: terms attributes: label: Code of Conduct description: By submitting this issue, you agree to follow our community's [Code of Conduct](https://geek-cookbook.funkypenguin.co.nz/community/code-of-conduct/) options: - label: I agree to follow this Geek Cookbook's Code of Conduct required: true - type: markdown attributes: value: | That's it for the obligatory checkboxes ๐Ÿ‘Œ --- The questions which follow are intended to help to frame the recipe correctly. If your're not sure, that's ok, just choose `ยฏ\_(ใƒ„)_/ยฏ` from the dropdown selection. - type: dropdown id: authentication validations: required: true attributes: label: ๐Ÿ” Authentication description: | Does the app provide its own authentication (_i.e. NextCloud_), or does it require an authentication frontend (_i.e., Radarr_)? How should access to the app be managed? options: - The app provides its own, trustworthy authentication, or access control is unnecessary. I'd be happy exposing it to the internet - The app needs something in front of it to secure access (traefik-forward-auth, authelia, etc) - ยฏ\_(ใƒ„)_/ยฏ - type: dropdown validations: required: true id: config attributes: label: ๐Ÿ’ผ Config Management description: How is the app configured? Some applications are configured [entirely using environment variables](https://12factor.net), some need static config files mounted into their container, and some are configured using an interactive setup process (_i.e. NextCloud_). multiple: true options: - The app is configured with environment variables - The app is configured with command-line arguments - The app is configured with a static config file on the filesystem - The app is configured interactively which then persists the config to the filesystem - ยฏ\_(ใƒ„)_/ยฏ - type: dropdown id: connectivity validations: required: true attributes: label: ๐Ÿ’ผ Connnectivity description: What sort of network connectivity does the app need? multiple: true options: - The app requires no network connectivity - The app requires inbound web access HTTP/S access - The app requires inbound arbitrary TCP/UDP access - The app requires connectivity to other apps in its own stack (i.e., a database) - ยฏ\_(ใƒ„)_/ยฏ - type: dropdown id: persistence validations: required: true attributes: label: ๐Ÿ’พ Data persistence description: What sort of persisted data does the app need? multiple: true options: - The app needs no persisted data - The app needs access to its own persistent data (i.e. logs, database directory, etc) - The app needs access to outside data (i.e. a media player) - ยฏ\_(ใƒ„)_/ยฏ - type: dropdown id: backup validations: required: true attributes: label: ๐Ÿช‚ Backup description: How is backup of the app's data to be handled? options: - The app does not require backup - The app can be backed up with a simple filesystem data copy - The app requires an extra process to create backups for a file-based copy (i.e., a mysql database dump) - ยฏ\_(ใƒ„)_/ยฏ