Uploaded image for project: 'Facter'
  1. Facter
  2. FACT-2982

Facter 4 outputs mountpoints facts differently on Solaris

    XMLWordPrintable

    Details

    • Type: Bug
    • Status: Resolved
    • Priority: Normal
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: FACT 4.1.0
    • Component/s: None
    • Labels:
    • Template:
    • Team:
      Night's Watch
    • Story Points:
      2
    • Sprint:
      NW - 2021-03-31
    • Method Found:
      Manual Test
    • Release Notes:
      Bug Fix
    • Release Notes Summary:
      Fix differences in the mountpoints fact on Solaris by matching the behavior of Facter 3
    • QA Risk Assessment:
      Needs Assessment

      Description

      Running puppet facts diff on Solaris 11 gives the following output:

              "mountpoints./proc.available": {
                "new_value": null,
                "old_value": "0 bytes"
              },
              "mountpoints./proc.available_bytes": {
                "new_value": null,
                "old_value": 0
              },
              "mountpoints./proc.capacity": {
                "new_value": null,
                "old_value": "100%"
              },
              "mountpoints./proc.device": {
                "new_value": null,
                "old_value": "proc"
              },
              "mountpoints./proc.filesystem": {
                "new_value": null,
                "old_value": "proc"
              },
              "mountpoints./proc.options.0": {
                "new_value": null,
                "old_value": "dev=8600000"
              },
              "mountpoints./proc.size": {
                "new_value": null,
                "old_value": "0 bytes"
              },
              "mountpoints./proc.size_bytes": {
                "new_value": null,
                "old_value": 0
              },
              "mountpoints./proc.used": {
                "new_value": null,
                "old_value": "0 bytes"
              },
              "mountpoints./proc.used_bytes": {
                "new_value": null,
                "old_value": 0
              },
              "mountpoints./system/contract.available": {
                "new_value": null,
                "old_value": "0 bytes"
              },
              "mountpoints./system/contract.available_bytes": {
                "new_value": null,
                "old_value": 0
              },
              "mountpoints./system/contract.capacity": {
                "new_value": null,
                "old_value": "100%"
              },
              "mountpoints./system/contract.device": {
                "new_value": null,
                "old_value": "ctfs"
              },
              "mountpoints./system/contract.filesystem": {
                "new_value": null,
                "old_value": "ctfs"
              },
              "mountpoints./system/contract.options.0": {
                "new_value": null,
                "old_value": "dev=8680001"
              },
              "mountpoints./system/contract.size": {
                "new_value": null,
                "old_value": "0 bytes"
              },
              "mountpoints./system/contract.size_bytes": {
                "new_value": null,
                "old_value": 0
              },
              "mountpoints./system/contract.used": {
                "new_value": null,
                "old_value": "0 bytes"
              },
              "mountpoints./system/contract.used_bytes": {
                "new_value": null,
                "old_value": 0
              },
              "mountpoints./system/object.available": {
                "new_value": null,
                "old_value": "0 bytes"
              },
              "mountpoints./system/object.available_bytes": {
                "new_value": null,
                "old_value": 0
              },
              "mountpoints./system/object.capacity": {
                "new_value": null,
                "old_value": "100%"
              },
              "mountpoints./system/object.device": {
                "new_value": null,
                "old_value": "objfs"
              },
              "mountpoints./system/object.filesystem": {
                "new_value": null,
                "old_value": "objfs"
              },
              "mountpoints./system/object.options.0": {
                "new_value": null,
                "old_value": "dev=8740001"
              },
              "mountpoints./system/object.size": {
                "new_value": null,
                "old_value": "0 bytes"
              },
              "mountpoints./system/object.size_bytes": {
                "new_value": null,
                "old_value": 0
              },
              "mountpoints./system/object.used": {
                "new_value": null,
                "old_value": "0 bytes"
              },
              "mountpoints./system/object.used_bytes": {
                "new_value": null,
                "old_value": 0
              },
      

      More info: https://docs.google.com/document/d/1QlX_mv17fZ4eVZa9zHxvTRVJ5sq88aj3GjUC6lVFiz0/edit#heading=h.gnnvlmulav1v

      Some mountpoints are not reported at all by Facter 4. Facter 3 parses /etc/mnttab for mountpoints, while Facter 4 uses the sys-filesystem gem.

      Relevant Facter 3 code: https://github.com/puppetlabs/facter/blob/3.x/lib/src/facts/solaris/filesystem_resolver.cc#L34
      Relevant Facter 4 code: https://github.com/puppetlabs/facter/blob/main/lib/facter/resolvers/solaris/mountpoints.rb#L32

        Attachments

          Activity

            People

            Assignee:
            gabriel.nagy Gabriel Nagy
            Reporter:
            luchian.nemes Luchian Nemes
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Dates

              Created:
              Updated:
              Resolved:

                Zendesk Support