{"id":14965362,"url":"https://github.com/saltstack-formulas/snmp-formula","last_synced_at":"2025-04-09T12:05:01.936Z","repository":{"id":20693893,"uuid":"23977357","full_name":"saltstack-formulas/snmp-formula","owner":"saltstack-formulas","description":null,"archived":false,"fork":false,"pushed_at":"2025-01-06T23:10:54.000Z","size":174,"stargazers_count":17,"open_issues_count":8,"forks_count":49,"subscribers_count":37,"default_branch":"master","last_synced_at":"2025-04-02T09:09:43.166Z","etag":null,"topics":["saltstack","snmp"],"latest_commit_sha":null,"homepage":"http://docs.saltstack.com/en/latest/topics/development/conventions/formulas.html","language":"Ruby","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/saltstack-formulas.png","metadata":{"files":{"readme":"docs/README.rst","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":"CODEOWNERS","security":null,"support":null,"governance":null,"roadmap":null,"authors":"AUTHORS.md","dei":null,"publiccode":null,"codemeta":null}},"created_at":"2014-09-12T21:21:02.000Z","updated_at":"2022-08-26T05:14:39.000Z","dependencies_parsed_at":"2023-10-03T14:50:03.747Z","dependency_job_id":"f5231e84-f744-4b3f-8af7-b3a4f9d886c3","html_url":"https://github.com/saltstack-formulas/snmp-formula","commit_stats":{"total_commits":119,"total_committers":25,"mean_commits":4.76,"dds":0.6890756302521008,"last_synced_commit":"5b475e43e5355c8a96c7fcd5b28eed9d638c5c76"},"previous_names":[],"tags_count":3,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/saltstack-formulas%2Fsnmp-formula","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/saltstack-formulas%2Fsnmp-formula/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/saltstack-formulas%2Fsnmp-formula/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/saltstack-formulas%2Fsnmp-formula/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/saltstack-formulas","download_url":"https://codeload.github.com/saltstack-formulas/snmp-formula/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248036063,"owners_count":21037092,"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":["saltstack","snmp"],"created_at":"2024-09-24T13:34:38.546Z","updated_at":"2025-04-09T12:05:01.899Z","avatar_url":"https://github.com/saltstack-formulas.png","language":"Ruby","funding_links":[],"categories":[],"sub_categories":[],"readme":".. _readme:\n\nsnmp-formula\n============\n\n|img_travis| |img_sr| |img_pc|\n\n.. |img_travis| image:: https://travis-ci.com/saltstack-formulas/snmp-formula.svg?branch=master\n   :alt: Travis CI Build Status\n   :scale: 100%\n   :target: https://travis-ci.com/saltstack-formulas/snmp-formula\n.. |img_sr| image:: https://img.shields.io/badge/%20%20%F0%9F%93%A6%F0%9F%9A%80-semantic--release-e10079.svg\n   :alt: Semantic Release\n   :scale: 100%\n   :target: https://github.com/semantic-release/semantic-release\n.. |img_pc| image:: https://img.shields.io/badge/pre--commit-enabled-brightgreen?logo=pre-commit\u0026logoColor=white\n   :alt: pre-commit\n   :scale: 100%\n   :target: https://github.com/pre-commit/pre-commit\n\nThis formula installs the snmp daemon and utilities.\n\n.. contents:: **Table of Contents**\n   :depth: 1\n\nGeneral notes\n-------------\n\nSee the full `SaltStack Formulas installation and usage instructions\n\u003chttps://docs.saltstack.com/en/latest/topics/development/conventions/formulas.html\u003e`_.\n\nIf you are interested in writing or contributing to formulas, please pay attention to the `Writing Formula Section\n\u003chttps://docs.saltstack.com/en/latest/topics/development/conventions/formulas.html#writing-formulas\u003e`_.\n\nIf you want to use this formula, please pay attention to the ``FORMULA`` file and/or ``git tag``,\nwhich contains the currently released version. This formula is versioned according to `Semantic Versioning \u003chttp://semver.org/\u003e`_.\n\nSee `Formula Versioning Section \u003chttps://docs.saltstack.com/en/latest/topics/development/conventions/formulas.html#versioning\u003e`_ for more details.\n\nIf you need (non-default) configuration, please refer to:\n\n- `how to configure the formula with map.jinja \u003cmap.jinja.rst\u003e`_\n- the ``pillar.example`` file\n- the `Special notes`_ section\n\nContributing to this repo\n-------------------------\n\nCommit messages\n^^^^^^^^^^^^^^^\n\n**Commit message formatting is significant!!**\n\nPlease see `How to contribute \u003chttps://github.com/saltstack-formulas/.github/blob/master/CONTRIBUTING.rst\u003e`_ for more details.\n\npre-commit\n^^^^^^^^^^\n\n`pre-commit \u003chttps://pre-commit.com/\u003e`_ is configured for this formula, which you may optionally use to ease the steps involved in submitting your changes.\nFirst install  the ``pre-commit`` package manager using the appropriate `method \u003chttps://pre-commit.com/#installation\u003e`_, then run ``bin/install-hooks`` and\nnow ``pre-commit`` will run automatically on each ``git commit``. ::\n\n  $ bin/install-hooks\n  pre-commit installed at .git/hooks/pre-commit\n  pre-commit installed at .git/hooks/commit-msg\n\nSpecial notes\n-------------\n\nNone.\n\nAvailable states\n----------------\n\n.. contents::\n    :local:\n\n``snmp``\n^^^^^^^^\n\nInstalls the snmp daemon, starts, and enables the associated snmp service.\n\n``snmp.conf``\n^^^^^^^^^^^^^\n\nConfigures the snmp daemon.\n\n``snmp.trap``\n^^^^^^^^^^^^^\n\nStarts and enables the trap service.\n\n``snmp.conftrap``\n^^^^^^^^^^^^^^^^^\n\nConfigures the trap service.\n\n``snmp.options``\n^^^^^^^^^^^^^^^^\n\nSets snmp runtime options.\n\n\nLayered configuration\n---------------------\n\nSince SNMP can be integrated with many services, it may be handy to split configuration between several files,\neach belonging to different packages and teams.\nFor example, you may setup generic SNMP configuration in common pillar file, and it will include:\n\n.. code:: yaml\n\n    snmp:\n      conf:\n        settings:\n          logconnects: false\n          sysServices: 72\n\nWhereas team, that wants to monitor GPFS with SNMP on the same cluster will add this pillar file to their package:\n\n.. code:: yaml\n\n    snmp:\n      conf:\n        settings:\n          master: ['agentx']\n          AgentXSocket: tcp:localhost:705\n        rocommunities:\n          - gpfs\n        mibs:\n          GPFS: salt://gpfs/files/GPFS-mib.txt\n\nTo utilize this ability of layered configuration, you can modify snmp/conf.jinja file in following manner:\n\n.. code:: jinja\n\n    # Generic configuration:\n    {% set conf = salt['pillar.get']('snmp:conf', {}) %}\n\n    # Imagine you have team_names list which consist of packages provided\n    # by set of independent teams inside your company:\n    {% for team in team_names %}\n    {% set conf = salt['pillar.get'](\n        team + \":snmp\",\n        default=conf,\n        merge=True)\n    %}\n    {% endfor %}\n\n    # Afterall there might configuration specific to current deployment in separate pillar file:\n    {% set conf = salt['pillar.get'](\n        \"user:snmp\",\n        default=conf,\n        merge=True)\n    %}\n\nTesting\n-------\n\nLinux testing is done with ``kitchen-salt``.\n\nRequirements\n^^^^^^^^^^^^\n\n* Ruby\n* Docker\n\n.. code-block:: bash\n\n   $ gem install bundler\n   $ bundle install\n   $ bin/kitchen test [platform]\n\nWhere ``[platform]`` is the platform name defined in ``kitchen.yml``,\ne.g. ``debian-9-2019-2-py3``.\n\n``bin/kitchen converge``\n^^^^^^^^^^^^^^^^^^^^^^^^\n\nCreates the docker instance and runs the ``TEMPLATE`` main state, ready for testing.\n\n``bin/kitchen verify``\n^^^^^^^^^^^^^^^^^^^^^^\n\nRuns the ``inspec`` tests on the actual instance.\n\n``bin/kitchen destroy``\n^^^^^^^^^^^^^^^^^^^^^^^\n\nRemoves the docker instance.\n\n``bin/kitchen test``\n^^^^^^^^^^^^^^^^^^^^\n\nRuns all of the stages above in one go: i.e. ``destroy`` + ``converge`` + ``verify`` + ``destroy``.\n\n``bin/kitchen login``\n^^^^^^^^^^^^^^^^^^^^^\n\nGives you SSH access to the instance for manual testing.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsaltstack-formulas%2Fsnmp-formula","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsaltstack-formulas%2Fsnmp-formula","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsaltstack-formulas%2Fsnmp-formula/lists"}