Commit Graph

181 Commits

Author SHA1 Message Date
decentral1se 575f9905f1 Revert "Revert "feat: backup revolution""
continuous-integration/drone/push Build is passing
This reverts commit 2c515ce70a.
2024-03-12 10:34:40 +01:00
decentral1se 2c515ce70a Revert "feat: backup revolution"
This reverts commit c5687dfbd7.

This is a temporary measure to facilitate a release which won't
completely explode peoples workflows (missing command logic). We
re-instate this commit after the first 0.9.x release.
2024-03-12 10:03:42 +01:00
decentral1se c5687dfbd7 feat: backup revolution
continuous-integration/drone/push Build is passing
See coop-cloud/organising#485
2024-01-12 22:01:08 +01:00
decentral1se d11ad61efb docs: make chaos flag description more generic [ci skip] 2023-10-04 01:34:53 +02:00
decentral1se 510ce66570 feat: version arguments, local tag lookups & release notes
See:
* coop-cloud/organising#441
* coop-cloud/organising#204
* coop-cloud/organising#493
2023-09-23 09:15:27 +02:00
decentral1se 0be532692d test: moar integration tests [ci skip]
continuous-integration/drone/pr Build is failing
2023-09-20 13:51:06 +02:00
decentral1se ab7edd2a62 refactor!: drop "record" & "server new" command
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is passing
These were alpha prototypes and we'll reconsider once other layers of
Abra are more stable.
2023-09-14 16:45:01 +02:00
decentral1se 3dc5662821 fix: improved offline support
continuous-integration/drone/push Build is passing
Closes coop-cloud/organising#471.
2023-07-26 08:16:07 +02:00
decentral1se a7f1af7476 refactor: drop internal deploy package 2023-07-25 18:03:37 +02:00
decentral1se 949510d4c3 revert: always clone latest recipe changes
continuous-integration/drone/push Build is failing
This change was about trying to optimise for offline scenarios but
caused a lot of issues for the online case. It needs to be thought
through again.

See coop-cloud/organising#471.

Closes coop-cloud/organising#432.
2023-07-25 15:05:01 +00:00
moritz b2739dcdf2 fix(deploy) post deploy cmds
continuous-integration/drone/push Build is passing
2023-04-18 19:05:46 +02:00
moritz 31ec322c55 feat(deploy): set timeout via label (!290)
continuous-integration/drone/push Build is passing
Solves coop-cloud/organising#437

A timeout can be specified globally for a recipe using this label:
`coop-cloud.${STACK_NAME}.timeout=${TIMEOUT:-120}`. This sets the default timeout to 120s. An app specific timeout can be set using the env `TIMEOUT`.

Co-authored-by: Moritz <moritz.m@local-it.org>
Reviewed-on: coop-cloud/abra#290
2023-04-14 14:44:18 +00:00
moritz 18615eaaef Post-deploy abra.sh hooks (!292)
continuous-integration/drone/push Build is passing
This solves coop-cloud/organising#235

Co-authored-by: Moritz <moritz.m@local-it.org>
Reviewed-on: coop-cloud/abra#292
2023-04-14 14:12:31 +00:00
moritz 9ade250f01 feat(cmd): add --tty flag to run commands from a script
continuous-integration/drone/push Build is failing
2023-03-29 14:25:08 +02:00
moritz 5428ebf43b review: avoid stackName recalculation 2023-03-07 13:24:46 +01:00
moritz 611430aab2 Set chaos version label for each deployed or upgraded app 2023-03-07 13:24:46 +01:00
decentral1se 312b93e794 fix: no gitops on recipe for "app new"
continuous-integration/drone/push Build is passing
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
philippr d789830ce4 feat: adds --since flag for abra app logs
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is passing
2023-02-14 00:19:38 +01:00
decentral1se e4b4084dfd fix: stream logs without hitting git.coopcloud.tech
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is passing
Medium-sized options refactor in here too!

See coop-cloud/organising#292.
2023-02-13 16:46:43 +01:00
decentral1se 0a7fa54759 fix: cant pass client here
continuous-integration/drone/push Build is failing
Closes coop-cloud/organising#396
2023-02-02 20:06:49 +01:00
decentral1se 7c1a97be72 refactor!: consolidate SSH handling
continuous-integration/drone/push Build is failing
Closes coop-cloud/organising#389.
Closes coop-cloud/organising#341.
Closes coop-cloud/organising#326.
Closes coop-cloud/organising#380.
Closes coop-cloud/organising#360.
2023-02-02 08:37:14 +00:00
moritz 6774893412 add env ENABLE_AUTO_UPDATE as label to enable/disable the auto update process
continuous-integration/drone/pr Build was killed
2023-01-31 16:12:02 +01:00
moritz ebb86391af add a label to signal that a deploy is a chaos deploy (!265)
continuous-integration/drone/push Build is failing
Resolves coop-cloud/organising#390 by adding the following label `coop-cloud.${STACK_NAME}.chaos=true` (according to the version label).
This is required for the auto updater coop-cloud/organising#236 (comment)

Co-authored-by: Moritz <moritz.m@local-it.org>
Reviewed-on: coop-cloud/abra#265
2023-01-31 15:06:35 +00:00
moritz 50db39424c add a label to signal that a deploy is connected with a recipe (!264)
continuous-integration/drone/push Build is failing
Resolves coop-cloud/organising#391 by adding the following label `coop-cloud.${STACK_NAME}.recipe=${RECIPE}` (according to the version label).
This is required for the auto updater coop-cloud/organising#236 (comment)

Co-authored-by: Moritz <moritz.m@local-it.org>
Reviewed-on: coop-cloud/abra#264
2023-01-31 14:35:43 +00:00
moritz ca1ea32c46 Expose all env vars to app container. (!263)
continuous-integration/drone/push Build is failing
Resolves coop-cloud/organising#393 and is required for the auto updater coop-cloud/organising#236 (comment)

Co-authored-by: Moritz <moritz.m@local-it.org>
Reviewed-on: coop-cloud/abra#263
2023-01-31 14:13:43 +00:00
decentral1se c47aa49373 fix: improved missing context message
continuous-integration/drone/push Build is failing
2023-01-24 10:48:53 +01:00
decentral1se b4cce7dcf4 fix: better warning if flying < 3.8 compose spec
continuous-integration/drone/push Build is failing
Closes coop-cloud/organising#350
2023-01-23 18:42:23 +01:00
decentral1se b089109c94 fix: more robust docker context problem handling
continuous-integration/drone/pr Build is failing
continuous-integration/drone/push Build is failing
See coop-cloud/organising#325
See coop-cloud/organising#340
2023-01-23 14:56:34 +01:00
decentral1se c72462e0b6 fix: no domain checks if no DOMAIN=... configured
Closes coop-cloud/organising#353
2023-01-23 09:33:12 +01:00
cas cae0d9ef79 Introduce a JSON output table mechanic
- Create JSONTable as a proxy/extension to tablewriter which can also output JSON.
- Implement machine readable output for `server list` and `recipe list`
2023-01-12 21:15:14 +00:00
cas 82866cd213 Partial implementation of machine readable output.
- Implement global flag for machine readable output.
- Add machine readable output (as JSON) to list command.
2022-12-05 18:03:13 +00:00
decentral1se 42a6818ff4 fix: app cmd parsing, usage & tests
continuous-integration/drone/push Build is passing
continuous-integration/drone/pr Build is passing
Note: the integration tests don't work due to ValidateApp still
attempting to validate the host key for the test app which doesn't
exist. This will be fixed in a future commit.
2022-08-14 16:18:58 +02:00
decentral1se b27acb2f61 feat: backup/restore [ci skip]
continuous-integration/drone/pr Build is passing
See coop-cloud/organising#30.
2022-04-03 18:24:09 +02:00
decentral1se 4023e6a066 fix: wait until app created to check for secrets
continuous-integration/drone/push Build is failing
2022-03-18 11:10:15 +01:00
decentral1se 1615130929 fix: skip prompt for no passwords
continuous-integration/drone/push Build is passing
2022-03-15 10:54:05 +01:00
decentral1se b31cb6b866 feat: prompt for secret generation
continuous-integration/drone/push Build is passing
Closes coop-cloud/organising#302.
2022-03-12 16:47:19 +01:00
decentral1se a9b522719f fix: use name not stack name for pass storage 2022-03-12 16:01:31 +01:00
decentral1se 42c1450384 refactor!: prefer short flags on release 2022-03-12 15:28:33 +01:00
decentral1se a2377882f6 refacator!: use single char short flags 2022-03-12 15:27:19 +01:00
decentral1se e78b395662 feat: new short flag for RC upgrading 2022-03-12 15:24:19 +01:00
decentral1se 3fbd381f55 fix: add pass remove flag & show name is optional 2022-03-12 09:17:24 +01:00
decentral1se 8ccf856110 fix: lay out generated secrets with warning/clarification 2022-03-11 16:39:34 +01:00
decentral1se 3381b8936d fix: better error handling & proper context deletion for server rm
continuous-integration/drone/push Build is passing
2022-02-24 15:57:52 +01:00
decentral1se 823f869f1d fix: error out correctly from ValidateDomain 2022-02-24 15:57:40 +01: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 5da4afa0ec fix: only ensure latest after cloning
continuous-integration/drone/push Build is passing
2022-02-18 09:55:07 +01:00
decentral1se c3442354e7 fix: skip dupe ipv4 check, done in EnsureDomainsResolveSameIPv4
continuous-integration/drone/push Build is passing
2022-02-14 17:44:15 +01:00
decentral1se b5f23d3791 feat: show latest published version on sync
continuous-integration/drone/push Build is passing
2022-02-09 08:58:20 +00:00
decentral1se 2b2dcc01b4 fix: dont checkout latest if we dont have a copy
continuous-integration/drone/push Build is passing
2022-02-09 09:54:02 +01:00