{"id":14965384,"url":"https://github.com/gediminasz/slskit","last_synced_at":"2025-10-25T11:31:44.768Z","repository":{"id":36938194,"uuid":"201631760","full_name":"gediminasz/slskit","owner":"gediminasz","description":"Tools for checking Salt state validity","archived":false,"fork":false,"pushed_at":"2024-09-25T20:24:03.000Z","size":771,"stargazers_count":6,"open_issues_count":4,"forks_count":0,"subscribers_count":3,"default_branch":"master","last_synced_at":"2024-10-30T01:03:12.120Z","etag":null,"topics":["salt","saltstack"],"latest_commit_sha":null,"homepage":"https://pypi.org/project/slskit/","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/gediminasz.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2019-08-10T13:09:19.000Z","updated_at":"2024-09-25T19:56:00.000Z","dependencies_parsed_at":"2024-11-13T13:08:23.515Z","dependency_job_id":"3ffc491e-8551-4283-9936-669b84272227","html_url":"https://github.com/gediminasz/slskit","commit_stats":{"total_commits":294,"total_committers":2,"mean_commits":147.0,"dds":"0.16666666666666663","last_synced_commit":"23c42d1100e530fbfb1f9687643b8590329a8adf"},"previous_names":[],"tags_count":15,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gediminasz%2Fslskit","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gediminasz%2Fslskit/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gediminasz%2Fslskit/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gediminasz%2Fslskit/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/gediminasz","download_url":"https://codeload.github.com/gediminasz/slskit/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":238128566,"owners_count":19421054,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["salt","saltstack"],"created_at":"2024-09-24T13:34:40.319Z","updated_at":"2025-10-25T11:31:44.762Z","avatar_url":"https://github.com/gediminasz.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# slskit\n\n```\nUsage: slskit [OPTIONS] COMMAND [ARGS]...\n\nOptions:\n  --version                       Show the version and exit.\n  -c, --config TEXT               path to slskit configuration file (default:\n                                  slskit.yaml or slskit.yml)\n  -l, --log-level [CRITICAL|FATAL|ERROR|WARN|WARNING|INFO|DEBUG|NOTSET|VERBOSE|QUIET|PROFILE|TRACE|GARBAGE]\n  --salt-output TEXT              Alternative Salt outputter, e.g. nested,\n                                  json, yaml, etc.\n  --help                          Show this message and exit.\n\nCommands:\n  highstate  render highstate for specified minions\n  pillars    render pillar items for specified minions\n  refresh    invoke saltutil.sync_all runner\n  sls        render a given sls for specified minions\n  template   render a file template for specified minions\n```\n\n- Supported Python versions: 3.9.2, 3.10, 3.11, 3.12.5\n- Supported Salt versions: 3006, 3007\n\nKnown issues:\n\n* Salt 3006 on Python 3.12 is broken\n* Python 3.9.0 and 3.9.1 are not supported by cryptography, see https://github.com/pyca/cryptography/pull/12045\n* Python 3.12.6 and up is broken, see https://github.com/saltstack/salt/issues/66898\n* YAML output is broken, see https://github.com/saltstack/salt/issues/66594\n\n---\n\n## Workaround for OpenSSL issues on macOS\n\nIf `slskit` is failing with an error like this: `OSError: Cannot locate OpenSSL libcrypto`, try setting the following environment variable:\n\n```sh\nexport HOMEBREW_PREFIX=/usr/local\n```\n\nBelow is an old hackaround:\n\nIf `slskit` fails with `zsh: abort` or `Abort trap: 6`, inspect the error by running the command with `PYTHONDEVMODE=1`. If the issue is with `_load_libcrypto` call in `rsax931.py`, edit `salt/utils/rsax931.py` line 38:\n\n```diff\n-lib = find_library('crypto')\n+lib = \"/usr/local/opt/openssl@1.1/lib/libcrypto.dylib\"\n```\n\nMore info:\n\n- https://github.com/saltstack/salt/issues/55084\n- https://github.com/Homebrew/homebrew-core/pull/45895/files#diff-5bdebf3b9146d50b15f9a0dc7e7def27R131-R133\n\n## Workaround for exception raised when processing __virtual__ function\n\nWhen seeing errors like these:\n\n```\nERROR:salt.loader:Exception raised when processing __virtual__ function for salt.loaded.int.module.freebsdkmod. Module will not be loaded: 'kernel'\nWARNING:salt.loader:salt.loaded.int.module.freebsdkmod.__virtual__() is wrongly returning `None`. It should either return `True`, `False` or a new name. If you're the developer of the module 'freebsdkmod', please fix this.\n```\n\nYou may need to add a corresponding grain to `slskit.yaml` file, e.g.:\n\n```yaml\n# slskit.yaml\n\nslskit:\n  roster:\n    foo:\n      grains:\n        kernel: Linux\n```\n\nYou can find values for grains by inspecting `grains.items` on your real minions.\n\n## How to keep your grains DRY\n\nUse `default_grains` option to avoid duplicating the same grains over all minions:\n\n```yaml\n# slskit.yaml\n\nslskit:\n  roster:\n    foo:\n    bar:\n    baz:\n  default_grains:\n    os: Ubuntu\n```\n\nFor more advanced cases use YAML anchors:\n\n```yaml\n# slskit.yaml\n\n_grains:\n  ubuntu: \u0026ubuntu\n    os: Ubuntu\n  fedora: \u0026fedora\n    os: Fedora\n\nslskit:\n  roster:\n    u1:\n      grains:\n        \u003c\u003c: *ubuntu\n    u2:\n      grains:\n        \u003c\u003c: *ubuntu\n    f1:\n      grains:\n        \u003c\u003c: *fedora\n    f2:\n      grains:\n        \u003c\u003c: *fedora\n```\n\n## How to reduce output verbosity\n\nUse Salt's [`output` configuration option](https://docs.saltstack.com/en/latest/ref/configuration/master.html#output), e.g.:\n\n```yaml\n# slskit.yaml\n\nsalt:\n  output: yaml\n\nslskit:\n  ...\n```\n\n---\n\n## External links\n\n- https://docs.saltproject.io/salt/install-guide/en/latest/topics/salt-version-support-lifecycle.html\n- https://docs.saltproject.io/salt/install-guide/en/latest/topics/salt-python-version-support.html\n- https://devguide.python.org/versions/#supported-versions\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgediminasz%2Fslskit","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fgediminasz%2Fslskit","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgediminasz%2Fslskit/lists"}