{"action":"opened","issue":{"url":"https://api.github.com/repos/4finance/micro-infra-spring/issues/229","labels_url":"https://api.github.com/repos/4finance/micro-infra-spring/issues/229/labels{/name}","comments_url":"https://api.github.com/repos/4finance/micro-infra-spring/issues/229/comments","events_url":"https://api.github.com/repos/4finance/micro-infra-spring/issues/229/events","html_url":"https://github.com/4finance/micro-infra-spring/issues/229","id":55917215,"number":229,"title":"Collaborators may go to production with faulty stub definitions","user":{"login":"nurkiewicz","id":164045,"avatar_url":"https://avatars.githubusercontent.com/u/164045?v=3","gravatar_id":"","url":"https://api.github.com/users/nurkiewicz","html_url":"https://github.com/nurkiewicz","followers_url":"https://api.github.com/users/nurkiewicz/followers","following_url":"https://api.github.com/users/nurkiewicz/following{/other_user}","gists_url":"https://api.github.com/users/nurkiewicz/gists{/gist_id}","starred_url":"https://api.github.com/users/nurkiewicz/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/nurkiewicz/subscriptions","organizations_url":"https://api.github.com/users/nurkiewicz/orgs","repos_url":"https://api.github.com/users/nurkiewicz/repos","events_url":"https://api.github.com/users/nurkiewicz/events{/privacy}","received_events_url":"https://api.github.com/users/nurkiewicz/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/4finance/micro-infra-spring/labels/discussion","name":"discussion","color":"fef2c0"}],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":0,"created_at":"2015-01-29T15:57:33Z","updated_at":"2015-01-29T15:57:33Z","closed_at":null,"body":"<a href=\"https://github.com/marcingrzejszczak\"><img src=\"https://avatars.githubusercontent.com/u/3297437?v=3\" align=\"left\" width=\"96\" height=\"96\" hspace=\"10\"></img></a> **Issue by [marcingrzejszczak](https://github.com/marcingrzejszczak)**\n_Wednesday Dec 17, 2014 at 19:24 GMT_\n_Originally opened as https://github.com/4finance/stub-runner/issues/21_\n\n----\n\nImagine a scenario:\r\n\r\n  - I'm a microservice X\r\n  - There's a microservice Y and I'm his collaborator\r\n  - I develop a stub of my microservice (I push it to a repository containing stub definitions)\r\n  - Assuming that we have such a step  I verify whether my stub does exactly what my microservice does\r\n  - I DO NOT pass that verification (my microservice's pipeline gets broken - I won't go to production - which is good)\r\n  - HOWEVER - my collaborator MAY pass the whole pipeline with my broken stubs and go to production\r\n\r\nABSOLUTE MUST:\r\n  - We may only deploy stub definitions of a microservice if they pass the building process (they are structuraly ok and do exactly what a microservice does)\r\n\r\nPossible solution:\r\n  - Maybe we should go back to the concept that each microservice publishes two jars - one with fatJar and one with JSON stub definitions\r\n  - Stub-runner would then via microservice.json go to nexus and Grab proper tub definitions (he knows who your collaborator is) \r\n  - That way it could be easier for us to test if a stub is ok from the microservice's perspective since it's your responsibility as a microservice to deploy your stub - otherwise you won't pass the pipeline\n"}}