80 Commits

Author SHA1 Message Date
b351760f6e
refactor(typo): typo of hetzner in output for user 2021-08-02 23:26:57 +01:00
102f4e22b5
docs: fix typo 2021-08-02 22:03:53 +02:00
5294e84d5e
feat: implement capsul create 2021-08-02 15:11:14 +02:00
3e91174ce0
feat: implement hetzner new command 2021-08-02 14:05:39 +02:00
38d8b51bd5
refactor: moved a lot of flags & added comments
Comments added to fix the golint errors on exported things need comments
2021-08-02 07:36:35 +01:00
9070806f8d
refactor: deal with err from ShowSubcommandHelp 2021-08-02 05:58:47 +01:00
bb1eb372ef
refactor: stack func to client, mv app to new file
Stack interaction is now under client.

App types and functions moved from env to app under config
2021-08-02 05:51:58 +01:00
a3f574a8fa
refactor: app new cmd to be easier to read 2021-08-02 04:18:20 +01:00
30d11f48a7
refactor: break up cli pkg into nice small chunks 2021-08-02 02:10:41 +01:00
dc4e490497
refactor(style): error str shouldnt be capitalized 2021-08-02 01:09:25 +01:00
ffd1b3a771
refactor: function rename
`errorExit` renamed to `showSubcommandHelpAndError`
2021-08-02 01:08:17 +01:00
8267d4202b
feat: function to display help, error, & exit 2021-08-02 00:57:11 +01:00
d74b7636a1
WIP make a start on the hetzner command 2021-08-02 01:54:16 +02:00
4ae5e6123d
refactor: add specific check for missing context 2021-08-02 01:06:41 +02:00
19d435c5e5
feat: implement server init 2021-08-02 01:03:27 +02:00
6be54c670a
fix: error out if missing server arg 2021-08-02 00:37:25 +02:00
a1bce4661b
docs: server CLI documentation 2021-08-02 00:30:03 +02:00
8a5ee68b7b
refactor: drop alias command
Save us some work and avoid confusion on two things doing the same thing
under different top-level sub-commands (this was just an experiment
after all).
2021-08-02 00:20:39 +02:00
760ac495b3
fix: handle error for reading apps 2021-07-31 18:47:32 +02:00
42968fb8e1
feat: finally implement app new command 2021-07-31 15:50:04 +02:00
932803453e
WIP: still hacking on the app new command
Finally had to fork godotenv because it strips comments and we need
those to parse length values (e.g. "FOO=v1  # length=10") (or in other
words, motivation to move to the YAML format).

There is a new secret module now, with functionality for dealing with
generation and parsing of secrets.

The final output needs some work and there is also the final step of
implementing the sending of secrets to the docker daemon. Coming Soon
™️.
2021-07-31 12:49:22 +02:00
5771f6c158
WIP another pass on the app new command 2021-07-30 22:55:00 +02:00
e728bcd7ac
docs: CLI flag docs and rewording of usage 2021-07-30 22:54:30 +02:00
769c5b899b
refactor: abstract secret generation into package 2021-07-30 22:53:51 +02:00
f56ddef6c8
WIP: another step further into app new command 2021-07-30 20:14:17 +02:00
a581049cf1
refactor: simplify for loop 2021-07-30 16:32:06 +01:00
064a0f271f
WIP: further process on app new command 2021-07-30 13:16:28 +02:00
d422902e09
WIP: spec out first steps for app new command 2021-07-29 12:26:11 +02:00
e4ed2aeebf
docs: better wording 2021-07-28 22:13:05 +02:00
1187d6bfd5
refactor: move catalogue logic into own package 2021-07-28 22:10:13 +02:00
bf0212c520
docs: more flag aliases (for app new command) 2021-07-28 14:27:23 +02:00
de3ea8188e
WIP spec out app new command 2021-07-28 14:26:37 +02:00
bf7d437571
docs: more CLI documentation 2021-07-28 13:56:18 +02:00
2c1b8ee7e2
docs: document flags for app new command 2021-07-28 11:30:14 +02:00
622e0127ea
docs: fill out app listing CLI docs 2021-07-28 11:29:59 +02:00
0e75350985
feat: prototype for app listing 2021-07-27 21:25:08 +02:00
ef1591d596
WIP: app status listing using concurrency
This being my first time using goroutines, it is pretty messy but the
idea has been shown to be workable! We can concurrently look up multiple
contexts for a much faster response time especially when using multiple
servers.

Remaining TODOs are:

- [ ] Get proper status reporting (deployed/inactive/unknown)
- [ ] Error handling (especially when missing contexts)
- [ ] Refactor and tidy
2021-07-27 12:52:09 +02:00
429c7e4e50
docs: take a pass on CLI usage docs and add ASCII 2021-07-26 23:58:34 +02:00
3bc612c44e
WIP: status lookup for apps listing 2021-07-26 20:59:17 +02:00
2c83113040
docs: add shorthand and usage docs for app ls flags 2021-07-26 19:59:50 +02:00
fae5a87ce2
fix: respect --type/-t logic for app listing
Reverts c27376c89bded5313f5d801e631b516fc3ddfc0f. Woops.
2021-07-26 19:59:26 +02:00
145e6326c9
fix: use domain to follow original abra app ls 2021-07-26 19:49:51 +02:00
5def18a9af
fix: sort by server and type for app listing 2021-07-26 19:47:44 +02:00
c27376c89b
fix: disable merging and rely on type being present 2021-07-26 19:16:38 +02:00
01cbee824a
WIP: app list command sorting 2021-07-26 18:23:28 +02:00
337d3e9ae1
refactor: more conventional name for method 2021-07-26 17:50:40 +02:00
60a70d2d83
refactor(recipe): better naming, sorting and types
In order to arrange various types of sorting for the app catalogue, it
seems like the recommended approach is to maintain a separate data
structure alongside the JSON map we get from apps.coopcloud.tech.

Therefore, I attempt to provide a ToList() method and accompanying
sort.Sort interface sorting implementations. For now, this is just
sorting by app name.

I am testing this type of implementation here before moving on to
arrange different types of sorting for the `app list` command.
2021-07-26 17:25:08 +02:00
1f62ace524
refactor: use method to sort recipe apps listing 2021-07-26 15:43:35 +02:00
1f550c2470
feat: finish recipe create command 2021-07-25 19:28:29 +02:00
359b07b562
WIP: recipe create 2021-07-25 00:07:35 +02:00