{"action":"created","issue":{"url":"https://api.github.com/repos/tonistiigi/dnsdock/issues/26","labels_url":"https://api.github.com/repos/tonistiigi/dnsdock/issues/26/labels{/name}","comments_url":"https://api.github.com/repos/tonistiigi/dnsdock/issues/26/comments","events_url":"https://api.github.com/repos/tonistiigi/dnsdock/issues/26/events","html_url":"https://github.com/tonistiigi/dnsdock/pull/26","id":93171579,"number":26,"title":"HTTP endpoint to trigger Docker service sync","user":{"login":"kgutwin","id":6315798,"avatar_url":"https://avatars.githubusercontent.com/u/6315798?v=3","gravatar_id":"","url":"https://api.github.com/users/kgutwin","html_url":"https://github.com/kgutwin","followers_url":"https://api.github.com/users/kgutwin/followers","following_url":"https://api.github.com/users/kgutwin/following{/other_user}","gists_url":"https://api.github.com/users/kgutwin/gists{/gist_id}","starred_url":"https://api.github.com/users/kgutwin/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kgutwin/subscriptions","organizations_url":"https://api.github.com/users/kgutwin/orgs","repos_url":"https://api.github.com/users/kgutwin/repos","events_url":"https://api.github.com/users/kgutwin/events{/privacy}","received_events_url":"https://api.github.com/users/kgutwin/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":2,"created_at":"2015-07-06T02:24:56Z","updated_at":"2015-07-06T12:53:33Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/tonistiigi/dnsdock/pulls/26","html_url":"https://github.com/tonistiigi/dnsdock/pull/26","diff_url":"https://github.com/tonistiigi/dnsdock/pull/26.diff","patch_url":"https://github.com/tonistiigi/dnsdock/pull/26.patch"},"body":"One possible solution to #22 without introducing an explicit heartbeat (a feature called out in the third paragraph of the README) is to allow users to trigger a resync of one or all Docker containers via the existing HTTP interface. Users would have the choice to either manually trigger resync after container renames (or other container metadata changes) or to automatically trigger the resync via a cron-type scheduled mechanism.\r\n\r\nSome notes:\r\n* The sync does not update the _list_ of containers, just the metadata of containers known to exist.\r\n* Sync will overwrite any manual changes to the service.\r\n* General sync (the `/sync` endpoint) should ignore any services that are not tied to containers."},"comment":{"url":"https://api.github.com/repos/tonistiigi/dnsdock/issues/comments/118845609","html_url":"https://github.com/tonistiigi/dnsdock/pull/26#issuecomment-118845609","issue_url":"https://api.github.com/repos/tonistiigi/dnsdock/issues/26","id":118845609,"user":{"login":"kgutwin","id":6315798,"avatar_url":"https://avatars.githubusercontent.com/u/6315798?v=3","gravatar_id":"","url":"https://api.github.com/users/kgutwin","html_url":"https://github.com/kgutwin","followers_url":"https://api.github.com/users/kgutwin/followers","following_url":"https://api.github.com/users/kgutwin/following{/other_user}","gists_url":"https://api.github.com/users/kgutwin/gists{/gist_id}","starred_url":"https://api.github.com/users/kgutwin/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kgutwin/subscriptions","organizations_url":"https://api.github.com/users/kgutwin/orgs","repos_url":"https://api.github.com/users/kgutwin/repos","events_url":"https://api.github.com/users/kgutwin/events{/privacy}","received_events_url":"https://api.github.com/users/kgutwin/received_events","type":"User","site_admin":false},"created_at":"2015-07-06T12:53:33Z","updated_at":"2015-07-06T12:53:33Z","body":"I raised docker/docker#14407 to have rename events emitted by the Docker events stream. For what it's worth, I thought of two other reasons why this function might still be warranted:\r\n* Users may want to 'revert' any manual service changes they have made.\r\n* I wasn't sure if Docker will eventually allow you to dynamically change other metadata fields such as environment variables or image names, and I thought a general sync mechanism was the simplest way to cover any such future possibilities."}}