{"id":27143663,"url":"https://github.com/alunduil/singularity","last_synced_at":"2025-10-14T16:05:21.842Z","repository":{"id":4102263,"uuid":"5211203","full_name":"alunduil/singularity","owner":"alunduil","description":"Smaller and more configurable guest agent for Openstack","archived":false,"fork":false,"pushed_at":"2014-06-22T17:02:52.000Z","size":505,"stargazers_count":5,"open_issues_count":0,"forks_count":3,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-10-14T16:03:58.713Z","etag":null,"topics":["deprecated","openstack","openstack-guest-agent","python"],"latest_commit_sha":null,"homepage":null,"language":"Python","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/alunduil.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":"2012-07-28T01:44:43.000Z","updated_at":"2017-12-10T15:54:41.000Z","dependencies_parsed_at":"2022-09-08T07:10:18.310Z","dependency_job_id":null,"html_url":"https://github.com/alunduil/singularity","commit_stats":null,"previous_names":[],"tags_count":3,"template":false,"template_full_name":null,"purl":"pkg:github/alunduil/singularity","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alunduil%2Fsingularity","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alunduil%2Fsingularity/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alunduil%2Fsingularity/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alunduil%2Fsingularity/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/alunduil","download_url":"https://codeload.github.com/alunduil/singularity/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alunduil%2Fsingularity/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":279019554,"owners_count":26086750,"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","status":"online","status_checked_at":"2025-10-14T02:00:06.444Z","response_time":60,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"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":["deprecated","openstack","openstack-guest-agent","python"],"created_at":"2025-04-08T08:42:11.247Z","updated_at":"2025-10-14T16:05:21.809Z","avatar_url":"https://github.com/alunduil.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"singularity\n===========\n\nSmaller (in code; memory is up for debate) and more configurable guest agent for Openstack\n\nDependencies\n============\n\n* xen-tools if using xen\n* python-daemon\n* pycrypto\n\nDescription\n===========\n\nProvides an alternative to openstack-guest-agents-unix that tries to accomplish\nthe following as well as provide as much functionality of the aforementioned as\nwell:\n\n* Small \\*nix style daemon without any other considerations\n* Pluggable functionality for the configurations managed\n* Modular design in the hypervisor communication mechanisms\n* More configurable (ability to restrict managed items by singularity)\n\nThere are features that openstack-guest-agents-unix provides directly that we\ndelegate to other softwares to accomplish:\n\n* Locked to a particular python environment -\u003e handled by virtualenv\n\nCommand Line Interfaces\n-----------------------\n\nProvides two subcommands (apply and daemon).  The daemon command controls the\ndaemonization of the service and once started resspond to a few signals\n(explained below).  The apply subcommand on the other hand takes cached items\nand re-applies them to the live system.  See the help for singularity (and its\nsubcommands) for more information and options.\n\nNearly all options on the command line can be set in the appropriate section of\nthe configuration file (defaults to /etc/singularity/singularity.conf)\n\nSignals Interface\n-----------------\n\n* SIGHUP -\u003e daemon reload\n* SIGTERM,SIGINT -\u003e daemon stop\n\nNew Server Protocol\n===================\n\nThe following is an example exchange between the hypervisor and guest for a\nworking openstack guest agent (the hypervisor is designated H and the guest, G):\n\n    H: {\"name\":\"version\", \"value\":\"agent\"}\n    G: {\"message\":\"9999\", \"returncode\":\"0\"}\n    \n    H: {\"name\":\"features\", \"value\":\"\"}\n    G: {\"message\":\"resetnetwork,injectfile,version,password,features,keyinit\", \"returncode\":\"0\"}\n    \n    H: {\"name\":\"resetnetwork\", \"value\":\"\"}\n    G: {\"message\":\"\", \"returncode\":\"0\"}\n    \n    H: {\"name\":\"keyinit\", \"value\":\"126190143978468524724357084322869\"}\n    G: {\"message\":\"152515189133785336521547047713056\", \"returncode\":\"D0\"}\n    \n    H: {\"name\":\"password\", \"value\":\"YXazuqvtFdagFYrwKoYhWAbaJoW9eB7f+ju7GSwhBh4=\"}\n    G: {\"message\":\"\", \"returncode\":\"0\"}\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Falunduil%2Fsingularity","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Falunduil%2Fsingularity","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Falunduil%2Fsingularity/lists"}