{"id":15014021,"url":"https://github.com/frozenfoxx/puppet-hubot","last_synced_at":"2025-10-06T08:31:04.634Z","repository":{"id":57664194,"uuid":"59322772","full_name":"frozenfoxx/puppet-hubot","owner":"frozenfoxx","description":"Puppet module for managing hubot","archived":false,"fork":true,"pushed_at":"2018-03-10T01:23:53.000Z","size":71,"stargazers_count":1,"open_issues_count":1,"forks_count":6,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-01-17T03:10:10.816Z","etag":null,"topics":["hubot","puppet","puppet-module"],"latest_commit_sha":null,"homepage":null,"language":"Puppet","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":"evenup/evenup-hubot","license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/frozenfoxx.png","metadata":{"files":{"readme":"README.md","changelog":null,"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":"2016-05-20T19:59:25.000Z","updated_at":"2017-06-29T22:23:13.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/frozenfoxx/puppet-hubot","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/frozenfoxx%2Fpuppet-hubot","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/frozenfoxx%2Fpuppet-hubot/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/frozenfoxx%2Fpuppet-hubot/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/frozenfoxx%2Fpuppet-hubot/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/frozenfoxx","download_url":"https://codeload.github.com/frozenfoxx/puppet-hubot/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":235515424,"owners_count":19002481,"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":["hubot","puppet","puppet-module"],"created_at":"2024-09-24T19:45:04.197Z","updated_at":"2025-10-06T08:30:59.196Z","avatar_url":"https://github.com/frozenfoxx.png","language":"Puppet","funding_links":[],"categories":[],"sub_categories":[],"readme":"What is it?\n===========\n\nA puppet module that installs and manages a [hubot](http://hubot.github.com) bot.\n\nThere are two methods of configuring hubot, setting the available parameters (useful for trying it out/simple configs) and storing your config and scripts in git.  Instructions below as well on migrating from parameter config to repo configuration.\n\nConfiguring via Puppet\n----------------------\n\nThis method is great for giving hubot a try to figure out what it's all about and maintaining a simple configuration.  If you want to be able to run hubot with only the shell adapter, no configuration is required other than including this class and then running /opt/hubot/hubot/bin/hubot (that's a lot of hubots) and interact with him on the shell.\n\nTo move hubot to something a bit more useful you will want to configure an adapter for it to connect to some form of chat.  This will require setting the `adapter` parameter and will likely require you to also set some environment variables via the `env_export` parameter.  You may also need to add some npm dependencies for your adapter via the `dependencies` parameter.\n\nAt this point you should be on your way!\n\nCustom scripts can be installed via the hubot::script definition as well.\n\nSimple config with the hipchat adapter:\n\n    class { 'hubot':\n      adapter       =\u003e 'hipchat',\n      build_deps    =\u003e [ 'libxml2-devel', 'gcc-c++' ],\n      env_export    =\u003e { 'HUBOT_LOG_LEVEL'        =\u003e 'DEBUG',\n                         'HUBOT_HIPCHAT_ROOMS'    =\u003e 'xmpp_room1@conf.hipchat.com,xmpp_room2@conf.hipchat.com',\n                         'HUBOT_HIPCHAT_JID'      =\u003e 'hubot_jid@chat.hipchat.com',\n                         'HUBOT_HIPCHAT_PASSWORD' =\u003e 'hubot_pass'\n                        },\n      dependencies  =\u003e { \"hubot\" =\u003e \"\u003e= 2.6.0 \u003c 3.0.0\", \"hubot-scripts\" =\u003e \"\u003e= 2.5.0 \u003c 3.0.0\", \"hubot-hipchat\" =\u003e \"~2.5.1-5\" },\n    }\n\n\nConfiguring via git\n-------------------\n\nThis method is more customizable since you can configure hubot by editing the actual configuration files.  When using this method a few additional dependencies are required, a class git which needs to ensure the git binary is available and puppetlabs/vcsrepo.  Both dependencies (as tested) are documented in the Modulefile, but commented out as they are optional.  The git dependency should be very flexible, the vcsrepo dependency likely is harder to replace with another module.\n\nTo configure hubot from a git repo, simply set the `git_source` parameter.  If your git repo is accessible via SSH you may also need to set the `ssh_privateykey` or `ssh_privatekey_file` to configure the id_rsa file for the hubot user.  By default the `auto_accept_host_key` parameter is set to true which will disable `StrictHostKeyChecking` for the hubot user - this may not be ideal in your environment.  If disabled and syncing via SSH, you will need to ensure the git host key is trusted by some other means.\n\nGetting up and running:\n\n    class { 'hubot':\n      git_source          =\u003e 'git@git.mycompany.com:hubot',\n      ssh_privatekey_file =\u003e 'puppet:///data/ssh/hubot_id_rsa',\n     }\n\nBuild dependencies\n------------------\n\nFrequently NPM modules require additional packages in order to compile the module.  In this case you can include any additional dependencies with the `build_deps` parameter.\n\n\nMigrating from parameters to git\n--------------------------------\n\nThis assumes basic knowledge of git and an understanding of why you are doing this.  All paths are based on the module defaults.\n\n    puppet agent --disable\n    cd /opt/hubot/hubot\n    git init\n    git add .\n    git remote add origin \u003cgit_source\u003e\n    git push origin master\n    --- Update your puppet config to specify this new git_source and any SSH parameters needed\n    puppet agent --enable\n\nPuppet will now keep hubot up to date based on this git repo and restart the service whenever it is updated.\n\n\nKnown Issues:\n-------------\nOnly tested on Ubuntu 14.04 but should be flexible.  Feedback/PRs appreciated!\n\n\nLicense:\n--------\n\nReleased under the Apache 2.0 licence\n\n\nContribute:\n-----------\n* Fork it\n* Create a topic branch\n* Improve/fix (with spec tests)\n* Push new topic branch\n* Submit a PR\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffrozenfoxx%2Fpuppet-hubot","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ffrozenfoxx%2Fpuppet-hubot","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffrozenfoxx%2Fpuppet-hubot/lists"}