283 Commits

Author SHA1 Message Date
claude ec51d2f8d8 Switch ManyDecks deploy to ManyCoqDecks custom images
Build and push CoqDecks / build (push) Failing after 10m31s
Update server and client to use images from the local registry
built by the ManyCoqDecks CI pipeline (adds local username/password auth).
Update secrets.example.yaml with local auth config instructions.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-30 09:05:59 +00:00
claude be2d157b2f Fix manydecks guest auth key: guests -> guest (singular)
Build and push CoqDecks / build (push) Failing after 10m53s
Server reads config.auth.guest, not config.auth.guests.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-30 08:11:00 +00:00
claude e4b170d875 Enable guest auth in manydecks example config
Build and push CoqDecks / build (push) Successful in 58s
ManyDecks client only supports guest/google/twitch in UI;
local auth is server-side only. Enable guests: {} so users
can sign in without an account.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-30 07:51:10 +00:00
claude b864cacbef Fix manydecks auth config: duration -> expiresIn
Build and push CoqDecks / build (push) Failing after 11m44s
The Auth.Config interface expects expiresIn, not duration.
Wrong key caused /api/auth to return {} silently.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-30 07:45:09 +00:00
claude 373070bde7 Add createDb: true to CNPG Role for manydecks user
Build and push CoqDecks / build (push) Failing after 13m27s
ManyDecks tries to CREATE DATABASE on startup; CNPG must grant
this privilege persistently so reconciliation doesn't revoke it.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-30 07:23:25 +00:00
claude 93863b7eb1 Add self-hosted ManyDecks instance to sources config
Build and push CoqDecks / build (push) Failing after 11m12s
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-29 23:45:41 +00:00
claude f5a1a0fea3 Fix manydecks config: port key is listenOn not port
Build and push CoqDecks / build (push) Successful in 32s
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-29 23:38:27 +00:00
claude 2a60b2dba6 Fix manydecks-server readiness probe: use TCP instead of HTTP
Build and push CoqDecks / build (push) Successful in 28s
The server doesn't expose a known health endpoint, so use a TCP
socket check on port 8083 instead — this unblocks Service routing.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-29 23:33:42 +00:00
claude 9114ba5272 Fix ManyDecks config: db → connection (matches server's config.connection)
Build and push CoqDecks / build (push) Successful in 26s
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-29 23:04:00 +00:00
claude d3a23b5542 Fix namespace: games → jeux in ManyDecks manifests
Build and push CoqDecks / build (push) Failing after 13m27s
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-29 22:58:26 +00:00
claude 2213168074 Add ManyDecks Kubernetes deployment manifests
Build and push CoqDecks / build (push) Failing after 14m43s
Deploys ManyDecks (deck creation UI) at decks.jeux.alocoq.fr:
- postgres.yaml: CNPG Role + Database on postgres-main (sql namespace)
- server.yaml: ManyDecks API server, config mounted from Secret
- client.yaml: nginx client with custom config pointing to manydecks-server
- ingress.yaml: TLS ingress for decks.jeux.alocoq.fr
- secrets.example.yaml: template to copy → secrets.yaml (gitignored)

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-29 22:22:09 +00:00
claude 6af03923af Accept both array and single-object for manyDecks in client decoder
Build and push CoqDecks / build (push) Successful in 1m43s
Old server sends manyDecks as a single object; new server sends an array.
Accept both so the client works during a rolling upgrade or if the server
is older than the client.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-29 22:08:22 +00:00
claude 81b22a8554 Handle legacy single-object manyDecks config
Build and push CoqDecks / build (push) Successful in 1m6s
Old configs have manyDecks as a plain object; new format is an array.
Wrap the old format in an array so existing deployments keep working
without a config migration.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-29 22:00:20 +00:00
claude fc89da4f2f Fix initial sources.manyDecks value to match List type
Build and push CoqDecks / build (push) Successful in 2m51s
Changed from Nothing (Maybe) to [] (List) to match the updated
Source.Info type that stores manyDecks as a list of instances.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-29 21:50:43 +00:00
claude b6fca769a3 Fix invalid Elm record pattern in ManyDecks instance picker
Build and push CoqDecks / build (push) Has been cancelled
Elm 0.19 does not support field aliasing in record destructuring patterns
({ field = alias } is not valid syntax). Use a plain argument and access
fields with dot notation instead.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-29 21:46:45 +00:00
claude 4954471aac Fix submodule SSH URL by rewriting .gitmodules before sync
Build and push CoqDecks / build (push) Has been cancelled
git config insteadOf is not picked up by submodule update in this
environment; rewrite .gitmodules directly and run submodule sync to
propagate the HTTPS URL before fetching.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-29 21:40:13 +00:00
claude 3cd0c91f91 Fetch elm-material submodule during clone
Build and push CoqDecks / build (push) Has been cancelled
elm-material is a git submodule with an SSH URL; rewrite it to HTTPS
before calling submodule update so the init container can fetch it
without needing SSH keys.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-29 21:38:58 +00:00
claude 755a966541 Fix cache import failure on first build run
Build and push CoqDecks / build (push) Has been cancelled
Skip --import-cache when the cache tag doesn't yet exist in the
registry. Some registries time out on missing tags rather than
returning 404, causing buildctl to exit non-zero even after a
successful build and push, which aborted the client build.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-29 21:37:52 +00:00
claude d202d7017c Add Gitea Actions workflow to build and push images
Build and push CoqDecks / build (push) Has been cancelled
Builds coqdecks-server and coqdecks-client Docker images via a
BuildKit Kubernetes job and pushes them to the in-cluster registry.
Uses per-image registry layer caches to speed up incremental builds.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-29 21:32:44 +00:00
claude 2c0a43d321 Support multiple ManyDecks instances
Build / Build docker images. (push) Has been cancelled
The ManyDecks source type now carries a baseUrl identifying which
instance a deck belongs to, allowing multiple self-hosted ManyDecks
servers to be configured alongside each other.

Config changes: `sources.manyDecks` is now an array of instances,
each with optional `name`, `baseUrl`, `timeout`, and
`simultaneousConnections`. Existing single-instance configs need to
be wrapped in an array.

When only one instance is configured the deck editor behaves as
before. When multiple instances are configured an instance picker
dropdown appears above the deck code field.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-29 21:10:33 +00:00
Gareth Latty d3e816eddb Move to using shared material library.
Build / Build docker images. (push) Has been cancelled
2022-06-02 23:07:50 +01:00
Gareth Latty a6035da2e6 Update to new FontAwesome version, add semantic Icon layer for consistency. 2022-05-30 16:16:03 +01:00
Rafa M 08a61e6d6c Proofread entire Spanish language & correct wrong phrases
Completely revamped the Spanish localization. List of major changes:

- The plural function was incorrectly programmed, so many words were displayed grammatically incorrect in the game.
- Many misspelled words (typos) have been corrected.
- The words used have been refined to ensure that they are as understandable as possible.
- A list of Spanish language contributors has been added.
2022-05-30 03:20:09 +01:00
sjk 2a1ad5782d Full Korean translation 2022-05-30 03:20:08 +01:00
Gareth Latty 0af429e55b Move to more modern docker compose setup, fix small bug with ad, update dependencies. 2022-05-30 03:20:01 +01:00
Gareth Latty 9556eec4b6 Bunch of clean-up for more modern standards. 2022-05-20 23:58:40 +01:00
Gareth Latty c5078ad341 Add AtP ad, ad configuration. 2022-05-20 21:11:44 +01:00
Gareth Latty d0c0225cc1 Update dependencies. 2022-05-20 16:56:56 +01:00
Gareth Latty 7c6645d528 Fix #201: Invalidate rounds with no plays. 2021-11-28 20:32:00 +00:00
Gareth Latty c5f1204dca Update elm dependencies. 2021-11-28 19:14:35 +00:00
Gareth Latty d60fb165ad Update build and add dependabot config. 2021-11-28 18:58:05 +00:00
Gareth Latty d567c384c1 Minor refactor to simplify logic slightly. 2021-11-28 17:36:41 +00:00
lhvy 008a450711 Resolve #222: Add Winner's Pick House Rule 2021-11-28 17:07:05 +00:00
Gareth Latty 56047183da Refactor, some minor code cleanup and fixes. 2021-11-28 17:03:11 +00:00
Gareth Latty fe666999f2 Node 17, dockerized development, updated packages. 2021-11-28 16:21:58 +00:00
Gareth Latty ebd6f1aaaf Move from deprecated image labels to modern standard. 2021-11-28 15:36:22 +00:00
Gareth Latty 6d9e185a7e Fix bug with switches not correctly handling input. 2021-10-04 16:27:50 +01:00
Gareth Latty d7aec8bcad Allow for v prefix in version tag. 2021-09-19 14:32:02 +01:00
Gareth Latty 21fb6aad6b Update dependencies. 2021-09-19 14:11:12 +01:00
Gareth Latty 0277d103da Tiny refactor of game flow. 2021-09-19 13:10:44 +01:00
Gareth Latty 637cebb043 Move to docker buildx bake for builds, build for arm64. 2021-09-19 13:10:43 +01:00
Gareth Latty 34702e3194 Update config to fix trailing slash, update deployment example config to match. 2021-09-19 13:10:42 +01:00
Gareth Latty 82b9513226 Update dependencies and fix Heroku build. 2021-09-19 13:10:41 +01:00
TheChilliPL de7a09ce5b Translate missing Polish strings
Fix minor mistakes in Polish translation
2021-09-19 13:10:40 +01:00
carlesvimas 651f3d1d91 New language (spanish) 2021-09-19 13:10:25 +01:00
Gareth Latty 6b18d67459 Resolve #213: Fix bug where call isn't sent to clients correctly when not playing with card choices. 2021-01-02 12:44:19 +00:00
Gareth Latty 933d0760fb Update build process a little. 2020-12-31 01:25:27 +00:00
Gareth Latty d3bf724180 Progress on #154: Add custom call support for Czar Choices house rule. 2020-12-31 01:25:27 +00:00
Gareth Latty e7cda7b648 Add quick tab switching for see-also messages in rules. 2020-12-31 01:25:27 +00:00
Gareth Latty 0ceeb1b49e Resolve #205: Bug where liking could result in an error if performed too late. 2020-12-31 01:25:27 +00:00