Linus Gasser
f230f89dcb
feat(app): support git-URL recipes in 'abra app new'
...
Allow `abra app new <git-url>` to use a recipe from outside the
catalogue. On clone, a `.abra-source` sidecar records the canonical
host/path name (the on-disk directory escapes "/" and "." lossily), and
IsClean ignores it. When templating the app's .env, a `RECIPE=<canonical
name>` line is injected so a later `abra app deploy`, possibly on another
machine, re-fetches the recipe from the same git source. `recipe ls` now
shows a source column listing these external recipes alongside catalogue
ones.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com >
2026-06-13 22:40:10 +02:00
Linus Gasser
95220049e8
feat(recipe): normalize git URLs to canonical host/path names
...
Add NormalizeRecipeName to canonicalize the various ways a recipe can be
referenced - https/http/ssh URLs, SCP-style git@host:path, already-
canonical host/path, and short catalogue names - to a single stable
"host/path" form, preserving any ":version" suffix. Wire it into
recipe.Get and ValidateRecipe so every entry point accepts git URLs, and
add Recipe.ShortName to recover the bare recipe name from a prefixed one.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com >
2026-06-13 22:39:53 +02:00
Linus Gasser
056a6be38d
fix(recipe): reject branch names as :version with a clear error
...
Passing a branch as the ":version" suffix previously failed with an
opaque "unable to resolve" error from go-git. Detect when the requested
revision matches a branch on a configured remote and fail with a message
explaining that ":<version>" only supports tags or commit hashes.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com >
2026-06-13 22:39:36 +02:00
Linus Gasser
3c24ae8111
fix(formatter): guard ShortenID/SmallSHA against short input
...
ShortenID and SmallSHA sliced their input to a fixed length without
checking it was long enough, panicking on shorter strings. Return the
input unchanged when it is already shorter than the cut. Also replace the
blank Commit placeholder with an explicit "unknown-commit" sentinel.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com >
2026-06-13 22:39:16 +02:00
Weblate
e1b10f6020
chore: update translation files
...
Updated by "Update PO files to match POT (msgmerge)" add-on in Weblate.
Translation: Co-op Cloud/abra
Translate-URL: https://translate.coopcloud.tech/projects/co-op-cloud/abra/
2026-06-09 14:36:32 +00:00
moritz
8e4ed7b689
chore: make i18n
2026-06-09 16:30:08 +02:00
renovate-bot
1d9a289888
chore(deps): update nginx docker tag to v1.31.1
2026-05-22 21:00:50 +00:00
renovate-bot
e4215c09aa
chore(deps): update nginx docker tag to v1.31.0
2026-05-14 23:04:17 +00:00
Weblate
7a079b78de
chore: update translation files
...
Updated by "Update PO files to match POT (msgmerge)" add-on in Weblate.
Translation: Co-op Cloud/abra
Translate-URL: https://translate.coopcloud.tech/projects/co-op-cloud/abra/
2026-04-11 13:54:52 +00:00
iexos
7524a785ce
chore: make i18n
2026-04-11 11:36:14 +02:00
decentral1se
6ef8e1ff52
test: temporarily skip flaky test
...
See toolshed/abra#814
2026-04-01 11:37:07 +02:00
decentral1se
d88b478503
test: unit tests clean up themselves
...
See toolshed/abra#792
2026-04-01 10:47:32 +02:00
p4u1
e04a1e15c4
feat: add filename to error message when yaml file is invalid
...
Before:
FATA <internal/validate.go:84> unable to validate recipe: yaml: line 3: did not find expected key
After:
FATA <internal/validate.go:84> unable to validate recipe: <redacted>/recipes/monitoring-ng/compose.grafana-oidc.yml: yaml: line 3: did not find expected key
2026-03-20 14:42:14 +01:00
Weblate
d4944dbf35
chore: update translation files
...
Updated by "Update PO files to match POT (msgmerge)" add-on in Weblate.
Translation: Co-op Cloud/abra
Translate-URL: https://translate.coopcloud.tech/projects/co-op-cloud/abra/
2026-03-03 00:03:00 +00:00
decentral1se
8d8d4f799d
chore: i18n
2026-03-03 01:02:49 +01:00
ChasquiLabo
cedf185e97
chore: translation using Weblate (Spanish)
...
Currently translated at 91.1% (1048 of 1150 strings)
Translation: Co-op Cloud/abra
Translate-URL: https://translate.coopcloud.tech/projects/co-op-cloud/abra/es/
2026-02-28 13:52:56 +00:00
ChasquiLabo
6f92ba0deb
chore: translation using Weblate (Spanish)
...
Currently translated at 91.1% (1048 of 1150 strings)
Translation: Co-op Cloud/abra
Translate-URL: https://translate.coopcloud.tech/projects/co-op-cloud/abra/es/
2026-02-21 20:37:47 +00:00
ChasquiLabo
dcd830e3f8
chore: translation using Weblate (Spanish)
...
Currently translated at 91.1% (1048 of 1150 strings)
Translation: Co-op Cloud/abra
Translate-URL: https://translate.coopcloud.tech/projects/co-op-cloud/abra/es/
2026-02-21 01:44:54 +00:00
Weblate
8056703d59
chore: update translation files
...
Updated by "Update PO files to match POT (msgmerge)" add-on in Weblate.
Translation: Co-op Cloud/abra
Translate-URL: https://translate.coopcloud.tech/projects/co-op-cloud/abra/
2026-02-20 16:25:39 +00:00
decentral1se
566bdf2bd8
Merge remote-tracking branch 'weblate/main'
2026-02-20 17:25:15 +01:00
decentral1se
24288c81d3
fix: missing i18n
2026-02-20 14:49:02 +01:00
ChasquiLabo
a18f57488f
chore: translation using Weblate (Spanish)
...
Currently translated at 91.2% (1043 of 1143 strings)
Translation: Co-op Cloud/abra
Translate-URL: https://translate.coopcloud.tech/projects/co-op-cloud/abra/es/
2026-02-20 09:50:31 +00:00
decentral1se
b2e691265a
fix: consistent i18n usage on rootCmd
2026-02-20 10:49:04 +01:00
decentral1se
bff23f0ae6
fix: translated help
...
Follows toolshed/abra#785
2026-02-20 10:46:52 +01:00
Weblate
403c7a3e5b
chore: update translation files
...
Updated by "Update PO files to match POT (msgmerge)" add-on in Weblate.
Translation: Co-op Cloud/abra
Translate-URL: https://translate.coopcloud.tech/projects/co-op-cloud/abra/
2026-02-19 13:36:14 +00:00
3wordchant
66b932a553
Merge remote-tracking branch 'weblate/main'
2026-02-19 08:35:59 -05:00
3wordchant
f64e4b62cf
chore: Re-run make i18n
2026-02-19 08:28:14 -05:00
ChasquiLabo
e80ecbc332
chore: translation using Weblate (Spanish)
...
Currently translated at 90.9% (1041 of 1144 strings)
Translation: Co-op Cloud/abra
Translate-URL: https://translate.coopcloud.tech/projects/co-op-cloud/abra/es/
2026-02-19 08:27:33 -05:00
decentral1se
78899f173c
fix: remove double help flag
2026-02-19 00:42:56 +01:00
ChasquiLabo
90142cb783
chore: translation using Weblate (Spanish)
...
Currently translated at 90.9% (1041 of 1144 strings)
Translation: Co-op Cloud/abra
Translate-URL: https://translate.coopcloud.tech/projects/co-op-cloud/abra/es/
2026-02-18 23:08:37 +00:00
decentral1se
8dbde3d158
fix: wrap string (i18n)
2026-02-19 00:07:18 +01:00
Apfelwurm
8f42e36302
feat: bytes/base64 secret generation
2026-02-18 20:41:45 +01:00
ChasquiLabo
c2552ec2f6
chore: translation using Weblate (Spanish)
...
Currently translated at 90.9% (1041 of 1144 strings)
Translation: Co-op Cloud/abra
Translate-URL: https://translate.coopcloud.tech/projects/co-op-cloud/abra/es/
2026-02-18 13:52:56 +00:00
ChasquiLabo
728f873a3e
chore: translation using Weblate (Spanish)
...
Currently translated at 90.0% (1030 of 1144 strings)
Translation: Co-op Cloud/abra
Translate-URL: https://translate.coopcloud.tech/projects/co-op-cloud/abra/es/
2026-02-17 10:40:21 +00:00
Weblate
32bb05abba
chore: update translation files
...
Updated by "Update PO files to match POT (msgmerge)" add-on in Weblate.
Translation: Co-op Cloud/abra
Translate-URL: https://translate.coopcloud.tech/projects/co-op-cloud/abra/
2026-02-16 11:06:33 +00:00
decentral1se
3d2006a696
chore: i18n
2026-02-16 12:06:24 +01:00
decentral1se
4e0eb739b4
feat: ls requires --chaos due to Ensure logic
...
Follows toolshed/abra#771
2026-02-15 17:57:31 +00:00
Weblate
6b661dd7a7
chore: update translation files
...
Updated by "Update PO files to match POT (msgmerge)" add-on in Weblate.
Translation: Co-op Cloud/abra
Translate-URL: https://translate.coopcloud.tech/projects/co-op-cloud/abra/
2026-02-15 17:57:28 +00:00
decentral1se
39102752c0
fix: more graceful bailing if borked .env.sample
2026-02-15 18:26:05 +01:00
decentral1se
5cfc1c076c
fix: remove timeout
2026-02-15 16:34:18 +00:00
Weblate
10f7ed74b0
chore: update translation files
...
Updated by "Update PO files to match POT (msgmerge)" add-on in Weblate.
Translation: Co-op Cloud/abra
Translate-URL: https://translate.coopcloud.tech/projects/co-op-cloud/abra/
2026-02-15 16:34:05 +00:00
decentral1se
227d37dc26
chore: i18n
2026-02-15 17:08:14 +01:00
Weblate
4349ee82bc
chore: update translation files
...
Updated by "Update PO files to match POT (msgmerge)" add-on in Weblate.
Translation: Co-op Cloud/abra
Translate-URL: https://translate.coopcloud.tech/projects/co-op-cloud/abra/
2026-02-15 13:47:09 +00:00
decentral1se
1fe2d0421b
chore: i18n
2026-02-15 14:41:03 +01:00
Weblate
2c5a273fa7
chore: update translation files
...
Updated by "Update PO files to match POT (msgmerge)" add-on in Weblate.
Translation: Co-op Cloud/abra
Translate-URL: https://translate.coopcloud.tech/projects/co-op-cloud/abra/
2026-02-15 13:08:19 +00:00
decentral1se
c54fe3ef85
chore: i18n
2026-02-15 14:08:08 +01:00
ChasquiLabo
bda0d23d39
chore: translation using Weblate (Spanish)
...
Currently translated at 87.8% (1002 of 1141 strings)
Translation: Co-op Cloud/abra
Translate-URL: https://translate.coopcloud.tech/projects/co-op-cloud/abra/es/
2026-02-15 09:40:56 +00:00
ChasquiLabo
b9dc7b8437
chore: translation using Weblate (Spanish)
...
Currently translated at 87.7% (1001 of 1141 strings)
Translation: Co-op Cloud/abra
Translate-URL: https://translate.coopcloud.tech/projects/co-op-cloud/abra/es/
2026-02-14 13:52:56 +00:00
Apfelwurm
064c9f5d65
fix: breaking GetRecipeVersions when an invalid recipe version exists
2026-02-13 21:51:46 +00:00
iexos
98e48c95c7
fix: duplicate R015 rule number
2026-02-13 15:57:21 +01:00