Naming scheme for compose.*.yml files #34

Open
opened 2022-03-26 20:49:13 +00:00 by 3wordchant · 2 comments
Owner

Currently:

compose.foodsoft.yml
compose.gandi.yml
compose.gitea.yml
compose.headless.yml
compose.host.yml
compose.keycloak.yml
compose.matrix.yml
compose.minio.yml
compose.mssql.yml
compose.mumble.yml
compose.ovh.yml
compose.peertube.yml
compose.smtp.yml
compose.ssb.yml
compose.yml

We'll also shortly have support for DigitalOcean and Google Cloud Platform DNS (in use on $projects, needs polishing and PRing..), and I'm about to add yet another compose file for compy.

Maybe?

compose.dns.gandi.yml
compose.
compose.dns.ovh.yml
compose.entrypoint.foodsoft.yml
compose.entrypoint.gitea.yml
compose.entrypoint.matrix.yml
compose.entrypoint.minio.yml
compose.entrypoint.mssql.yml
compose.entrypoint.mumble.yml
compose.entrypoint.smtp.yml
compose.entrypoint.ssb.yml
compose.entrypoint.rtmp.yml
compose.headless.yml
compose.host.yml
compose.keycloak.yml
compose.yml
Currently: ``` compose.foodsoft.yml compose.gandi.yml compose.gitea.yml compose.headless.yml compose.host.yml compose.keycloak.yml compose.matrix.yml compose.minio.yml compose.mssql.yml compose.mumble.yml compose.ovh.yml compose.peertube.yml compose.smtp.yml compose.ssb.yml compose.yml ``` We'll also shortly have support for DigitalOcean and Google Cloud Platform DNS (in use on `$projects`, needs polishing and PRing..), and I'm about to add yet another compose file for [compy](https://github.com/barnacs/compy/). Maybe? ``` compose.dns.gandi.yml compose. compose.dns.ovh.yml compose.entrypoint.foodsoft.yml compose.entrypoint.gitea.yml compose.entrypoint.matrix.yml compose.entrypoint.minio.yml compose.entrypoint.mssql.yml compose.entrypoint.mumble.yml compose.entrypoint.smtp.yml compose.entrypoint.ssb.yml compose.entrypoint.rtmp.yml compose.headless.yml compose.host.yml compose.keycloak.yml compose.yml ```
Owner

Hmmm I am not sure on the new meaning of your naming scheme since some *.entrypoint.* files do override entrypoints but also expose new environment variables and introduce secrets/configs. Got more context?

Our current scheme is kinda funny because it often doesn't even match the recipe name & some of the configs are even too generic to fit one recipe (e.g compose.gandi.yml)? We could also just document the files as a way of explaining what is going on in them?

This would also break the .env configs on the operator side which would be unfortunate but certainly now would be the time to do it before beta launch. We can publish a new release file to let people know things are changing ofc.

Hmmm I am not sure on the new meaning of your naming scheme since some `*.entrypoint.*` files do override entrypoints but also expose new environment variables and introduce secrets/configs. Got more context? Our current scheme is kinda funny because it often doesn't even match the recipe name & some of the configs are even too generic to fit one recipe (e.g `compose.gandi.yml`)? We could also just document the files as a way of explaining what is going on in them? This would also break the `.env` configs on the operator side which would be unfortunate but certainly now would be the time to do it before beta launch. We can publish a [new release file](https://docs.coopcloud.tech/maintainers/handbook/#how-do-i-write-version-release-notes) to let people know things are changing ofc.
Author
Owner

Hmmm I am not sure on the new meaning of your naming scheme since some .entrypoint. files do override entrypoints but also expose new environment variables and introduce secrets/configs. Got more context?

Traefik's compose.yml files seem to be (fairly neatly?) split into 3 categories:

  • Files which add one or more ports, *.entrypoint.*, optionally + $other_stuff (10 files currently, including compy)
  • Files which add DNS support, *.dns.* (shortly there will be 4 files)
  • Files which do something else (3 files, + the base compose.yml)

Open to a better name than entrypoint, it's confusing to use the same word that we also use to talk about a container entrypoint, but maybe it's even more confusing to try and fix Traefik's terminology.

This change would make it much easier to see "which DNS providers / entrypoints are available in our Traefik recipe" at a glance, and to decode which features are in use on a particular deployment -- which currently involves keeping a mental index of all DNS providers and all entrypoints (and remembering that e.g. where compose.google.yml is to add Google login features in Outline, here it's to add Google DNS).

> Hmmm I am not sure on the new meaning of your naming scheme since some *.entrypoint.* files do override entrypoints but also expose new environment variables and introduce secrets/configs. Got more context? Traefik's `compose.yml` files seem to be (fairly neatly?) split into 3 categories: - Files which add one or more ports, `*.entrypoint.*`, optionally + `$other_stuff` (10 files currently, including compy) - Files which add DNS support, `*.dns.*` (shortly there will be 4 files) - Files which do something else (3 files, + the base `compose.yml`) Open to a better name than `entrypoint`, it's confusing to use the same word that we also use to talk about a container entrypoint, but maybe it's even more confusing to try and fix Traefik's terminology. This change would make it much easier to see "which DNS providers / entrypoints are available in our Traefik recipe" at a glance, and to decode which features are in use on a particular deployment -- which currently involves keeping a mental index of all DNS providers and all entrypoints (and remembering that e.g. where `compose.google.yml` is to add Google login features in Outline, here it's to add Google DNS).
Sign in to join this conversation.
No Label
No Milestone
No Assignees
2 Participants
Notifications
Due Date
The due date is invalid or out of range. Please use the format 'yyyy-mm-dd'.

No due date set.

Dependencies

No dependencies set.

Reference: coop-cloud/traefik#34
No description provided.