{"action":"closed","issue":{"url":"https://api.github.com/repos/operable/cog/issues/956","repository_url":"https://api.github.com/repos/operable/cog","labels_url":"https://api.github.com/repos/operable/cog/issues/956/labels{/name}","comments_url":"https://api.github.com/repos/operable/cog/issues/956/comments","events_url":"https://api.github.com/repos/operable/cog/issues/956/events","html_url":"https://github.com/operable/cog/issues/956","id":177485723,"number":956,"title":"Spec out work for bundle registry","user":{"login":"vanstee","id":228734,"avatar_url":"https://avatars.githubusercontent.com/u/228734?v=3","gravatar_id":"","url":"https://api.github.com/users/vanstee","html_url":"https://github.com/vanstee","followers_url":"https://api.github.com/users/vanstee/followers","following_url":"https://api.github.com/users/vanstee/following{/other_user}","gists_url":"https://api.github.com/users/vanstee/gists{/gist_id}","starred_url":"https://api.github.com/users/vanstee/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/vanstee/subscriptions","organizations_url":"https://api.github.com/users/vanstee/orgs","repos_url":"https://api.github.com/users/vanstee/repos","events_url":"https://api.github.com/users/vanstee/events{/privacy}","received_events_url":"https://api.github.com/users/vanstee/received_events","type":"User","site_admin":false},"labels":[],"state":"closed","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":1,"created_at":"2016-09-16T18:05:00Z","updated_at":"2016-09-20T18:37:22Z","closed_at":"2016-09-20T18:37:21Z","body":"# Goals\r\n\r\n* Discoverability of bundles (both official and community)\r\n* Ease of installation and upgrading bundles\r\n\r\n# Minimum features (first-pass)\r\n\r\n__Web + API__\r\n\r\n* Create an account via Github OAuth\r\n* Upload a config.yaml for a new bundle\r\n* Upload a config.yaml for a new version of an existing bundle\r\n* List registered bundles and their versions\r\n* Display registered bundle and documentation and links to versions\r\n* Add api for downloading config.yaml of a specific bundle version\r\n\r\n__Cogctl__\r\n\r\n* Install directly from registry: `cogctl bundle install pagerduty`\r\n\r\n# Nice to haves (ideal feature list)\r\n\r\n__Web + API__\r\n\r\n* Search for registered bundles\r\n* Mark bundle version as \"yanked\" (probably need a better term)\r\n* Record and graph of installs to indicate popularity\r\n* Accept extra information to identify Operable employees (potentially other things like Cog version)\r\n* Multiple users can own a bundle\r\n* Account recovery\r\n\r\n__Cogctl__\r\n\r\n* Upgrade bundle from registry `cogctl bundle upgrade pagerduty`\r\n* Check for outdated bundles `cogctl bundle outdated`\r\n* View info about uninstalled, registered bundles `cogctl bundle info pagerduty`\r\n* Search for registered bundles `cogctl bundle search pager`\r\n* Authenticate with the bundle registry\r\n* Push a bundle config `cogctl bundle push pagerduty/config.yaml`\r\n* Add opt-in config option for include extra information about cog/cogctl install with each request\r\n\r\n# Unknowns\r\n\r\n* Do we need to allow for signing/verifying bundles and their docker images?\r\n* Should we do any verification that the bundle is installable and that the docker images exist?\r\n* Is it ok to rely on GitHub for auth?\r\n* Will we want to allow registered bundles to be entirely deleted or renamed?\r\n* Do we want to include all of these commands in cogctl, or would they be better suited for a bundle management cli tool?\r\n* Will we only allow docker-based bundles since simple bundles aren't entirely encapsulated and not easy to share?\r\n* Will storing bundle configs in the database be good enough long term or will need to serve them from somewhere like S3?"}}
{"actor":{"display_login":"vanstee"}}