{"id":18561986,"url":"https://github.com/timstaley/ansible-comet","last_synced_at":"2026-04-20T09:33:03.498Z","repository":{"id":34104248,"uuid":"37931812","full_name":"timstaley/ansible-comet","owner":"timstaley","description":"Ansible role for provisioning a Comet VOEvent broker","archived":false,"fork":false,"pushed_at":"2018-06-20T22:53:12.000Z","size":24,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-02-17T12:45:28.483Z","etag":null,"topics":["ansible","ansible-role","comet","voevent"],"latest_commit_sha":null,"homepage":"https://galaxy.ansible.com/detail#/role/5895","language":"Shell","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/timstaley.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2015-06-23T16:48:21.000Z","updated_at":"2018-06-20T22:53:13.000Z","dependencies_parsed_at":"2022-09-02T19:02:52.166Z","dependency_job_id":null,"html_url":"https://github.com/timstaley/ansible-comet","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/timstaley%2Fansible-comet","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/timstaley%2Fansible-comet/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/timstaley%2Fansible-comet/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/timstaley%2Fansible-comet/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/timstaley","download_url":"https://codeload.github.com/timstaley/ansible-comet/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":254388221,"owners_count":22063007,"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":["ansible","ansible-role","comet","voevent"],"created_at":"2024-11-06T22:08:29.465Z","updated_at":"2026-04-20T09:32:58.462Z","avatar_url":"https://github.com/timstaley.png","language":"Shell","funding_links":[],"categories":[],"sub_categories":[],"readme":"# timstaley.comet\n\nAn [Ansible][] [role][] that provides an installation of the \n[Comet][] [VOEvent][] broker.\n\n\n[Ansible]: http://www.ansible.com/configuration-management\n[role]: http://docs.ansible.com/ansible/playbooks_roles.html\n\n[VOEvent]: http://voevent.rtfd.org\n[Comet]: http://comet.readthedocs.org/\n\n## Outline\nThis role will install the bare minimum to get a\n[Comet](http://comet.readthedocs.org/) instance up and running, and won't\nactually do anything with the VOEvents they receive. The Comet-invocation script\ncan be supplied as a role-argument, so you can easily change that to set up\npassing of VOEvents to your own custom code.\n\n## Deployment details\nThe scripts create a pair of non-sudo users, defined by default as \n`cometdeploy` and `cometserve`.\nVOEvent handling code and virtualenvs are dropped into ``/home/cometdeploy``,\nthen run in read-only mode as the `cometserve` user (this provides extra\nsecurity in the worse-case scenario that Comet has some serious security exploit\nhole, e.g. to malformed packets). Logs etc are dumped into \n`/home/cometserve/working_dir`. \n\n\n## Usage\n### Setup\nNote that building the LXML package (which is a dependency) usually requires\nsignificantly more than 512MB of RAM. \nFor the test-VM setup we make use of a\nswapfile, via a ready-made role from\n[kamaln7](https://github.com/kamaln7/ansible-swapfile). \nYou'll need to install the role using the `ansible-galaxy` command line tool\nbefore running the tests.\n\n### Vagrant VM for testing\nTo pull up a working VM with Comet installed:\n\n    cd vagrant\n    ansible-galaxy install -r requirements.txt\n    vagrant up\n    \n\n    \n### Ansible on a pre-existing Ubuntu installation\nRunning against a pre-existing machine is a bit more complicated because there \nare more possible variables, and you may want to familiarize yourself with \nthe Ansible docs first. In short, you'll need to:\n\n - Configure your ansible \n  [inventory](http://docs.ansible.com/intro_inventory.html#inventory)\n  to reach the desired machines. Test with e.g. `ansible -m ping all`.\n - Modify [test-comet-role.yml](test/test-comet-role.yml) as required. \n  You probably don't want/need swapfile configuration, and you will need to set \n  the `hosts` to match your inventory.\n - Run your new [playbook](http://docs.ansible.com/ansible/playbooks.html) \n  file using the `ansible-playbook` command.\n\n\n    \n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftimstaley%2Fansible-comet","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ftimstaley%2Fansible-comet","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftimstaley%2Fansible-comet/lists"}