payload: {"action":"created","issue":{"url":"https://api.github.com/repos/vmware/octant/issues/204","repository_url":"https://api.github.com/repos/vmware/octant","labels_url":"https://api.github.com/repos/vmware/octant/issues/204/labels{/name}","comments_url":"https://api.github.com/repos/vmware/octant/issues/204/comments","events_url":"https://api.github.com/repos/vmware/octant/issues/204/events","html_url":"https://github.com/vmware/octant/issues/204","id":484155185,"node_id":"MDU6SXNzdWU0ODQxNTUxODU=","number":204,"title":"Allow the dashboard to be embedded in another program","user":{"login":"ledor473","id":1359779,"node_id":"MDQ6VXNlcjEzNTk3Nzk=","avatar_url":"https://avatars3.githubusercontent.com/u/1359779?v=4","gravatar_id":"","url":"https://api.github.com/users/ledor473","html_url":"https://github.com/ledor473","followers_url":"https://api.github.com/users/ledor473/followers","following_url":"https://api.github.com/users/ledor473/following{/other_user}","gists_url":"https://api.github.com/users/ledor473/gists{/gist_id}","starred_url":"https://api.github.com/users/ledor473/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ledor473/subscriptions","organizations_url":"https://api.github.com/users/ledor473/orgs","repos_url":"https://api.github.com/users/ledor473/repos","events_url":"https://api.github.com/users/ledor473/events{/privacy}","received_events_url":"https://api.github.com/users/ledor473/received_events","type":"User","site_admin":false},"labels":[{"id":1459931085,"node_id":"MDU6TGFiZWwxNDU5OTMxMDg1","url":"https://api.github.com/repos/vmware/octant/labels/api","name":"api","color":"9827d1","default":false},{"id":1459931940,"node_id":"MDU6TGFiZWwxNDU5OTMxOTQw","url":"https://api.github.com/repos/vmware/octant/labels/refactor","name":"refactor","color":"edaeaa","default":false}],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":1,"created_at":"2019-08-22T18:51:11Z","updated_at":"2019-08-22T20:12:10Z","closed_at":null,"author_association":"NONE","body":"I started to check if it was possible to embed Octant inside another Go application but right now a large portion of the code sits inside the `internal/` folder which prevents it do be imported.\r\n\r\nThe goal would be to automatically start/stop Octant when starting something else. It would allow things like an embedded Octant inside a Grafana plugin for instance.\r\n\r\nI think moving `internal/dash` to `pkg/dash` would be enough by looking at this: https://github.com/vmware/octant/blob/d52b4b0286f865a3d2ad7d3ffb8d6e8bc1eb48ea/internal/commands/dash.go#L68-L92\r\n\r\nWould you be open to that change? I'm happy to drive that change and the testing related to it 🙂"},"comment":{"url":"https://api.github.com/repos/vmware/octant/issues/comments/524059206","html_url":"https://github.com/vmware/octant/issues/204#issuecomment-524059206","issue_url":"https://api.github.com/repos/vmware/octant/issues/204","id":524059206,"node_id":"MDEyOklzc3VlQ29tbWVudDUyNDA1OTIwNg==","user":{"login":"ledor473","id":1359779,"node_id":"MDQ6VXNlcjEzNTk3Nzk=","avatar_url":"https://avatars3.githubusercontent.com/u/1359779?v=4","gravatar_id":"","url":"https://api.github.com/users/ledor473","html_url":"https://github.com/ledor473","followers_url":"https://api.github.com/users/ledor473/followers","following_url":"https://api.github.com/users/ledor473/following{/other_user}","gists_url":"https://api.github.com/users/ledor473/gists{/gist_id}","starred_url":"https://api.github.com/users/ledor473/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ledor473/subscriptions","organizations_url":"https://api.github.com/users/ledor473/orgs","repos_url":"https://api.github.com/users/ledor473/repos","events_url":"https://api.github.com/users/ledor473/events{/privacy}","received_events_url":"https://api.github.com/users/ledor473/received_events","type":"User","site_admin":false},"created_at":"2019-08-22T20:12:10Z","updated_at":"2019-08-22T20:12:10Z","author_association":"NONE","body":"I'm thinking of an application very similar to the `kubectl wrapper` presented in [Airbnb keynote during KubeCon 18](https://kccna18.sched.com/event/GsxY/keynote-developing-kubernetes-services-at-airbnb-scale-melanie-cebula-software-engineer-airbnb). It reduces the amount of typing needed to do common tasks, from `kubectl apply` to `helm upgrade`.\r\nI feel that Octant would be a good candidate to bundle as well since it's built to use the user's credentials and run locally.\r\n\r\nConsidering it's in Go as well, I'd rather import it than making it an external dependency that needs to be installed in the `PATH` and having to start the binary directly.\r\n\r\nI can totally see why the API stability is a concern, but the instability is something one should expect from any project that follows [SemVer and is pre-1.x](https://semver.org/spec/v2.0.0.html#spec-item-4).\r\nVarious projects (including [early Kubernetes](https://github.com/kubernetes/kubernetes/blob/7e0798989746c2f5f0dafa1bd09739a4983ddbfe/docs/api.md#api-changes)) include a warning in the documentation to make it clear that breaking change should be expected."}}
other: {"actor":{"display_login":"ledor473"}}