Skip to content

Releases: hashicorp/hcdiag

v0.5.6

07 Jan 15:37
Compare
Choose a tag to compare

IMPROVEMENTS:

  • core: Updates: upgrade golang.org/x/crypto to v0.32.0; upgrade Go to current patch, 1.22.10. [GH-364]

v0.5.5

30 Sep 15:03
Compare
Choose a tag to compare

IMPROVEMENTS:

  • core: Upgrade to go 1.22.7. [GH-360]

v0.5.4

30 Jul 20:18
Compare
Choose a tag to compare

IMPROVEMENTS:

  • core: Upgrade to go 1.21.12. [GH-355]

v0.5.3

06 Mar 22:23
Compare
Choose a tag to compare

IMPROVEMENTS:

  • core: Upgrade to go 1.21.7. [GH-351]

v0.5.3-rc0

06 Mar 18:08
Compare
Choose a tag to compare
v0.5.3-rc0 Pre-release
Pre-release
run go mod tidy

v0.5.2

01 Nov 19:55
Compare
Choose a tag to compare

IMPROVEMENTS:

  • core: Upgrade to go 1.21.3. [GH-346]

v0.5.1

31 May 16:21
Compare
Choose a tag to compare

IMPROVEMENTS:

  • TFE: Change replicated support bundle generation command to avoid the necessity for an app ID variable to be provided. [GH-327]

v0.5.0

01 Feb 20:15
Compare
Choose a tag to compare

SECURITY FIXES:

  • security: bump goutils version to fix security issue" [GH-230]
  • security: update text package (GO-2022-1059), along with other dependencies [GH-250]
  • security: upgrade all dependencies, including the (vulnerable) crypto package" [GH-231]

BREAKING CHANGES:

  • Op: Change the response type from any to map[string]any. Results for every runner are now stored under a key. This change enables Ops to return other ops, keyed by ID, and will allow runners to reference the ops from previous runners' results. [GH-226]
  • output: lowercase standard output filenames: Results.json -> results.json and Manifest.json -> manifest.json [GH-261]

FEATURES:

  • Runners now take timeouts, and these may be set via configuration.
  • Configurable debug runners allow full customization without relying on Command or Shell runners.
  • Consul updates include cli command consul operator raft list-peers and the API endpoint /v1/agent/members.
  • Products now execute default runners in parallele, via a Do runner. Products with many file copies and network requests should see significant improvements.
  • Runners that are skipped or time out are now reported appropriately in the end-of-run report.
  • Sequencing runners (Do and Seq) are now available. Do is used to execute runners in parallel, while Seq runs them in guaranteed order.
  • Vault now includes additional runners for troubleshooting, from the following API endpoints: sys/audit, sys/version-history?list=true, sys/license/status, sys/replication-status.

IMPROVEMENTS:

  • agent: Enable context propagation from agent down through to products, as enablement for runner timeouts/cancellation support. [GH-263]
  • agent: Extract summary report display from agent, and move into the command package. [GH-241]
  • cli: A CLI library framework (mitchellh/cli) has been implemented in hcdiag, so that its user interface is now more consistent with other HashiCorp products. [GH-222]
  • cli: A local diagnostics collection can be triggered using the run subcommand. [GH-222]
  • cli: Add a message at the end of the run to more clearly indicate where the output bundle can be located on the user's system. [GH-241]
  • cli: The application version can now by found using the version subcommand in addition to the --version flag. This is more consistent with other HashiCorp products. [GH-222]
  • consul: add runners for 'consul operator raft list-peers' and /v1/agent/members [GH-248]
  • docs: Add example usage details for new Consul, Vault, and Nomad debug runners. [GH-293]
  • docs: Add project contribution guidelines to the repository, in CONTRIBUTING.md. [GH-214]
  • docs: Restructured readme into several doc files, improved new issue template, and added install and file-splitting docs. [GH-225]
  • docs: add custom config examples, faq content [GH-233]
  • go: Do not use CGO when building hcdiag binaries, so that C libraries won't be required on target machines. [GH-308]
  • improvement: Add "skip" status counts to the summary output at the end of a run" [GH-229]
  • manifest: manifest.json now includes environment metadata, including the command entered to run hcdiag, the username of the user who ran it, and the hostname where it was run. [GH-301]
  • op: Add op statuses "Canceled" and "Timeout" to support the addition of runner cancellation/timeout. [GH-259]
  • op: add op.WalkStatuses(), which recursively walks a tree of result ops to accumulate statuscounts. [GH-245]
  • redact: fix the redact.ID string so that it reads correctly in results.json [GH-266]
  • runner/host: EtcHosts can now timeout with a default of ten seconds. [GH-278]
  • runner: Add ConsulDebug runner to wrap Consul's debug command. [GH-271]
  • runner: Add NomadDebug runner to wrap Nomad's debug command. [GH-272]
  • runner: Add a TFE command to collect the list of active nodes [GH-247]
  • runner: Add more TFE commands for data collection [GH-227]
  • runner: Add new Runner implementation. Do takes a slice of Runners and executes all of them concurrently. [GH-226]
  • runner: Add new Runner implementation: DoSync takes a slice of Runners and executes them in linear order. If the status is not Success, subsequent Runners do not execute. DoSync enables dependent Runner sets. [GH-226]
  • runner: Migrate Filecopy-related functions into runner [GH-219]
  • runner: Shell now takes an optional Timeout value in Go duration form so that long-running executions can be gracefully stopped. [GH-277]
  • runner: add VaultDebug runner to wrap Vault's debug command. [GH-265]
  • runner: change "NewGetter" to "NewGet" for our HTTP GET runner. [GH-267]
  • runner: commander now checks to see if a command exists before attempting to run it [GH-228]
  • runners: Rename DoSync to Seq. [GH-299]
  • runners: The Command runner now takes an optional Timeout value, so that long-running executions can be gracefully stopped. [GH-270]
  • runners: The Copy runner now takes an optional Timeout value, so that long-running executions can be gracefully stopped. [GH-292]
  • runners: The Docker log runner now takes an optional Timeout value, so that long-running executions can be gracefully stopped. [GH-281]
  • runners: The HTTP / GET runner now takes an optional Timeout value, so that long-running executions can be gracefully stopped. [GH-274]
  • runners: The Journald log runner now takes an optional Timeout value, so that long-running executions can be gracefully stopped. [GH-284]
  • runners: The default runners within products now run concurrently instead of serially. [GH-255]
  • runners: The host FSTab runner now takes an optional Timeout value, so that long-running executions can be gracefully stopped. [GH-298]
  • runners: The host IPTables runner now takes an optional Timeout value, so that long-running executions can be gracefully stopped. [GH-288]
  • runners: The host disk runner now takes an optional Timeout value, so that long-running executions can be gracefully stopped. [GH-286]
  • runners: The host get runner now takes an optional Timeout value, so that long-running executions can be gracefully stopped. [GH-285]
  • runners: The host info runner now takes an optional Timeout value, so that long-running executions can be gracefully stopped. [GH-289]
  • runners: The host network runner now takes an optional Timeout value, so that long-running executions can be gracefully stopped. [GH-291]
  • runners: The host os runner now takes an optional Timeout value, so that long-running executions can be gracefully stopped. [GH-295]
  • runners: The host process runner now takes an optional Timeout value, so that long-running executions can be gracefully stopped. [GH-296]
  • runners: The host procfiles runner now takes an optional Timeout value, so that long-running executions can be gracefully stopped. [GH-287]
  • runners: The seq runner now takes an optional Timeout value, so that long-running executions can be gracefully stopped. [GH-299]
  • runners: Update Command runner instantiation to use configuration objects, in order to simplify future feature additions. [GH-269]
  • runners: Update HTTP runner instantiation to use configuration objects, in order to simplify future feature additions. [GH-273]
  • runners: rename runners to drop 'er' endings. [GH-257]
  • update dependencies [GH-256]
  • vault: Vault now includes additional runners for troubleshoot...
Read more

v0.5.0-rc2

31 Jan 15:18
Compare
Choose a tag to compare
v0.5.0-rc2 Pre-release
Pre-release

IMPROVEMENTS:

  • go: Do not use CGO when building hcdiag binaries, so that C libraries won't be required on target machines. [GH-308]

v0.5.0-rc1

27 Jan 21:11
Compare
Choose a tag to compare
v0.5.0-rc1 Pre-release
Pre-release

SECURITY FIXES:

  • security: bump goutils version to fix security issue" [GH-230]
  • security: update text package (GO-2022-1059), along with other dependencies [GH-250]
  • security: upgrade all dependencies, including the (vulnerable) crypto package" [GH-231]

BREAKING CHANGES:

  • Op: Change the response type from any to map[string]any. Results for every runner are now stored under a key. This change enables Ops to return other ops, keyed by ID, and will allow runners to reference the ops from previous runners' results. [GH-226]
  • output: lowercase standard output filenames: Results.json -> results.json and Manifest.json -> manifest.json [GH-261]

FEATURES:

  • Runners now take timeouts, and these may be set via configuration.
  • Configurable debug runners allow full customization without relying on Command or Shell runners.
  • Consul updates include cli command consul operator raft list-peers and the API endpoint /v1/agent/members.
  • Products now execute default runners in parallele, via a Do runner. Products with many file copies and network requests should see significant improvements.
  • Runners that are skipped or time out are now reported appropriately in the end-of-run report.
  • Sequencing runners (Do and Seq) are now available. Do is used to execute runners in parallel, while Seq runs them in guaranteed order.
  • Vault now includes additional runners for troubleshooting, from the following API endpoints: sys/audit, sys/version-history?list=true, sys/license/status, sys/replication-status.

IMPROVEMENTS:

  • agent: Enable context propagation from agent down through to products, as enablement for runner timeouts/cancellation support. [GH-263]
  • agent: Extract summary report display from agent, and move into the command package. [GH-241]
  • cli: A CLI library framework (mitchellh/cli) has been implemented in hcdiag, so that its user interface is now more consistent with other HashiCorp products. [GH-222]
  • cli: A local diagnostics collection can be triggered using the run subcommand. [GH-222]
  • cli: Add a message at the end of the run to more clearly indicate where the output bundle can be located on the user's system. [GH-241]
  • cli: The application version can now by found using the version subcommand in addition to the --version flag. This is more consistent with other HashiCorp products. [GH-222]
  • consul: add runners for 'consul operator raft list-peers' and /v1/agent/members [GH-248]
  • docs: Add example usage details for new Consul, Vault, and Nomad debug runners. [GH-293]
  • docs: Add project contribution guidelines to the repository, in CONTRIBUTING.md. [GH-214]
  • docs: Restructured readme into several doc files, improved new issue template, and added install and file-splitting docs. [GH-225]
  • docs: add custom config examples, faq content [GH-233]
  • improvement: Add "skip" status counts to the summary output at the end of a run" [GH-229]
  • manifest: manifest.json now includes environment metadata, including the command entered to run hcdiag, the username of the user who ran it, and the hostname where it was run. [GH-301]
  • op: Add op statuses "Canceled" and "Timeout" to support the addition of runner cancellation/timeout. [GH-259]
  • op: add op.WalkStatuses(), which recursively walks a tree of result ops to accumulate statuscounts. [GH-245]
  • redact: fix the redact.ID string so that it reads correctly in results.json [GH-266]
  • runner/host: EtcHosts can now timeout with a default of ten seconds. [GH-278]
  • runner: Add ConsulDebug runner to wrap Consul's debug command. [GH-271]
  • runner: Add NomadDebug runner to wrap Nomad's debug command. [GH-272]
  • runner: Add a TFE command to collect the list of active nodes [GH-247]
  • runner: Add more TFE commands for data collection [GH-227]
  • runner: Add new Runner implementation. Do takes a slice of Runners and executes all of them concurrently. [GH-226]
  • runner: Add new Runner implementation: DoSync takes a slice of Runners and executes them in linear order. If the status is not Success, subsequent Runners do not execute. DoSync enables dependent Runner sets. [GH-226]
  • runner: Migrate Filecopy-related functions into runner [GH-219]
  • runner: Shell now takes an optional Timeout value in Go duration form so that long-running executions can be gracefully stopped. [GH-277]
  • runner: add VaultDebug runner to wrap Vault's debug command. [GH-265]
  • runner: change "NewGetter" to "NewGet" for our HTTP GET runner. [GH-267]
  • runner: commander now checks to see if a command exists before attempting to run it [GH-228]
  • runners: Rename DoSync to Seq. [GH-299]
  • runners: The Command runner now takes an optional Timeout value, so that long-running executions can be gracefully stopped. [GH-270]
  • runners: The Copy runner now takes an optional Timeout value, so that long-running executions can be gracefully stopped. [GH-292]
  • runners: The Docker log runner now takes an optional Timeout value, so that long-running executions can be gracefully stopped. [GH-281]
  • runners: The HTTP / GET runner now takes an optional Timeout value, so that long-running executions can be gracefully stopped. [GH-274]
  • runners: The Journald log runner now takes an optional Timeout value, so that long-running executions can be gracefully stopped. [GH-284]
  • runners: The default runners within products now run concurrently instead of serially. [GH-255]
  • runners: The host FSTab runner now takes an optional Timeout value, so that long-running executions can be gracefully stopped. [GH-298]
  • runners: The host IPTables runner now takes an optional Timeout value, so that long-running executions can be gracefully stopped. [GH-288]
  • runners: The host disk runner now takes an optional Timeout value, so that long-running executions can be gracefully stopped. [GH-286]
  • runners: The host get runner now takes an optional Timeout value, so that long-running executions can be gracefully stopped. [GH-285]
  • runners: The host info runner now takes an optional Timeout value, so that long-running executions can be gracefully stopped. [GH-289]
  • runners: The host network runner now takes an optional Timeout value, so that long-running executions can be gracefully stopped. [GH-291]
  • runners: The host os runner now takes an optional Timeout value, so that long-running executions can be gracefully stopped. [GH-295]
  • runners: The host process runner now takes an optional Timeout value, so that long-running executions can be gracefully stopped. [GH-296]
  • runners: The host procfiles runner now takes an optional Timeout value, so that long-running executions can be gracefully stopped. [GH-287]
  • runners: The seq runner now takes an optional Timeout value, so that long-running executions can be gracefully stopped. [GH-299]
  • runners: Update Command runner instantiation to use configuration objects, in order to simplify future feature additions. [GH-269]
  • runners: Update HTTP runner instantiation to use configuration objects, in order to simplify future feature additions. [GH-273]
  • runners: rename runners to drop 'er' endings. [GH-257]
  • update dependencies [GH-256]
  • vault: Vault now includes additional runners for troubleshooting, from the following API endpoints: sys/audit, sys/version-history?list=true, sys/license/status, sys/replication-status. [[GH-302](https://github.com/hashicorp/hcdi...
Read more