{"id":13586920,"url":"https://github.com/spajus/hubot-control","last_synced_at":"2025-04-06T07:15:49.592Z","repository":{"id":8754931,"uuid":"10435453","full_name":"spajus/hubot-control","owner":"spajus","description":"Control Hubot via web interface","archived":false,"fork":false,"pushed_at":"2023-03-16T19:12:45.000Z","size":559,"stargazers_count":326,"open_issues_count":10,"forks_count":47,"subscribers_count":15,"default_branch":"master","last_synced_at":"2025-03-30T06:09:17.078Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","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/spajus.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,"governance":null,"roadmap":null,"authors":null}},"created_at":"2013-06-02T10:31:08.000Z","updated_at":"2024-09-19T04:03:02.000Z","dependencies_parsed_at":"2024-01-11T23:33:08.851Z","dependency_job_id":null,"html_url":"https://github.com/spajus/hubot-control","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/spajus%2Fhubot-control","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/spajus%2Fhubot-control/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/spajus%2Fhubot-control/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/spajus%2Fhubot-control/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/spajus","download_url":"https://codeload.github.com/spajus/hubot-control/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247445682,"owners_count":20939961,"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":[],"created_at":"2024-08-01T15:05:54.216Z","updated_at":"2025-04-06T07:15:49.576Z","avatar_url":"https://github.com/spajus.png","language":"Ruby","funding_links":[],"categories":["Ruby","Miscellaneous"],"sub_categories":[],"readme":"Hubot Control\n=============\n\nControl self-hosted Hubot like a boss!\n\n[![Build Status](https://travis-ci.org/spajus/hubot-control.png?branch=master)](https://travis-ci.org/spajus/hubot-control)\n[![Coverage Status](https://coveralls.io/repos/spajus/hubot-control/badge.png?branch=master)](https://coveralls.io/r/spajus/hubot-control?branch=master)\n[![Code Climate](https://codeclimate.com/github/spajus/hubot-control.png?branch=master)](https://codeclimate.com/github/spajus/hubot-control)\n[![Dependency Status](https://gemnasium.com/spajus/hubot-control.png?branch=master)](https://gemnasium.com/spajus/hubot-control)\n\n## Help Wanted!\n\nThis project is not being actively maintained. If you are interested and willing to help with maintenance, please respond here: https://github.com/spajus/hubot-control/issues/16\n\n## Installation\n\n- Run DB migrations with `rake db:migrate`\n- Change `config.action_mailer.default_url_options` in `config/environments/*` (optional)\n- Run it like a regular Rails 4 app. Try it out with `rails s`, run daemonized with `unicorn_rails -p \u003cport\u003e -D`.\n- Owner of rails app process must have write permissions to `#{Rails.root}/hubots` and `#{Rails.root}/scripts`, or just `#{Rails.root}`\n- Use `admin@hubot-control.org` / `hubot` to log in\n\n## Tutorials\n\n[How to get Hubot on HipChat using Hubot Control on CentOS Linux](http://varaneckas.com/blog/hubot-hipchat-centos/)\n\n## Book: Automation and Monitoring with Hubot\n\n[Automation and Monitoring with Hubot](https://leanpub.com/automation-and-monitoring-with-hubot) is available at Leanpub.\n\n## Running on Heroku\n\n```\ngit clone git@github.com:spajus/hubot-control.git \u0026\u0026 cd hubot-control\nheroku create --buildpack https://github.com/rtgibbons/heroku-buildpack-ruby-nodejs.git\ngit push heroku master\nheroku config:add PATH=/app/node_modules/.bin:/app/bin:/app/vendor/bundle/ruby/2.0.0/bin:/usr/local/bin:/usr/bin:/bin\nheroku run rake db:migrate\nheroku open\n```\n\nHeroku support is still experimental, but you can find some [helpful tips here](https://github.com/spajus/hubot-control/pull/2).\n\nHeroku demo: http://hubot-control-demo.herokuapp.com/ (usually broken due to periodic file system wipeouts, see [issues/4](https://github.com/spajus/hubot-control/issues/4))\n\n## Running with Docker\n\nPrerequisites:\n\n* [Docker](https://docker.com)\n\nStart a Postgres instance\n\n    docker run --name hubot-control-db -d -e DB_USER=\"docker\" -e DB=\"hubot_control\" -e PASS=\"docker\" hackedu/postgresql\n\nCreate a data-only container to store Hubots\n\n    docker run --name hubot-control-data -v /usr/src/hubot-control/hubots busybox\n\nRun database migrations\n\n    docker run --rm --link hubot-control-db:db -e RAILS_DB_USERNAME=\"docker\" -e RAILS_DB_PASSWORD=\"docker\" hackedu/hubot-control bundle exec rake db:migrate RAILS_ENV=production\n\nStart Hubot Control\n\n    docker run --name hubot-control -d --link hubot-control-db:db --volumes-from hubot-control-data -e RAILS_DB_USERNAME=\"docker\" -e RAILS_DB_PASSWORD=\"docker\" -p 3000:3000 hackedu/hubot-control\n\nHubot Control will now be running on port 3000 of your system. Whenever you\ncreate a hubot , you'll want to restart Hubot Control and publish their HTTP\nports (`-p` flag).\n\nThere's a few things to notice:\n\n* The Postgres database is in a separate container than Hubot Control. When\n  Hubot Control is stopped or removed, the database will be persisted in the\n  Postgres container. You may want to map the Postgres data to a volume on your\n  host. The Postgres image's documentation has more details on this\n  (https://registry.hub.docker.com/u/paintedfox/postgresql/).\n* The files for created hubots are stored in the `hubot-control-data`\n  container. Do not delete this container unless you want to delete all of your\n  hubots. \n* All of the application data for Hubot Control is stored in separate\n  containers, so we don't lose any data if we delete the `hubot-control`\n  container.\n\n## Usage\n\n1. Check status page and install missing dependencies for Hubot\n2. Add hubot instance\n3. Configure the variables, add scripts\n4. Click on Hubot name in the sidebar to control it\n5. Develop scripts with built-in editor\n\n## Features\n\n### Check server compatibility\n![Hubot Check Prerequisites](https://dl.dropboxusercontent.com/u/176100/hubot-control/screens/status.png)\n\n### Create Hubot instances from web interface\n![Create Hubot](https://dl.dropboxusercontent.com/u/176100/hubot-control/screens/build.png)\n\n### Test your Hubot via interactive web shell\n![Test Hubot](https://dl.dropboxusercontent.com/u/176100/hubot-control/screens/shell.png)\n\n### Control your Hubot\n![Hubot Control Panel](https://dl.dropboxusercontent.com/u/176100/hubot-control/screens/hubot-status.png)\n\n### Edit pre-startup script\n![Hubot before start](https://dl.dropboxusercontent.com/u/176100/hubot-control/screens/before-start.png)\n\n### Manage and develop custom Hubot scripts\n![Hubot Scripts](https://dl.dropboxusercontent.com/u/176100/hubot-control/screens/scripts.png)\n![Edit Hubot Scripts](https://dl.dropboxusercontent.com/u/176100/hubot-control/screens/edit-script.png)\n![Include External Scripts](https://dl.dropboxusercontent.com/u/176100/hubot-control/screens/external-scripts.png)\n\n### Edit variables and configuration files\n![Hubot Configuration](https://dl.dropboxusercontent.com/u/176100/hubot-control/screens/variables.png)\n\n### Tail logs to troubleshoot problems\n![Hubot Log](https://dl.dropboxusercontent.com/u/176100/hubot-control/screens/log.png)\n\n## Contributing\n\n1. Fork it\n2. Create your feature branch (`git checkout -b my-new-feature`)\n3. Commit your changes (`git commit -am 'Add some feature'`)\n4. Push to the branch (`git push origin my-new-feature`)\n5. Create new Pull Request\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fspajus%2Fhubot-control","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fspajus%2Fhubot-control","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fspajus%2Fhubot-control/lists"}