Commit Graph

259 Commits

Author SHA1 Message Date
3wc
759a00eeb3 fix: less fussy catalogue generation
All checks were successful
continuous-integration/drone/push Build is passing
2021-11-24 13:48:17 +02:00
dd0f328a65
fix: dont throw away changes
All checks were successful
continuous-integration/drone/push Build is passing
Part of coop-cloud/organising#226.
2021-11-22 21:11:59 +01:00
aea5cc69c3
fix: include ignored files
Part of coop-cloud/organising#226.
2021-11-22 21:11:59 +01:00
3wc
d0a30f6b7b refactor: code style / error handling improvements
All checks were successful
continuous-integration/drone/push Build is passing
2021-11-22 20:37:12 +02:00
3wc
9d62fff074 feat: recipe generate: load category and features 2021-11-22 20:37:12 +02:00
711c4e5ee8
fix: warn on invalid envs for catalogue generation
All checks were successful
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is passing
Closes coop-cloud/organising#256.
2021-11-22 18:38:59 +01:00
cb32e88cde
fix: support retryable http clients
All checks were successful
continuous-integration/drone/push Build is passing
Closes coop-cloud/organising#257.
2021-11-22 18:28:18 +01:00
a18729bf98
fix: ensure changes are check for
All checks were successful
continuous-integration/drone/push Build is passing
Part of coop-cloud/organising#255.
2021-11-22 17:49:31 +01:00
fdf4fc6737
fix: ensure validation takes place
All checks were successful
continuous-integration/drone/push Build is passing
Part of coop-cloud/organising#243 (comment).
2021-11-21 15:00:04 +01:00
304b70639f
fix: only check catalogue once
All checks were successful
continuous-integration/drone/push Build is passing
2021-11-19 15:50:29 +01:00
fc51cf7775
docs: improve wording [ci skip] 2021-11-19 15:29:54 +01:00
e589709cb0
fix: attempt to include IdentityFile if available
All checks were successful
continuous-integration/drone/push Build is passing
This is part of trying to debug:

    coop-cloud/organising#250

And also part of:

    coop-cloud/docs.coopcloud.tech#27

Where I now try to specify the same logic as `ssh -i <my-key-path>` in
the underlying connection logic. This should help with being more
explicit about what key is being used via the SSH config file.
2021-11-18 21:16:10 +01:00
56c3e070f5
fix: log what keys are loaded with the ssh-agent
All checks were successful
continuous-integration/drone/push Build is passing
Closes coop-cloud/organising#249.
2021-11-18 20:04:57 +01:00
1f6e4fa4a3
fix: ensure to init/commit the new recipe repo
All checks were successful
continuous-integration/drone/push Build is passing
Part of coop-cloud/organising#247.
2021-11-15 18:55:13 +01:00
4a245c3e02
fix: ensure .git repo exists
Part of coop-cloud/organising#247.
2021-11-15 18:55:13 +01:00
915083b426
fix: time out on 60 sec + of converge checks
All checks were successful
continuous-integration/drone/push Build is passing
See coop-cloud/organising#246.
2021-11-14 23:15:35 +01:00
486a1717e7
fix: dont attempt to clone is local repo is there
All checks were successful
continuous-integration/drone/push Build is passing
See coop-cloud/organising#247.
2021-11-14 22:54:55 +01:00
9122c0a9b8
fix: ensure domain/server resolve to same ipv4
All checks were successful
continuous-integration/drone/push Build is passing
See coop-cloud/organising#227 (comment).
2021-11-14 22:47:18 +01:00
85ff04202f
fix: ensure ipv4 is present for app deploys
All checks were successful
continuous-integration/drone/push Build is passing
See coop-cloud/organising#227.
2021-11-13 23:04:58 +01:00
f78a04109c
fix: clarify when deploy done [ci skip] 2021-11-10 09:15:52 +01:00
b67ad02f87
feat: rudimentary deploy status checking
All checks were successful
continuous-integration/drone/push Build is passing
See coop-cloud/organising#209.
2021-11-10 09:06:55 +01:00
cd361237e7
Revert "Revert "test: remove broken tests for client""
All checks were successful
continuous-integration/drone/push Build is passing
This reverts commit 59031595ea.

Argh, reverted this by accident, heres another one!
2021-11-09 18:25:28 +01:00
59031595ea
Revert "test: remove broken tests for client"
This reverts commit 17a5f1529a.
2021-11-09 17:58:31 +01:00
6f26b51f3e
fix: only check host keys on requested hosts
All checks were successful
continuous-integration/drone/push Build is passing
See coop-cloud/organising#242.
2021-11-09 17:44:13 +01:00
17a5f1529a
test: remove broken tests for client
Some checks reported errors
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build was killed
2021-11-09 13:03:33 +01:00
edb427a7ae
feat: implement host key checking
Some checks failed
continuous-integration/drone/pr Build is failing
continuous-integration/drone/push Build is failing
Closes coop-cloud/organising#237.
2021-11-08 15:37:23 +01:00
2b9395be1a
feat: make sync use wizard mode
All checks were successful
continuous-integration/drone/push Build is passing
Some bugs squashed while testing this extensively.
2021-11-06 23:40:22 +01:00
f9726b6643
WIP: temporarily avoid SSH host key checking
All checks were successful
continuous-integration/drone/push Build is passing
Closes coop-cloud/organising#234.
Closes coop-cloud/organising#142.
2021-11-05 12:33:32 +01:00
de7054fd74
fix: use x-platform code for pdeathsig
Some checks reported errors
continuous-integration/drone/push Build was killed
This might cause the macosx build not to fail, I hope.

See https://github.com/docker/cli/tree/v20.10.10/cli/connhelper/commandconn
2021-11-03 09:57:35 +01:00
e4e606efb0
feat: catalogue generate now rate limits
All checks were successful
continuous-integration/drone/push Build is passing
Closes coop-cloud/organising#231.
2021-11-03 06:53:38 +01:00
e37b49201f
fix: use IdleConnTimeout/ConnectTimeout
All checks were successful
continuous-integration/drone/push Build is passing
This is an attempt to set sensible timeouts on abra connections. This
might not be the last word on this but it seems that SSH connections now
bail out correctly and other kinds of commands don't explode (e.g.
logs).

Closes coop-cloud/organising#222.
Closes coop-cloud/organising#218.
2021-11-02 15:49:11 +01:00
fc2deda1f6
Revert "fix: drop copy/pasta, keep timeouts"
This reverts commit a170e26e27.

Attempting to add more nuanced timeout logic.
2021-11-02 15:18:17 +01:00
7f176d8e2f
fix: ensure logging for status checks
Closes coop-cloud/organising#226.
2021-11-02 15:15:52 +01:00
3b77607f36
fix: better error messages for missing repos
Some checks failed
continuous-integration/drone/push Build is failing
2021-11-02 13:36:40 +01:00
d56400eea8
fix: bail out on unstage changes for plain --force
Some checks failed
continuous-integration/drone/push Build is failing
2021-10-26 10:52:26 +02:00
066b2b9373
fix: stream output from remote ssh commands 2021-10-26 01:30:10 +02:00
aec11bda28
fix: add ssh conn time outs 2021-10-26 00:33:18 +02:00
8e3f90a7f3
fix: server inputs handling + better logging 2021-10-25 23:48:49 +02:00
3d46ce6db2
refactor: more seamless SSH connections
All checks were successful
continuous-integration/drone/push Build is passing
2021-10-25 11:13:41 +02:00
9e0d77d5c6
refactor: better SSH connection details handling
All checks were successful
continuous-integration/drone/push Build is passing
2021-10-25 10:42:39 +02:00
8772217f41
fix: working provisioning post chaos testing
All checks were successful
continuous-integration/drone/push Build is passing
2021-10-25 10:06:16 +02:00
9a0e12258a
feat: provision docker installation
Some checks failed
continuous-integration/drone/push Build is failing
2021-10-24 23:15:38 +02:00
a458a5d9f7
docs: mark upstreams for all upstreams
All checks were successful
continuous-integration/drone/push Build is passing
2021-10-21 19:54:43 +02:00
963f8dcc73
fix: recover tests from overzealous cleanup
All checks were successful
continuous-integration/drone/push Build is passing
2021-10-21 19:40:26 +02:00
dc04cf5ff7
chore: migrate all upstream code to own dir 2021-10-21 19:35:13 +02:00
80921c9f55
fix: remove cruft + readme pass + document forks
All checks were successful
continuous-integration/drone/push Build is passing
2021-10-21 18:35:24 +02:00
a170e26e27
fix: drop copy/pasta, keep timeouts
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/tag Build is passing
2021-10-21 15:42:50 +02:00
7a5ad65178
fix: load timeout before other opts
All checks were successful
continuous-integration/drone/push Build is passing
2021-10-21 15:06:03 +02:00
74bcb99c70
fix: use this weird default
Closes coop-cloud/organising#207.
2021-10-19 22:43:43 +02:00
597b4b586e
WIP: domain listing with Gandi
All checks were successful
continuous-integration/drone/push Build is passing
Rethinking the interface already.
2021-10-18 22:16:29 +02:00
7ea3df45d4
WIP: dns support via libdns
All checks were successful
continuous-integration/drone/push Build is passing
2021-10-18 20:35:43 +02:00
d1e42752e2
fix: set connection timeouts + clean up bad contexts
All checks were successful
continuous-integration/drone/push Build is passing
Closes coop-cloud/organising#205.
2021-10-18 10:48:43 +02:00
9526d1fde6
fix: ensure we have version checked out on deploy
All checks were successful
continuous-integration/drone/push Build is passing
2021-10-18 09:30:43 +02:00
62cc7ef92d
feat: upgrade/downgrade support chaos mode
All checks were successful
continuous-integration/drone/push Build is passing
2021-10-18 08:57:25 +02:00
2f9b11f389
feat: support deploying with chaos mode
Some checks failed
continuous-integration/drone/push Build is failing
2021-10-18 08:14:06 +02:00
6d42e72f16
fix: allow for client creation on default context
Some checks failed
continuous-integration/drone/push Build is failing
See coop-cloud/organising#206.
2021-10-17 23:50:44 +02:00
dc040a0b38
chore: change test context names
All checks were successful
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is passing
2021-10-16 13:26:03 +02:00
e6e2e5214f
test: add tests for pkg/client/client.go 2021-10-16 13:04:57 +02:00
61452b5f32
docs: add README.md to document testing 2021-10-16 12:26:43 +02:00
78460ac0ba
test: increatse client/context.go coverage to 90% 2021-10-16 11:41:41 +02:00
ae32b1eed2
fix: standardise checkout options
All checks were successful
continuous-integration/drone/push Build is passing
2021-10-14 12:17:58 +02:00
d0828c4d8d
fix: teach app version command to read new versions
All checks were successful
continuous-integration/drone/push Build is passing
2021-10-14 11:29:57 +02:00
37022bf0c8
feat: make deploy only deploy
All checks were successful
continuous-integration/drone/push Build is passing
See coop-cloud/organising#127.
2021-10-13 16:51:04 +02:00
a9af0b3627
fix: let gofmt do its magic
All checks were successful
continuous-integration/drone/push Build is passing
2021-10-12 10:34:10 +02:00
3wc
a0b4886eba WIP: default to compose.yml instead of all of 'em
Some checks failed
continuous-integration/drone/push Build is failing
2021-10-12 10:25:37 +02:00
84489495dc
fix: load STACK_NAME if not present
All checks were successful
continuous-integration/drone/push Build is passing
2021-10-12 09:03:48 +02:00
a8683dc38a
refactor: better formatting 2021-10-12 08:59:14 +02:00
e2128ea5b6
fix: check key existance correctly
All checks were successful
continuous-integration/drone/push Build is passing
2021-10-12 08:55:42 +02:00
4a01e411be
refactor: handle STACK_NAME override in one place
All checks were successful
continuous-integration/drone/push Build is passing
2021-10-12 01:14:14 +02:00
c764243f3a
fix: manage multiple version showing edge cases
All checks were successful
continuous-integration/drone/push Build is passing
2021-10-08 10:50:48 +02:00
dde8afcd43
feat: support version/upgrade listing
All checks were successful
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is passing
Closes coop-cloud/organising#130.
2021-10-08 09:51:47 +02:00
7368cabc49
fix: format output correctly
All checks were successful
continuous-integration/drone/push Build is passing
2021-10-05 20:24:52 +02:00
8bfd76fd04
feat: generate versions for catalogue also
Some checks are pending
continuous-integration/drone/pr Build is running
continuous-integration/drone/push Build is passing
Closes coop-cloud/organising#179.
2021-10-05 20:14:00 +02:00
c616907b71
feat: teach recipe sync to understand new versions
All checks were successful
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is passing
Closes coop-cloud/organising#177.
2021-10-05 10:28:09 +02:00
8cc0a350e6
fix: pass sample env when loading recipe
Closes coop-cloud/organising#176.
2021-10-02 23:00:09 +02:00
48290aa316
fix: make server path creation more robust 2021-10-02 22:30:08 +02:00
09f49cdc76
chore: fix tests
Some checks reported errors
continuous-integration/drone/push Build was killed
continuous-integration/drone/tag Build is passing
2021-10-01 12:57:34 +02:00
3wc
7c4cdc530c fix: don't crash if no abra.sh
Some checks failed
continuous-integration/drone/push Build is failing
2021-10-01 11:40:19 +02:00
3wc
49781c7e3f fix: ignore "env" files which don't end in .env 2021-10-01 11:40:19 +02:00
b1147cd136
feat: add x-platform progress bars for long loads
Some checks failed
continuous-integration/drone/push Build is failing
Closes coop-cloud/organising#150.
2021-09-22 07:48:17 +02:00
95a9013658
fix: use appFiles to determine server list
All checks were successful
continuous-integration/drone/push Build is passing
2021-09-20 22:43:30 +02:00
700f022790
WIP: use repo metadata not existing catalogue
All checks were successful
continuous-integration/drone/push Build is passing
2021-09-20 09:38:51 +02:00
fdd46a4d98
chore: run formatter
All checks were successful
continuous-integration/drone/push Build is passing
2021-09-17 07:38:38 +02:00
e00920643e
WIP: implement async recipe cloning
Some checks failed
continuous-integration/drone/push Build is failing
See coop-cloud/organising#159.
2021-09-16 16:28:11 +02:00
3wc
754fe81e01 feat: add templating during .. app new
Some checks failed
continuous-integration/drone/push Build is failing
Closes coop-cloud/organising#168
2021-09-16 15:09:35 +02:00
8e111dc32f
fix: use correct debug function
All checks were successful
continuous-integration/drone/push Build is passing
2021-09-16 09:48:28 +02:00
20ecdb8061
fix: log which compose files are being loaded
Some checks failed
continuous-integration/drone/push Build is failing
See coop-cloud/organising#167.
2021-09-16 09:45:02 +02:00
f87aad4688
fix: list all servers
All checks were successful
continuous-integration/drone/push Build is passing
Closes coop-cloud/organising#166.
2021-09-16 09:26:12 +02:00
6794236b77
feat: support service completion
All checks were successful
continuous-integration/drone/push Build is passing
Closes coop-cloud/organising#165.
2021-09-16 09:10:05 +02:00
6c9bb89a10
refactor: use our usual initialisation 2021-09-16 09:09:51 +02:00
6c115926e3
fix: load sample env for new apps
All checks were successful
continuous-integration/drone/push Build is passing
Closes coop-cloud/organising#170.
2021-09-16 08:40:48 +02:00
b6fe86f2ad
fix: use correct args for debug log inputs
All checks were successful
continuous-integration/drone/push Build is passing
2021-09-14 16:14:09 +02:00
d290a4ec0b
WIP: the beginning of catalogue generation
Some checks failed
continuous-integration/drone/push Build is failing
See coop-cloud/organising#159.
2021-09-14 16:00:15 +02:00
9fcdc45851
feat: debug logging
Closes coop-cloud/organising#164.
2021-09-11 11:45:26 +02:00
3c3d8dc0e7
WIP: add first run at app rollback command
All checks were successful
continuous-integration/drone/push Build is passing
See coop-cloud/organising#146.
2021-09-10 11:49:29 +02:00
cf2653fef8
refactor: drop unused function, rename GetAppsNames
All checks were successful
continuous-integration/drone/pr Build is passing
2021-09-08 13:43:55 +02:00
4c216fdf40
feat: auto-complete app and recipe names
All checks were successful
continuous-integration/drone/pr Build is passing
2021-09-07 16:57:39 +02:00
b477bf8ece
fix: get app new working again 2021-09-07 08:12:37 +02:00
87f0985ebb
fix: clone also the main branch
Closes coop-cloud/go-abra#65.
2021-09-07 08:12:17 +02:00
448dadd292
fix: sort versions correctly
All checks were successful
continuous-integration/drone/push Build is passing
Closes coop-cloud/go-abra#44.
2021-09-06 16:51:42 +02:00
9862cf17a9
refactor: rename to RecipeMeta
Some checks failed
continuous-integration/drone/push Build is failing
2021-09-06 01:47:59 +02:00
356c8f8c4e
refactor: construct recipe struct proper
Some checks failed
continuous-integration/drone/push Build is failing
2021-09-06 01:41:16 +02:00
6a1ecd0f85
refactor: consolidate recipe in-place editing functions
All checks were successful
continuous-integration/drone/push Build is passing
2021-09-06 01:34:28 +02:00
b5d8fb1270
refactor: create compose package
All checks were successful
continuous-integration/drone/push Build is passing
2021-09-06 01:15:59 +02:00
a0625bf133
refactor: centralise recipe validation 2021-09-06 00:45:13 +02:00
691a2c7a50
tests: fix App struct
All checks were successful
continuous-integration/drone/push Build is passing
2021-09-06 00:34:49 +02:00
d4333c2dc0
refactor: use app getting instead of boilerplate
Some checks failed
continuous-integration/drone/push Build is failing
2021-09-05 23:17:35 +02:00
d82f854ebd
test: fix test suite to understand pkg/ directory
All checks were successful
continuous-integration/drone/push Build is passing
2021-09-05 21:39:12 +02:00
b7742d5e18
refactor: use pkg directory structure 2021-09-05 21:37:03 +02:00