-
Notifications
You must be signed in to change notification settings - Fork 13
feat: Avoid cli setup checks when not required #68
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
In order to optimize startup time, especially when only issuing a non cloud-cli required command, collie now only checks cloud cli configuration when required.
|
Thanks for taking this up so quickly. I think this is a step in the right direction and certainly fixes the use cases I described. However I wonder if we can go even further. Some ideas:
|
|
not awaiting the logger configuration can cause loosing logs
see discussion in #68
|
Error in |
I took this up as I was also trying to see if the debug output showed me the sequential invocations - and fixed some issues in the logging as part of the setup. |
|
Thanks Johannes I merge this now then. |
* fix: Collie config no longer crashes (#50) * fix: links for badges (#59) * fix: `collie cache` will show help (#58) * feat: Add tutorial links directly in README. (#52) * feat: Add images Wiki (#63) * feat: Rename totalUsageCost, fix issue with cached tenants, fix costs table missing data (#64) * Renamed `totalUsageCost` to `cost` so it takes less space * Fixed an issue with retrieving cached tenants. * Fixed table only showing one month per tenant at maximum (closes #51) * Update README.md Links were pointing to the wrong Wiki sections * fix: Log statements not hidden when piping collie output (#62) Now properly disables log output breaking the output when collie stdout is piped into a file or different command. * Add Website to README (#69) * feat: Avoid cli setup checks when not required (#68) * feat: Avoid cli setup checks when not required In order to optimize startup time, especially when only issuing a non cloud-cli required command, collie now only checks cloud cli configuration when required. * fix: setup logger before running commands and await it not awaiting the logger configuration can cause loosing logs * feat: run cli checks concurrently see discussion in #68 * feat: add debug logs to ShellRunner for every command * style: deno fmt Co-authored-by: Johannes Rudolph <jrudolph@meshcloud.io> * feat: Improved JSON parsing so it always logs a message, including the command. (#57) * feat: harmonize error message when cli not authenticated (#70) * Feature/issue 56 (#71) * feat: detect installed cli versions match expectations if not, give installation hints via collie readme. fixes #56 * feat: Update version number (#73) Co-authored-by: Dennis Murtic <73823855+dmurtic@users.noreply.github.com> Co-authored-by: Thomas Felix <1186998+tfelix@users.noreply.github.com> Co-authored-by: Johannes Rudolph <jrudolph@meshcloud.io>
* feat: Avoid cli setup checks when not required In order to optimize startup time, especially when only issuing a non cloud-cli required command, collie now only checks cloud cli configuration when required. * fix: setup logger before running commands and await it not awaiting the logger configuration can cause loosing logs * feat: run cli checks concurrently see discussion in #68 * feat: add debug logs to ShellRunner for every command * style: deno fmt Co-authored-by: Johannes Rudolph <jrudolph@meshcloud.io>
* feat: Add tutorial links directly in README. (#52) * feat: Add tutorial links directly in README. * And removed GitOps section, which is not supported yet. * Update README.md * Update README.md Added a different caption * feat: Avoid cli setup checks when not required (#68) * feat: Avoid cli setup checks when not required In order to optimize startup time, especially when only issuing a non cloud-cli required command, collie now only checks cloud cli configuration when required. * fix: setup logger before running commands and await it not awaiting the logger configuration can cause loosing logs * feat: run cli checks concurrently see discussion in #68 * feat: add debug logs to ShellRunner for every command * style: deno fmt Co-authored-by: Johannes Rudolph <jrudolph@meshcloud.io> * Feature/issue 56 (#71) * feat: detect installed cli versions match expectations if not, give installation hints via collie readme. fixes #56 * fix: handle GCP projects with empty IAM policies (#80) fixes #67 * fix: use azure subscription id instead of name to prevent word-splitting (#79) fixes #76 * Feature/cache statistics (#78) * refactor: generate entries summary generically for all platforms * feat: add query statistics to tty table output This lets users know whether results are served from cache or if they're queried from the cloud. At the moment only "tenant list" command supports this. Fixes #72 * feat: add query statistics to all tenant commands Fixes #72 * refactor: extract QueryStatistics class into its own module * test: add a tests for query statistics * feat: slightly tweak the query stats message. * feat: correctly print cache and cloud query statistics for hybrid query hybrid queries can occur when e.g. running - collie tenant list -> partially fills the tenant cache - collie tenant iam -> uses tenants from cache, adds IAM info * refactor: Uses OOP patterns Simplifies the statistics decorator to be less intrusive. Co-authored-by: Thomas Felix <tfelix@meshcloud.io> * Update issue templates * Update issue templates * fix: Spinner animation overwrites error message (#85) Improves the spinner animation termination to avoid part of the error message writing into the spinner animation text. * feat: Tags are shown in table cost view (#90) * fix: Fix costs / IAM missing in cached tenants. (#91) * Feature/add windows support (#87) * feat: add windows support for collie * feat: add windows binary to releases * fix: differentiation in posix and win32 path * fix: Replaces var with let * Fixed issue found while testing Windows * Added global `isWindows` var for consistency Co-authored-by: Thomas Felix <tfelix@meshcloud.io> Co-authored-by: Jelle den Burger <jdburger@meshcloud.io> * Bump version to 0.5.0 Co-authored-by: Thomas Felix <1186998+tfelix@users.noreply.github.com> Co-authored-by: Johannes Rudolph <jrudolph@meshcloud.io> Co-authored-by: Thomas Felix <tfelix@meshcloud.io> Co-authored-by: Dennis Murtic <73823855+dmurtic@users.noreply.github.com>
* feat: Add tutorial links directly in README. (#52) * feat: Add tutorial links directly in README. * And removed GitOps section, which is not supported yet. * Update README.md * Update README.md Added a different caption * feat: Avoid cli setup checks when not required (#68) * feat: Avoid cli setup checks when not required In order to optimize startup time, especially when only issuing a non cloud-cli required command, collie now only checks cloud cli configuration when required. * fix: setup logger before running commands and await it not awaiting the logger configuration can cause loosing logs * feat: run cli checks concurrently see discussion in #68 * feat: add debug logs to ShellRunner for every command * style: deno fmt Co-authored-by: Johannes Rudolph <jrudolph@meshcloud.io> * Feature/issue 56 (#71) * feat: detect installed cli versions match expectations if not, give installation hints via collie readme. fixes #56 * fix: handle GCP projects with empty IAM policies (#80) fixes #67 * fix: use azure subscription id instead of name to prevent word-splitting (#79) fixes #76 * Feature/cache statistics (#78) * refactor: generate entries summary generically for all platforms * feat: add query statistics to tty table output This lets users know whether results are served from cache or if they're queried from the cloud. At the moment only "tenant list" command supports this. Fixes #72 * feat: add query statistics to all tenant commands Fixes #72 * refactor: extract QueryStatistics class into its own module * test: add a tests for query statistics * feat: slightly tweak the query stats message. * feat: correctly print cache and cloud query statistics for hybrid query hybrid queries can occur when e.g. running - collie tenant list -> partially fills the tenant cache - collie tenant iam -> uses tenants from cache, adds IAM info * refactor: Uses OOP patterns Simplifies the statistics decorator to be less intrusive. Co-authored-by: Thomas Felix <tfelix@meshcloud.io> * Update issue templates * Update issue templates * fix: Spinner animation overwrites error message (#85) Improves the spinner animation termination to avoid part of the error message writing into the spinner animation text. * feat: Tags are shown in table cost view (#90) * fix: Fix costs / IAM missing in cached tenants. (#91) * Feature/add windows support (#87) * feat: add windows support for collie * feat: add windows binary to releases * fix: differentiation in posix and win32 path * fix: Replaces var with let * Fixed issue found while testing Windows * Added global `isWindows` var for consistency Co-authored-by: Thomas Felix <tfelix@meshcloud.io> Co-authored-by: Jelle den Burger <jdburger@meshcloud.io> * Bump version to 0.5.0 Co-authored-by: Thomas Felix <1186998+tfelix@users.noreply.github.com> Co-authored-by: Johannes Rudolph <jrudolph@meshcloud.io> Co-authored-by: Thomas Felix <tfelix@meshcloud.io> Co-authored-by: Dennis Murtic <73823855+dmurtic@users.noreply.github.com>
* feat: Add tutorial links directly in README. (#52) * feat: Add tutorial links directly in README. * And removed GitOps section, which is not supported yet. * Update README.md * Update README.md Added a different caption * feat: Avoid cli setup checks when not required (#68) * feat: Avoid cli setup checks when not required In order to optimize startup time, especially when only issuing a non cloud-cli required command, collie now only checks cloud cli configuration when required. * fix: setup logger before running commands and await it not awaiting the logger configuration can cause loosing logs * feat: run cli checks concurrently see discussion in #68 * feat: add debug logs to ShellRunner for every command * style: deno fmt Co-authored-by: Johannes Rudolph <jrudolph@meshcloud.io> * Feature/issue 56 (#71) * feat: detect installed cli versions match expectations if not, give installation hints via collie readme. fixes #56 * fix: handle GCP projects with empty IAM policies (#80) fixes #67 * fix: use azure subscription id instead of name to prevent word-splitting (#79) fixes #76 * Feature/cache statistics (#78) * refactor: generate entries summary generically for all platforms * feat: add query statistics to tty table output This lets users know whether results are served from cache or if they're queried from the cloud. At the moment only "tenant list" command supports this. Fixes #72 * feat: add query statistics to all tenant commands Fixes #72 * refactor: extract QueryStatistics class into its own module * test: add a tests for query statistics * feat: slightly tweak the query stats message. * feat: correctly print cache and cloud query statistics for hybrid query hybrid queries can occur when e.g. running - collie tenant list -> partially fills the tenant cache - collie tenant iam -> uses tenants from cache, adds IAM info * refactor: Uses OOP patterns Simplifies the statistics decorator to be less intrusive. Co-authored-by: Thomas Felix <tfelix@meshcloud.io> * Update issue templates * Update issue templates * fix: Spinner animation overwrites error message (#85) Improves the spinner animation termination to avoid part of the error message writing into the spinner animation text. * feat: Tags are shown in table cost view (#90) * fix: Fix costs / IAM missing in cached tenants. (#91) * Feature/add windows support (#87) * feat: add windows support for collie * feat: add windows binary to releases * fix: differentiation in posix and win32 path * fix: Replaces var with let * Fixed issue found while testing Windows * Added global `isWindows` var for consistency Co-authored-by: Thomas Felix <tfelix@meshcloud.io> Co-authored-by: Jelle den Burger <jdburger@meshcloud.io> * Bump version to 0.5.0 Co-authored-by: Thomas Felix <1186998+tfelix@users.noreply.github.com> Co-authored-by: Johannes Rudolph <jrudolph@meshcloud.io> Co-authored-by: Thomas Felix <tfelix@meshcloud.io> Co-authored-by: Dennis Murtic <73823855+dmurtic@users.noreply.github.com>
* feat: Add tutorial links directly in README. (#52) * feat: Add tutorial links directly in README. * And removed GitOps section, which is not supported yet. * Update README.md * Update README.md Added a different caption * feat: Avoid cli setup checks when not required (#68) * feat: Avoid cli setup checks when not required In order to optimize startup time, especially when only issuing a non cloud-cli required command, collie now only checks cloud cli configuration when required. * fix: setup logger before running commands and await it not awaiting the logger configuration can cause loosing logs * feat: run cli checks concurrently see discussion in #68 * feat: add debug logs to ShellRunner for every command * style: deno fmt Co-authored-by: Johannes Rudolph <jrudolph@meshcloud.io> * Feature/issue 56 (#71) * feat: detect installed cli versions match expectations if not, give installation hints via collie readme. fixes #56 * fix: handle GCP projects with empty IAM policies (#80) fixes #67 * fix: use azure subscription id instead of name to prevent word-splitting (#79) fixes #76 * Feature/cache statistics (#78) * refactor: generate entries summary generically for all platforms * feat: add query statistics to tty table output This lets users know whether results are served from cache or if they're queried from the cloud. At the moment only "tenant list" command supports this. Fixes #72 * feat: add query statistics to all tenant commands Fixes #72 * refactor: extract QueryStatistics class into its own module * test: add a tests for query statistics * feat: slightly tweak the query stats message. * feat: correctly print cache and cloud query statistics for hybrid query hybrid queries can occur when e.g. running - collie tenant list -> partially fills the tenant cache - collie tenant iam -> uses tenants from cache, adds IAM info * refactor: Uses OOP patterns Simplifies the statistics decorator to be less intrusive. Co-authored-by: Thomas Felix <tfelix@meshcloud.io> * Update issue templates * Update issue templates * fix: Spinner animation overwrites error message (#85) Improves the spinner animation termination to avoid part of the error message writing into the spinner animation text. * feat: Tags are shown in table cost view (#90) * fix: Fix costs / IAM missing in cached tenants. (#91) * Feature/add windows support (#87) * feat: add windows support for collie * feat: add windows binary to releases * fix: differentiation in posix and win32 path * fix: Replaces var with let * Fixed issue found while testing Windows * Added global `isWindows` var for consistency Co-authored-by: Thomas Felix <tfelix@meshcloud.io> Co-authored-by: Jelle den Burger <jdburger@meshcloud.io> * Bump version to 0.5.0 Co-authored-by: Thomas Felix <1186998+tfelix@users.noreply.github.com> Co-authored-by: Johannes Rudolph <jrudolph@meshcloud.io> Co-authored-by: Thomas Felix <tfelix@meshcloud.io> Co-authored-by: Dennis Murtic <73823855+dmurtic@users.noreply.github.com>
* feat: Add tutorial links directly in README. (#52) * feat: Add tutorial links directly in README. * And removed GitOps section, which is not supported yet. * Update README.md * Update README.md Added a different caption * feat: Avoid cli setup checks when not required (#68) * feat: Avoid cli setup checks when not required In order to optimize startup time, especially when only issuing a non cloud-cli required command, collie now only checks cloud cli configuration when required. * fix: setup logger before running commands and await it not awaiting the logger configuration can cause loosing logs * feat: run cli checks concurrently see discussion in #68 * feat: add debug logs to ShellRunner for every command * style: deno fmt Co-authored-by: Johannes Rudolph <jrudolph@meshcloud.io> * Feature/issue 56 (#71) * feat: detect installed cli versions match expectations if not, give installation hints via collie readme. fixes #56 * fix: handle GCP projects with empty IAM policies (#80) fixes #67 * fix: use azure subscription id instead of name to prevent word-splitting (#79) fixes #76 * Feature/cache statistics (#78) * refactor: generate entries summary generically for all platforms * feat: add query statistics to tty table output This lets users know whether results are served from cache or if they're queried from the cloud. At the moment only "tenant list" command supports this. Fixes #72 * feat: add query statistics to all tenant commands Fixes #72 * refactor: extract QueryStatistics class into its own module * test: add a tests for query statistics * feat: slightly tweak the query stats message. * feat: correctly print cache and cloud query statistics for hybrid query hybrid queries can occur when e.g. running - collie tenant list -> partially fills the tenant cache - collie tenant iam -> uses tenants from cache, adds IAM info * refactor: Uses OOP patterns Simplifies the statistics decorator to be less intrusive. Co-authored-by: Thomas Felix <tfelix@meshcloud.io> * Update issue templates * Update issue templates * fix: Spinner animation overwrites error message (#85) Improves the spinner animation termination to avoid part of the error message writing into the spinner animation text. * feat: Tags are shown in table cost view (#90) * fix: Fix costs / IAM missing in cached tenants. (#91) * Feature/add windows support (#87) * feat: add windows support for collie * feat: add windows binary to releases * fix: differentiation in posix and win32 path * fix: Replaces var with let * Fixed issue found while testing Windows * Added global `isWindows` var for consistency Co-authored-by: Thomas Felix <tfelix@meshcloud.io> Co-authored-by: Jelle den Burger <jdburger@meshcloud.io> * Bump version to 0.5.0 Co-authored-by: Thomas Felix <1186998+tfelix@users.noreply.github.com> Co-authored-by: Johannes Rudolph <jrudolph@meshcloud.io> Co-authored-by: Thomas Felix <tfelix@meshcloud.io> Co-authored-by: Dennis Murtic <73823855+dmurtic@users.noreply.github.com>
* feat: Add tutorial links directly in README. (#52) * feat: Add tutorial links directly in README. * And removed GitOps section, which is not supported yet. * Update README.md * Update README.md Added a different caption * feat: Avoid cli setup checks when not required (#68) * feat: Avoid cli setup checks when not required In order to optimize startup time, especially when only issuing a non cloud-cli required command, collie now only checks cloud cli configuration when required. * fix: setup logger before running commands and await it not awaiting the logger configuration can cause loosing logs * feat: run cli checks concurrently see discussion in #68 * feat: add debug logs to ShellRunner for every command * style: deno fmt Co-authored-by: Johannes Rudolph <jrudolph@meshcloud.io> * Feature/issue 56 (#71) * feat: detect installed cli versions match expectations if not, give installation hints via collie readme. fixes #56 * fix: handle GCP projects with empty IAM policies (#80) fixes #67 * fix: use azure subscription id instead of name to prevent word-splitting (#79) fixes #76 * Feature/cache statistics (#78) * refactor: generate entries summary generically for all platforms * feat: add query statistics to tty table output This lets users know whether results are served from cache or if they're queried from the cloud. At the moment only "tenant list" command supports this. Fixes #72 * feat: add query statistics to all tenant commands Fixes #72 * refactor: extract QueryStatistics class into its own module * test: add a tests for query statistics * feat: slightly tweak the query stats message. * feat: correctly print cache and cloud query statistics for hybrid query hybrid queries can occur when e.g. running - collie tenant list -> partially fills the tenant cache - collie tenant iam -> uses tenants from cache, adds IAM info * refactor: Uses OOP patterns Simplifies the statistics decorator to be less intrusive. Co-authored-by: Thomas Felix <tfelix@meshcloud.io> * Update issue templates * Update issue templates * fix: Spinner animation overwrites error message (#85) Improves the spinner animation termination to avoid part of the error message writing into the spinner animation text. * feat: Tags are shown in table cost view (#90) * fix: Fix costs / IAM missing in cached tenants. (#91) * Feature/add windows support (#87) * feat: add windows support for collie * feat: add windows binary to releases * fix: differentiation in posix and win32 path * fix: Replaces var with let * Fixed issue found while testing Windows * Added global `isWindows` var for consistency Co-authored-by: Thomas Felix <tfelix@meshcloud.io> Co-authored-by: Jelle den Burger <jdburger@meshcloud.io> * Bump version to 0.5.0 Co-authored-by: Thomas Felix <1186998+tfelix@users.noreply.github.com> Co-authored-by: Johannes Rudolph <jrudolph@meshcloud.io> Co-authored-by: Thomas Felix <tfelix@meshcloud.io> Co-authored-by: Dennis Murtic <73823855+dmurtic@users.noreply.github.com>
* feat: Add tutorial links directly in README. (#52) * feat: Add tutorial links directly in README. * And removed GitOps section, which is not supported yet. * Update README.md * Update README.md Added a different caption * feat: Avoid cli setup checks when not required (#68) * feat: Avoid cli setup checks when not required In order to optimize startup time, especially when only issuing a non cloud-cli required command, collie now only checks cloud cli configuration when required. * fix: setup logger before running commands and await it not awaiting the logger configuration can cause loosing logs * feat: run cli checks concurrently see discussion in #68 * feat: add debug logs to ShellRunner for every command * style: deno fmt Co-authored-by: Johannes Rudolph <jrudolph@meshcloud.io> * Feature/issue 56 (#71) * feat: detect installed cli versions match expectations if not, give installation hints via collie readme. fixes #56 * fix: handle GCP projects with empty IAM policies (#80) fixes #67 * fix: use azure subscription id instead of name to prevent word-splitting (#79) fixes #76 * Feature/cache statistics (#78) * refactor: generate entries summary generically for all platforms * feat: add query statistics to tty table output This lets users know whether results are served from cache or if they're queried from the cloud. At the moment only "tenant list" command supports this. Fixes #72 * feat: add query statistics to all tenant commands Fixes #72 * refactor: extract QueryStatistics class into its own module * test: add a tests for query statistics * feat: slightly tweak the query stats message. * feat: correctly print cache and cloud query statistics for hybrid query hybrid queries can occur when e.g. running - collie tenant list -> partially fills the tenant cache - collie tenant iam -> uses tenants from cache, adds IAM info * refactor: Uses OOP patterns Simplifies the statistics decorator to be less intrusive. Co-authored-by: Thomas Felix <tfelix@meshcloud.io> * Update issue templates * Update issue templates * fix: Spinner animation overwrites error message (#85) Improves the spinner animation termination to avoid part of the error message writing into the spinner animation text. * feat: Tags are shown in table cost view (#90) * fix: Fix costs / IAM missing in cached tenants. (#91) * Feature/add windows support (#87) * feat: add windows support for collie * feat: add windows binary to releases * fix: differentiation in posix and win32 path * fix: Replaces var with let * Fixed issue found while testing Windows * Added global `isWindows` var for consistency Co-authored-by: Thomas Felix <tfelix@meshcloud.io> Co-authored-by: Jelle den Burger <jdburger@meshcloud.io> * Bump version to 0.5.0 Co-authored-by: Thomas Felix <1186998+tfelix@users.noreply.github.com> Co-authored-by: Johannes Rudolph <jrudolph@meshcloud.io> Co-authored-by: Thomas Felix <tfelix@meshcloud.io> Co-authored-by: Dennis Murtic <73823855+dmurtic@users.noreply.github.com>
* feat: Add tutorial links directly in README. (#52) * feat: Add tutorial links directly in README. * And removed GitOps section, which is not supported yet. * Update README.md * Update README.md Added a different caption * feat: Avoid cli setup checks when not required (#68) * feat: Avoid cli setup checks when not required In order to optimize startup time, especially when only issuing a non cloud-cli required command, collie now only checks cloud cli configuration when required. * fix: setup logger before running commands and await it not awaiting the logger configuration can cause loosing logs * feat: run cli checks concurrently see discussion in #68 * feat: add debug logs to ShellRunner for every command * style: deno fmt Co-authored-by: Johannes Rudolph <jrudolph@meshcloud.io> * Feature/issue 56 (#71) * feat: detect installed cli versions match expectations if not, give installation hints via collie readme. fixes #56 * fix: handle GCP projects with empty IAM policies (#80) fixes #67 * fix: use azure subscription id instead of name to prevent word-splitting (#79) fixes #76 * Feature/cache statistics (#78) * refactor: generate entries summary generically for all platforms * feat: add query statistics to tty table output This lets users know whether results are served from cache or if they're queried from the cloud. At the moment only "tenant list" command supports this. Fixes #72 * feat: add query statistics to all tenant commands Fixes #72 * refactor: extract QueryStatistics class into its own module * test: add a tests for query statistics * feat: slightly tweak the query stats message. * feat: correctly print cache and cloud query statistics for hybrid query hybrid queries can occur when e.g. running - collie tenant list -> partially fills the tenant cache - collie tenant iam -> uses tenants from cache, adds IAM info * refactor: Uses OOP patterns Simplifies the statistics decorator to be less intrusive. Co-authored-by: Thomas Felix <tfelix@meshcloud.io> * Update issue templates * Update issue templates * fix: Spinner animation overwrites error message (#85) Improves the spinner animation termination to avoid part of the error message writing into the spinner animation text. * feat: Tags are shown in table cost view (#90) * fix: Fix costs / IAM missing in cached tenants. (#91) * Feature/add windows support (#87) * feat: add windows support for collie * feat: add windows binary to releases * fix: differentiation in posix and win32 path * fix: Replaces var with let * Fixed issue found while testing Windows * Added global `isWindows` var for consistency Co-authored-by: Thomas Felix <tfelix@meshcloud.io> Co-authored-by: Jelle den Burger <jdburger@meshcloud.io> * Bump version to 0.5.0 Co-authored-by: Thomas Felix <1186998+tfelix@users.noreply.github.com> Co-authored-by: Johannes Rudolph <jrudolph@meshcloud.io> Co-authored-by: Thomas Felix <tfelix@meshcloud.io> Co-authored-by: Dennis Murtic <73823855+dmurtic@users.noreply.github.com>
* feat: Add tutorial links directly in README. (#52) * feat: Add tutorial links directly in README. * And removed GitOps section, which is not supported yet. * Update README.md * Update README.md Added a different caption * feat: Avoid cli setup checks when not required (#68) * feat: Avoid cli setup checks when not required In order to optimize startup time, especially when only issuing a non cloud-cli required command, collie now only checks cloud cli configuration when required. * fix: setup logger before running commands and await it not awaiting the logger configuration can cause loosing logs * feat: run cli checks concurrently see discussion in #68 * feat: add debug logs to ShellRunner for every command * style: deno fmt Co-authored-by: Johannes Rudolph <jrudolph@meshcloud.io> * Feature/issue 56 (#71) * feat: detect installed cli versions match expectations if not, give installation hints via collie readme. fixes #56 * fix: handle GCP projects with empty IAM policies (#80) fixes #67 * fix: use azure subscription id instead of name to prevent word-splitting (#79) fixes #76 * Feature/cache statistics (#78) * refactor: generate entries summary generically for all platforms * feat: add query statistics to tty table output This lets users know whether results are served from cache or if they're queried from the cloud. At the moment only "tenant list" command supports this. Fixes #72 * feat: add query statistics to all tenant commands Fixes #72 * refactor: extract QueryStatistics class into its own module * test: add a tests for query statistics * feat: slightly tweak the query stats message. * feat: correctly print cache and cloud query statistics for hybrid query hybrid queries can occur when e.g. running - collie tenant list -> partially fills the tenant cache - collie tenant iam -> uses tenants from cache, adds IAM info * refactor: Uses OOP patterns Simplifies the statistics decorator to be less intrusive. Co-authored-by: Thomas Felix <tfelix@meshcloud.io> * Update issue templates * Update issue templates * fix: Spinner animation overwrites error message (#85) Improves the spinner animation termination to avoid part of the error message writing into the spinner animation text. * feat: Tags are shown in table cost view (#90) * fix: Fix costs / IAM missing in cached tenants. (#91) * Feature/add windows support (#87) * feat: add windows support for collie * feat: add windows binary to releases * fix: differentiation in posix and win32 path * fix: Replaces var with let * Fixed issue found while testing Windows * Added global `isWindows` var for consistency Co-authored-by: Thomas Felix <tfelix@meshcloud.io> Co-authored-by: Jelle den Burger <jdburger@meshcloud.io> * Bump version to 0.5.0 Co-authored-by: Thomas Felix <1186998+tfelix@users.noreply.github.com> Co-authored-by: Johannes Rudolph <jrudolph@meshcloud.io> Co-authored-by: Thomas Felix <tfelix@meshcloud.io> Co-authored-by: Dennis Murtic <73823855+dmurtic@users.noreply.github.com>
* feat: Add tutorial links directly in README. (#52) * feat: Add tutorial links directly in README. * And removed GitOps section, which is not supported yet. * Update README.md * Update README.md Added a different caption * feat: Avoid cli setup checks when not required (#68) * feat: Avoid cli setup checks when not required In order to optimize startup time, especially when only issuing a non cloud-cli required command, collie now only checks cloud cli configuration when required. * fix: setup logger before running commands and await it not awaiting the logger configuration can cause loosing logs * feat: run cli checks concurrently see discussion in #68 * feat: add debug logs to ShellRunner for every command * style: deno fmt Co-authored-by: Johannes Rudolph <jrudolph@meshcloud.io> * Feature/issue 56 (#71) * feat: detect installed cli versions match expectations if not, give installation hints via collie readme. fixes #56 * fix: handle GCP projects with empty IAM policies (#80) fixes #67 * fix: use azure subscription id instead of name to prevent word-splitting (#79) fixes #76 * Feature/cache statistics (#78) * refactor: generate entries summary generically for all platforms * feat: add query statistics to tty table output This lets users know whether results are served from cache or if they're queried from the cloud. At the moment only "tenant list" command supports this. Fixes #72 * feat: add query statistics to all tenant commands Fixes #72 * refactor: extract QueryStatistics class into its own module * test: add a tests for query statistics * feat: slightly tweak the query stats message. * feat: correctly print cache and cloud query statistics for hybrid query hybrid queries can occur when e.g. running - collie tenant list -> partially fills the tenant cache - collie tenant iam -> uses tenants from cache, adds IAM info * refactor: Uses OOP patterns Simplifies the statistics decorator to be less intrusive. Co-authored-by: Thomas Felix <tfelix@meshcloud.io> * Update issue templates * Update issue templates * fix: Spinner animation overwrites error message (#85) Improves the spinner animation termination to avoid part of the error message writing into the spinner animation text. * feat: Tags are shown in table cost view (#90) * fix: Fix costs / IAM missing in cached tenants. (#91) * Feature/add windows support (#87) * feat: add windows support for collie * feat: add windows binary to releases * fix: differentiation in posix and win32 path * fix: Replaces var with let * Fixed issue found while testing Windows * Added global `isWindows` var for consistency Co-authored-by: Thomas Felix <tfelix@meshcloud.io> Co-authored-by: Jelle den Burger <jdburger@meshcloud.io> * Bump version to 0.5.0 Co-authored-by: Thomas Felix <1186998+tfelix@users.noreply.github.com> Co-authored-by: Johannes Rudolph <jrudolph@meshcloud.io> Co-authored-by: Thomas Felix <tfelix@meshcloud.io> Co-authored-by: Dennis Murtic <73823855+dmurtic@users.noreply.github.com>
* feat: Add tutorial links directly in README. (#52) * feat: Add tutorial links directly in README. * And removed GitOps section, which is not supported yet. * Update README.md * Update README.md Added a different caption * feat: Avoid cli setup checks when not required (#68) * feat: Avoid cli setup checks when not required In order to optimize startup time, especially when only issuing a non cloud-cli required command, collie now only checks cloud cli configuration when required. * fix: setup logger before running commands and await it not awaiting the logger configuration can cause loosing logs * feat: run cli checks concurrently see discussion in #68 * feat: add debug logs to ShellRunner for every command * style: deno fmt Co-authored-by: Johannes Rudolph <jrudolph@meshcloud.io> * Feature/issue 56 (#71) * feat: detect installed cli versions match expectations if not, give installation hints via collie readme. fixes #56 * fix: handle GCP projects with empty IAM policies (#80) fixes #67 * fix: use azure subscription id instead of name to prevent word-splitting (#79) fixes #76 * Feature/cache statistics (#78) * refactor: generate entries summary generically for all platforms * feat: add query statistics to tty table output This lets users know whether results are served from cache or if they're queried from the cloud. At the moment only "tenant list" command supports this. Fixes #72 * feat: add query statistics to all tenant commands Fixes #72 * refactor: extract QueryStatistics class into its own module * test: add a tests for query statistics * feat: slightly tweak the query stats message. * feat: correctly print cache and cloud query statistics for hybrid query hybrid queries can occur when e.g. running - collie tenant list -> partially fills the tenant cache - collie tenant iam -> uses tenants from cache, adds IAM info * refactor: Uses OOP patterns Simplifies the statistics decorator to be less intrusive. Co-authored-by: Thomas Felix <tfelix@meshcloud.io> * Update issue templates * Update issue templates * fix: Spinner animation overwrites error message (#85) Improves the spinner animation termination to avoid part of the error message writing into the spinner animation text. * feat: Tags are shown in table cost view (#90) * fix: Fix costs / IAM missing in cached tenants. (#91) * Feature/add windows support (#87) * feat: add windows support for collie * feat: add windows binary to releases * fix: differentiation in posix and win32 path * fix: Replaces var with let * Fixed issue found while testing Windows * Added global `isWindows` var for consistency Co-authored-by: Thomas Felix <tfelix@meshcloud.io> Co-authored-by: Jelle den Burger <jdburger@meshcloud.io> * Bump version to 0.5.0 Co-authored-by: Thomas Felix <1186998+tfelix@users.noreply.github.com> Co-authored-by: Johannes Rudolph <jrudolph@meshcloud.io> Co-authored-by: Thomas Felix <tfelix@meshcloud.io> Co-authored-by: Dennis Murtic <73823855+dmurtic@users.noreply.github.com>
In order to optimize startup time, especially when only issuing a non
cloud-cli required command, collie now only checks cloud cli configuration
when required.
Should mitigate or at least lessens @JohannesRudolph startup time issue.