Comments (3)
So this is due to the structured facts. Currently they're stored as a flat table with just fact name and fact data fields. The question is, do we try to replicate this (hard, but not impossible), or do we flatten the structure? There is --show-legacy
which will get all the 'old' facts out, but this is a sticking plaster so we might as well fix it now.
With flattening, I was thinking something like:
$ sudo /opt/puppetlabs/bin/facter --puppet --yaml system_uptime
system_uptime:
days: 0
hours: 0
seconds: 1242
uptime: 0:20 hours
Would be stored as:
system_uptime->days = 0
system_uptime->hours = 0
system_uptime->seconds = 1242
system_uptime->uptime = 0:20 hours
That delimiter was chosen arbitrarily, but it needs to be something odd enough to not likely be in a fact name. Flattening would make it easier to be backwards compatible with 3.8, since we can use the same table and just handle this in python. If we do something else, we'd need to re-wire the tables (which also makes all the existing plugins that use that info out of date).
from sal.
It was odd to learn I couldn't classify based on structured facts in the PE console, so all I have in the way of custom facts right now are flat, anyway. Especially with the rise/integration of osquery I don't think it's worth reinventing the wheel over, table-wise.
As for a delimiter, how about the hash rocket? =>
from sal.
This is fixed in the client side scripts
from sal.
Related Issues (20)
- Clean out profiles
- Cant search on any item other than Machine in Advanced Search HOT 13
- manage.py migrate psycopg2.errors.SyntaxError HOT 7
- Choices are not constraints... for Sal developers HOT 1
- Puppet Status widget doesn't work HOT 4
- Move CI to Github actions HOT 1
- search_maintenance not working from cron as root HOT 3
- SSL Certificate on salopensource.com HOT 1
- The legacy CoreAPI docs have finally stopped working
- ERROR [django.request:228] Internal Server Error: /checkin/ HOT 5
- nginx gives 504 gateway timeout HOT 5
- Xprotect default plugin reports "Not supported" for macOS 11.3+ clients
- Sal not reporting correctly in GUI, appears to be a DB issue, but its not HOT 10
- Timezone stuck on BST HOT 5
- New urllib3 dependency conflicts with requests version HOT 2
- Running a rootless container HOT 1
- Update jQuery version to fix multiple XSS HOT 1
- RO Users have no Application Inventory Search menu item at the top level HOT 2
- DiskSpace plugin - 8% or 9% become 80% or 90% in dashboard HOT 6
- Docker containers for arm platforms HOT 4
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from sal.