{"action":"created","issue":{"url":"https://api.github.com/repos/ufoym/deepo/issues/55","repository_url":"https://api.github.com/repos/ufoym/deepo","labels_url":"https://api.github.com/repos/ufoym/deepo/issues/55/labels{/name}","comments_url":"https://api.github.com/repos/ufoym/deepo/issues/55/comments","events_url":"https://api.github.com/repos/ufoym/deepo/issues/55/events","html_url":"https://github.com/ufoym/deepo/issues/55","id":367176703,"node_id":"MDU6SXNzdWUzNjcxNzY3MDM=","number":55,"title":"Improve cachebility of generated Dockerfiles","user":{"login":"kklemon","id":1430243,"node_id":"MDQ6VXNlcjE0MzAyNDM=","avatar_url":"https://avatars3.githubusercontent.com/u/1430243?v=4","gravatar_id":"","url":"https://api.github.com/users/kklemon","html_url":"https://github.com/kklemon","followers_url":"https://api.github.com/users/kklemon/followers","following_url":"https://api.github.com/users/kklemon/following{/other_user}","gists_url":"https://api.github.com/users/kklemon/gists{/gist_id}","starred_url":"https://api.github.com/users/kklemon/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kklemon/subscriptions","organizations_url":"https://api.github.com/users/kklemon/orgs","repos_url":"https://api.github.com/users/kklemon/repos","events_url":"https://api.github.com/users/kklemon/events{/privacy}","received_events_url":"https://api.github.com/users/kklemon/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":1,"created_at":"2018-10-05T11:47:56Z","updated_at":"2018-10-10T09:04:40Z","closed_at":null,"author_association":"NONE","body":"Is there a reason why all the modules and other statements that are generated by the generator.py script are concatenated and listed as a single RUN statement in the final Dockerfile?\r\n\r\nEspecially for large images with long and error prone build processes this results in that caching can't be used at all. I already had many cases where I had to try different combinations of packages/libraries or implement new ones by myself and it always cost a hell of a time to have to rebuild the image all over again when a slight change around the end of Dockerfile had to be made.\r\n\r\nWhat about changing the generator in such a way, that each module does not generate the final string to be added to the Dockerfile directly but just returns a list of strings, each being listed as a single RUN statement in the final Dockerfile?"},"comment":{"url":"https://api.github.com/repos/ufoym/deepo/issues/comments/428495561","html_url":"https://github.com/ufoym/deepo/issues/55#issuecomment-428495561","issue_url":"https://api.github.com/repos/ufoym/deepo/issues/55","id":428495561,"node_id":"MDEyOklzc3VlQ29tbWVudDQyODQ5NTU2MQ==","user":{"login":"kklemon","id":1430243,"node_id":"MDQ6VXNlcjE0MzAyNDM=","avatar_url":"https://avatars3.githubusercontent.com/u/1430243?v=4","gravatar_id":"","url":"https://api.github.com/users/kklemon","html_url":"https://github.com/kklemon","followers_url":"https://api.github.com/users/kklemon/followers","following_url":"https://api.github.com/users/kklemon/following{/other_user}","gists_url":"https://api.github.com/users/kklemon/gists{/gist_id}","starred_url":"https://api.github.com/users/kklemon/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kklemon/subscriptions","organizations_url":"https://api.github.com/users/kklemon/orgs","repos_url":"https://api.github.com/users/kklemon/repos","events_url":"https://api.github.com/users/kklemon/events{/privacy}","received_events_url":"https://api.github.com/users/kklemon/received_events","type":"User","site_admin":false},"created_at":"2018-10-10T09:04:40Z","updated_at":"2018-10-10T09:04:40Z","author_association":"NONE","body":"Thank you for the clear explanation. Now I understand why it is handled this way and even think that it is legimated.\r\n\r\nBut I still wonder if this feature couldn't be added as a command line option. It should be relatively easy to change the current implementation to make this work. As described before, each module could just return a list of single commands and the composer would then decide if those strings are either concatenated and executed with a single `RUN` or each separetely.\r\n\r\nMay I provide a PR for this so you could tell me if you think this is acceptable or not?"}}
{"actor":{"display_login":"kklemon"}}