Commit Graph

95 Commits

Author SHA1 Message Date
p4u1 0643df6d73 feat: fetch all recipes when no recipe is specified (!401)
continuous-integration/drone/push Build is passing Details
Closes coop-cloud/organising#530

Reviewed-on: #401
Reviewed-by: decentral1se <decentral1se@noreply.git.coopcloud.tech>
Co-authored-by: p4u1 <p4u1_f4u1@riseup.net>
Co-committed-by: p4u1 <p4u1_f4u1@riseup.net>
2024-01-24 15:01:33 +00:00
p4u1 3957b7c965 proper env modifiers support
continuous-integration/drone/push Build is passing Details
This implements proper modifier support in the env file using this new fork of the godotenv library. The modifier implementation is quite basic for but can be improved later if needed. See this commit for the actual implementation.

Because we are now using proper modifer parsing, it does not affect the parsing of value, so this is possible again:
```
MY_VAR="#foo"
```
Closes coop-cloud/organising#535
2023-12-01 11:03:52 +00:00
decentral1se 6a673ef101
refactor: filter by topic when building catalogue
continuous-integration/drone/pr Build is passing Details
continuous-integration/drone/push Build is passing Details
See coop-cloud/organising#377
2023-10-16 18:42:38 +02:00
decentral1se c249c6ae9c
fix: fix: trim comments that are not modifers
continuous-integration/drone/pr Build is passing Details
continuous-integration/drone/push Build is passing Details
See coop-cloud/organising#505
2023-10-09 14:42:05 +02:00
decentral1se e837835e00
test: remove duplicate call to EnsureCatalogue
continuous-integration/drone/push Build is failing Details
continuous-integration/drone/pr Build is failing Details
2023-10-04 14:05:02 +02:00
decentral1se 892f6c0730
test: ensure catalogue is cloned 2023-09-30 08:19:16 +02:00
decentral1se d02f659bf8
fix: secrets from config, --offline/chaos handling, typos
See coop-cloud/organising#464
2023-09-25 10:31:59 +02:00
decentral1se 82631d9ab1
fix: don't output if not tags 2023-09-23 09:15:17 +02:00
decentral1se 3d1158a425
fix: don't read TIMEOUT for version= label
continuous-integration/drone/push Build is failing Details
Closes coop-cloud/organising#451
2023-09-21 11:33:45 +02:00
decentral1se 0be532692d
test: moar integration tests [ci skip]
continuous-integration/drone/pr Build is failing Details
2023-09-20 13:51:06 +02:00
decentral1se 60c0e55e3d fix: don't specify refs when pulling tags
continuous-integration/drone/push Build is failing Details
See coop-cloud/organising#477
2023-08-13 12:07:37 +00:00
decentral1se 5ae73f700e
Merge branch 'fix-deploy-no-catalogue'
continuous-integration/drone/push Build was killed Details
2023-08-02 10:48:54 +02:00
decentral1se ebf5d82c56
fix: failover if no recipe meta available
continuous-integration/drone/push Build is passing Details
continuous-integration/drone/pr Build is passing Details
2023-08-02 00:48:27 +02:00
decentral1se 23f5745cb8
fix: skip recipe clone / up to date sync for some commands
continuous-integration/drone/push Build is passing Details
continuous-integration/drone/pr Build is passing Details
Continues work of 3dc5662821.
2023-08-01 21:19:20 +02:00
decentral1se 3dc5662821
fix: improved offline support
continuous-integration/drone/push Build is passing Details
Closes coop-cloud/organising#471.
2023-07-26 08:16:07 +02:00
decentral1se ab64eb2e8d
fix: only use git to update local catalogue
See coop-cloud/organising#321.
2023-07-25 21:13:04 +02:00
decentral1se 0582147874
fix: better error message for missing local tag
Aiming to help the following scenario better:

coop-cloud/organising#444 (comment)
2023-07-25 15:07:29 +02:00
moritz 049da94629 fix(version): semver version ordering (!293)
continuous-integration/drone/push Build is passing Details
Solves coop-cloud/organising#427

This fix sorts the recipe versions at the catalogue generation and the versions that are received from the catalogue.

Co-authored-by: Moritz <moritz.m@local-it.org>
Reviewed-on: #293
2023-04-26 06:38:15 +00:00
decentral1se 312b93e794
fix: no gitops on recipe for "app new"
continuous-integration/drone/push Build is passing Details
Closes coop-cloud/organising#408
2023-02-15 00:49:22 +01:00
decentral1se 992e675921
refactor: use passed down conf to decide 2023-02-15 00:35:33 +01:00
decentral1se e4b4084dfd
fix: stream logs without hitting git.coopcloud.tech
continuous-integration/drone/pr Build is passing Details
continuous-integration/drone/push Build is passing Details
Medium-sized options refactor in here too!

See coop-cloud/organising#292.
2023-02-13 16:46:43 +01:00
moritz e76ed771df feat: kadabra, the app auto-updater (!268)
continuous-integration/drone/push Build is passing Details
coop-cloud/organising#236

Autoupdater `kadabra` is ready for testing.
It should run on the server, check for available minor/patch updates and automatically upgrade the apps.

Co-authored-by: Moritz <moritz.m@local-it.org>
Reviewed-on: #268
2023-02-08 18:53:04 +00:00
decentral1se 29fa607190
fix: restrict pulling to specific branch
continuous-integration/drone/push Build is failing Details
2023-02-02 21:12:50 +01:00
decentral1se 7c541ffdfa
fix: better error handling in EnsureUpToDate 2023-02-02 21:12:24 +01:00
decentral1se 7ccc4b4c08
fix: woops, remove that print statement
continuous-integration/drone/push Build is failing Details
2023-02-02 21:00:31 +01:00
decentral1se ef4df35995
fix: don't check twice (called in EnsureUpToDate)
continuous-integration/drone/push Build is failing Details
2023-02-02 20:59:04 +01:00
decentral1se 71a9155042
fix: specify refs when fetching tags
See coop-cloud/organising#397
2023-02-02 20:58:38 +01:00
decentral1se 2a88491d7c
fix: catch errors here too
continuous-integration/drone/push Build is failing Details
See #266
2023-02-02 20:26:19 +01:00
Moritz 32851d4d99 fix: always fetch all repository tags
continuous-integration/drone/pr Build is failing Details
continuous-integration/drone/push Build is failing Details
2023-01-31 11:52:15 +01:00
decentral1se 903aac9d7a
feat: recipe fetch command
continuous-integration/drone/pr Build was killed Details
continuous-integration/drone/push Build was killed Details
Also may have rooted out another go-git cloning bug 🙄

Closes coop-cloud/organising#365
2023-01-23 09:26:53 +01:00
decentral1se 32de2ee5de
fix: ensure catalogue is clean/up-to-date
continuous-integration/drone/pr Build is failing Details
continuous-integration/drone/push Build is failing Details
Closes coop-cloud/organising#367
2023-01-22 17:52:36 +01:00
decentral1se 6fe5aed408
fix!: remove digest handling
continuous-integration/drone/pr Build is failing Details
continuous-integration/drone/push Build is failing Details
Closes coop-cloud/organising#379
2023-01-22 08:54:13 +01:00
3wc 4f055096e9 chore: fix Drone build, ignore auto-recipes-catalogue-json
continuous-integration/drone/push Build is failing Details
2023-01-15 18:16:53 -08:00
3wc 1403eac72c fix: parse "Status" field during `catalogue generate` 2023-01-15 17:10:45 -08:00
moritz e788ac21f6 fix: keep abra working if recipe catalogue is offline (!235)
continuous-integration/drone/push Build is passing Details
Co-authored-by: Moritz <moritz.m@local-it.org>
Reviewed-on: #235
2022-12-13 14:42:45 +00:00
Franz Heinzmann (Frando) 8458e61d17
fix: branch checking logic
See https://github.com/go-git/go-git/issues/518 for why this is needed.
2022-08-11 17:49:22 +02:00
decentral1se 49f79dbd45
fix!: new catalogue URL
continuous-integration/drone/pr Build is passing Details
continuous-integration/drone/push Build is passing Details
2022-05-03 17:08:52 +02:00
decentral1se cbd924060f
fix: better local changes message
continuous-integration/drone/push Build is passing Details
2022-04-19 10:29:05 +02:00
decentral1se b295958c17 fix: handle all container registries
See coop-cloud/organising#258

This fixes also how we read the digest of the image. I think it was
wrong before. Some registries restrict reading this info and we now just
default to "unknown" for that case.

This also appears to bring a wave of new dependencies due to the generic
handling logic of containers/... package. The abra binary is now 1mb
larger.

The catalogue generation is now slower unfortunately. But it is more
robust.

The generic logic looks in ~/.docker/config.json for log in details, so
you don't have to pass those in manually on the CLI anymore. We just
read those defaults. You can "docker login" to get credentials setup in
that file. Since most folks won't generate the catalogue, this seems
fine for now.
2022-02-21 08:46:30 +00:00
decentral1se 2fbdcfb958
refactor: try the meta for default branch too
continuous-integration/drone/pr Build is passing Details
continuous-integration/drone/push Build is passing Details
Sometimes the Branch(...) call gets confused with state in the
repository. Its more robust to use the default value we get from gitea.

See coop-cloud/organising#299.
2022-02-20 18:07:49 +01:00
decentral1se 09ac74d205
fix: check out default branch from tags
continuous-integration/drone/push Build is passing Details
Also fix error handling to match function signatures.
2022-02-18 11:17:43 +01:00
decentral1se 6b2a0011af
fix: remove dupe logging on catalogue reading [ci skip] 2022-02-14 17:37:25 +01:00
decentral1se 46fca7cfa7
docs: less ambig wording [ci skip] 2022-02-14 17:35:42 +01:00
decentral1se 0557284461 fix: use new repo name
continuous-integration/drone/push Build is passing Details
2022-02-09 08:58:51 +00:00
decentral1se 58e98f490d
refactor!: type -> recipes
continuous-integration/drone/pr Build is failing Details
continuous-integration/drone/push Build is passing Details
2022-01-27 12:06:32 +01:00
decentral1se f9a2c1d58f
refactor: put StripTagMeta into formatter package
Avoid circular import.
2022-01-19 10:40:14 +01:00
decentral1se 7733637767
fix: ensure catalogue cloned for catalogue reliant commands
continuous-integration/drone/push Build is passing Details
2022-01-18 11:19:33 +01:00
decentral1se d7cf11b876
fix: further fixes for gracefully handling missing tag
continuous-integration/drone/push Build is passing Details
Follows 1b37d2d5f5.
2022-01-05 17:58:15 +01:00
decentral1se 74dfb12fd6
refactor: centralise tag meta stripping 2022-01-05 17:32:33 +01:00
decentral1se 8992050409
docs: dont metion git explicitly in user messages 2022-01-01 17:23:04 +01:00