Skip to content

v0.4.0

Compare
Choose a tag to compare

BREAKING CHANGES:

  • cli: The default CLI behavior when no product flags are passed in is now to auto-detect installed products and check each one.
    Previously, the behavior was to run only host diagnostics. If you want to still get just host diagnostics, use the flag
    autodetect=false. [GH-152]
  • cli: The previously-deprecated command line flag -all has now been removed. Similar behavior has been implemented with
    product auto-detection, in which all installed HashiCorp products are automatically checked by simply executing hcdiag
    with no flags. [GH-153]
  • runner: The "runner" object in Results.json has been renamed to "params". It is now omitted if the Runner doesn't take params. [GH-150]

IMPROVEMENTS:

  • HCL: Add docker-log and journald-log runners to HCL. [GH-166]
  • README: Replaced references to Seekers with Runners. [GH-154]
  • README: Various improvements to configuration docs. [GH-154]
  • agent: Add agent redactions. [GH-183]
  • agent: Reduce duplication via a type union customRunners and type-specific HCLConfig to Runner map functions. [GH-151]
  • agent: Refactor agent.Setup() by migrating HCL runner setup into each product's New function. [GH-161]
  • core: Upgrade to go 1.18.3. [GH-151]
  • docs: Begin including changelog details into the repo for each pull request. [GH-145]
  • hcl: Add JSON tagging to every hcl field, omitting empty blocks and collections. [GH-204]
  • hcl: Add custom (HCL) agent redactions. [GH-183]
  • hcl: Add redact blocks to product, host, and runners in HCL. [GH-169]
  • hcl: Extract HCL package to prepare for additional HCL configuration options. [GH-159]
  • hcl: Migrate customRunners creation to the HCL package to enable adding more runners to HCL. [GH-159]
  • log/journald: check if journald present on system; otherwise skip [GH-167]
  • network: Do not collect Network Interface hardware addresses. [GH-207]
  • op: Add "skip" status for things that were intentionally skipped. [GH-167]
  • op: Rename seeker to Op. [GH-147]
  • op: Store Runners on Products and change Runners interface to return an Op. [GH-149]
  • product: Add product redactions and pass redactions into runners. [GH-183]
  • redact: Add ApplyMany function. [GH-173]
  • redact: Add redact package and Redact type that allows a regex to be applied to a reader and written to a writer. [GH-171]
  • redact: Add redact.JSON() [GH-177]
  • redact: Add redact.String() and redact.Bytes(). [GH-174]
  • redact: Add redaction flow. [GH-183]
  • redact: Add unit tests to document regular expression capture groups being used in redaction replacement strings. [GH-197]
  • redact: Implement default Terraform Enterprise redactions. [GH-207]
  • redact: Improve testing around redaction of strings and byte slices. [GH-198]
  • redact: Redact email addresses by default. [GH-207]
  • redact: Remove Apply function. [GH-195]
  • runner/host: Enable redaction on host.Disk, host.Info, host.Network, and host.Process runners. [GH-192]
  • runner: Add TFE commands for data collection [GH-186]
  • runner: DockerNotFoundError should result in skipped runner, not error. [GH-201]
  • runner: Redact JSON and string results in Command.Run() [GH-177]
  • runner: Redact results in shell and http runners. [GH-174]
  • runner: The Processes runner now gives more detailed process information: process name, PID, and PPID. [GH-160]
  • runner: The Seeker type has been reworked into the immutable Op struct, and Runners return an Op rather than being stored on a seeker. This should make contributing Runners significantly easier, and simplifies reporting. [GH-150]
  • runner: add redactions pass-through for higher-order host runners. [GH-189]
  • security: bump golang.org/x/sys due to GO-2022-0493 [GH-210]
  • stop using the deprecated io/ioutil package [GH-190]
  • upgrade to 22.04, install gcc and use go 1.18 in vagrant VM [GH-168]
  • util: copyfiles now accepts redactions and scans files line by line to apply many redactions at once. [GH-180]
  • util: migrate copyfiles_test.go to test tables. [GH-185]

BUG FIXES:

  • cli: Error and exit when the first arg to hcdiag is in subcommand form, rather than silently accepting invalid input. [GH-155]
  • hcl: Do not serialize hcl.Redact.Match to json. Ensures matchers are not leaked in Manifest.json. [GH-203]
  • hcl: Ensure redact "literal", which is not implemented yet, doesn't pass HCL validation. [GH-204]
  • runner: Fixed a redaction and reporting issue where HTTPer incorrectly flattened and redacted JSON responses as strings. [GH-215]