{"id":15508728,"url":"https://github.com/jhoblitt/puppet-udev","last_synced_at":"2025-12-11T21:40:10.845Z","repository":{"id":45414155,"uuid":"12959922","full_name":"jhoblitt/puppet-udev","owner":"jhoblitt","description":"Manages the udev package and device rules","archived":false,"fork":false,"pushed_at":"2022-10-28T23:00:04.000Z","size":88,"stargazers_count":4,"open_issues_count":7,"forks_count":29,"subscribers_count":5,"default_branch":"master","last_synced_at":"2025-04-19T06:21:32.025Z","etag":null,"topics":["linux","puppet","udev"],"latest_commit_sha":null,"homepage":null,"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/jhoblitt.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2013-09-19T21:31:40.000Z","updated_at":"2022-12-22T13:59:41.000Z","dependencies_parsed_at":"2023-01-20T06:04:23.647Z","dependency_job_id":null,"html_url":"https://github.com/jhoblitt/puppet-udev","commit_stats":null,"previous_names":[],"tags_count":9,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jhoblitt%2Fpuppet-udev","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jhoblitt%2Fpuppet-udev/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jhoblitt%2Fpuppet-udev/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jhoblitt%2Fpuppet-udev/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/jhoblitt","download_url":"https://codeload.github.com/jhoblitt/puppet-udev/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":250355903,"owners_count":21416992,"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":["linux","puppet","udev"],"created_at":"2024-10-02T09:39:56.529Z","updated_at":"2025-12-11T21:40:10.778Z","avatar_url":"https://github.com/jhoblitt.png","language":"Ruby","funding_links":[],"categories":[],"sub_categories":[],"readme":"Puppet udev Module\n==================\n\n[![Build Status](https://travis-ci.org/jhoblitt/puppet-udev.png)](https://travis-ci.org/jhoblitt/puppet-udev)\n\n#### Table of Contents\n\n1. [Overview](#overview)\n2. [Description](#description)\n3. [Usage](#usage)\n    * [Simple](#simple)\n    * [Managing `udev` syslog verbosity] (#managing-udev-syslog-verbosity)\n    * [Managing `udev` rules](#managing-udev-rules)\n    * [Manually triggering a `udev` device rules reload](#manually-triggering-a-udev-device-rules-reload)\n4. [Limitations](#limitations)\n    * [Tested Platforms](#tested-platforms)\n    * [Puppet Version Compatibility](#puppet-version-compatibility)\n5. [Versioning](#versioning)\n6. [Support](#support)\n7. [Contributing](#contributing)\n8. [See Also](#see-also)\n\n\nOverview\n--------\n\nManages the udev package and device rules\n\n\nDescription\n-----------\n\nThis module installs and manages the\n[`udev`](http://www.freedesktop.org/software/systemd/man/udev.html) package.\n\n\nUsage\n-----\n\n### Simple\n\nThis class does not need to be manually included in the manifest when using the\n`udev::rule` defined type.\n\n```puppet\ninclude udev\n```\n\n### Managing `udev` syslog verbosity\n\nControls the value of `udev_log` in `udev.conf` and change the runtime syslog\nverbosity of the daemon.\n\n```puppet\nclass { 'udev': udev_log =\u003e 'debug' }\n```\n\n### Managing `udev` rules\n\nNote that either the `content` or `source` parameter must be specified unless\n`ensure` is `absent`and that these parameters are mutually exclusive; you can\nnot specify both.\n\n```puppet\nudev::rule { '60-raw.rules':\n  ensure  =\u003e present,\n  content =\u003e 'ACTION==\"add\", KERNEL==\"sda\", RUN+=\"/bin/raw /dev/raw/raw1 %N\"',\n}\n```\n\nAs is commonly done with the `file` type, you can pass the output of the `template()` function to `content`.\n\n```puppet\nudev::rule { '99-foo.rules':\n  ensure  =\u003e present,\n  content =\u003e template('mymodule/foo.rules.erb'),\n}\n```\n\n```puppet\nudev::rule { '99-foo.rules':\n  ensure  =\u003e present,\n  source  =\u003e \"puppet:///modules/${module_name}/foo.rules\",\n}\n```\n\n```puppet\nudev::rule { '99-foo.rules':\n  ensure  =\u003e absent,\n}\n```\n\nRules may also be created as a parameter off of the `udev` class\n\n```puppet\nclass { 'udev':\n  rules =\u003e { '99-foo.rules':\n               ensure  =\u003e present,\n               content =\u003e template('mymodule/foo.rules.erb'), }\n}\n\n```\n\n### Manually triggering a `udev` device rules reload\n\n```puppet\nfile { '/etc/etc/udev/rules.d/99-myfrobnicator.rules':\n  ...\n  notify =\u003e Class['udev::udevadm::trigger'],\n}\n```\n\n\nLimitations\n-----------\n\nAt present, only support for `$::osfamily == 'RedHat'` has been implemented.\nAdding other Linux distributions should be trivial.\n\nThis module currently isn't using `puppetlabs-concat` for building up rule\nfiles as that approach presents difficulties in being able to remove an empty\nfile (one without any fragments).\n\n### Tested Platforms\n\n* el6.x\n* el5.x\n* el7.x\n* el8.x\n* el9.x\n* Debian/Ubuntu\n\n### Puppet Version Compatibility\n\nVersions | Puppet 2.7 | Puppet 3.x | Puppet 4.x | Puppet 5.x\n:--------|:----------:|:----------:|:----------:|:----------:\n**1.x**  | **yes**    | **yes**    | no         | no\n**2.x**  | no         | **yes**    | **yes**    | **yes**\n\n\nVersioning\n----------\n\nThis module is versioned according to the [Semantic Versioning\n2.0.0](http://semver.org/spec/v2.0.0.html) specification.\n\n\nSupport\n-------\n\nPlease log tickets and issues at\n[github](https://github.com/jhoblitt/puppet-udev/issues)\n\n\nContributing\n------------\n\n1. Fork it on github\n2. Make a local clone of your fork\n3. Create a topic branch.  Eg, `feature/mousetrap`\n4. Make/commit changes\n    * Commit messages should be in [imperative tense](http://git-scm.com/book/ch5-2.html)\n    * Check that linter warnings or errors are not introduced - `bundle exec rake lint`\n    * Check that `Rspec-puppet` unit tests are not broken and coverage is added for new\n      features - `bundle exec rake spec`\n    * Documentation of API/features is updated as appropriate in the README\n    * If present, `beaker` acceptance tests should be run and potentially\n      updated - `bundle exec rake beaker`\n5. When the feature is complete, rebase / squash the branch history as\n   necessary to remove \"fix typo\", \"oops\", \"whitespace\" and other trivial commits\n6. Push the topic branch to github\n7. Open a Pull Request (PR) from the *topic branch* onto parent repo's `master` branch\n\n\nSee Also\n--------\n\n* [`udev` manpage](http://www.freedesktop.org/software/systemd/man/udev.html)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjhoblitt%2Fpuppet-udev","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjhoblitt%2Fpuppet-udev","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjhoblitt%2Fpuppet-udev/lists"}