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

Facter 4 outputs mountpoints facts differently on Solaris

    XMLWordPrintable

Details

    • Bug
    • Status: Resolved
    • Normal
    • Resolution: Fixed
    • None
    • FACT 4.1.0
    • None
    • Night's Watch
    • 2
    • NW - 2021-03-31
    • Manual Test
    • Bug Fix
    • Fix differences in the mountpoints fact on Solaris by matching the behavior of Facter 3
    • 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

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

            Dates

              Created:
              Updated:
              Resolved:

              Zendesk Support