{"action":"created","issue":{"url":"https://api.github.com/repos/fnproject/cli/issues/383","repository_url":"https://api.github.com/repos/fnproject/cli","labels_url":"https://api.github.com/repos/fnproject/cli/issues/383/labels{/name}","comments_url":"https://api.github.com/repos/fnproject/cli/issues/383/comments","events_url":"https://api.github.com/repos/fnproject/cli/issues/383/events","html_url":"https://github.com/fnproject/cli/issues/383","id":350343923,"node_id":"MDU6SXNzdWUzNTAzNDM5MjM=","number":383,"title":"What is the CLI for? Proposal: deprecate and remove `fn build` and `fn test`.","user":{"login":"mjg123","id":666324,"node_id":"MDQ6VXNlcjY2NjMyNA==","avatar_url":"https://avatars3.githubusercontent.com/u/666324?v=4","gravatar_id":"","url":"https://api.github.com/users/mjg123","html_url":"https://github.com/mjg123","followers_url":"https://api.github.com/users/mjg123/followers","following_url":"https://api.github.com/users/mjg123/following{/other_user}","gists_url":"https://api.github.com/users/mjg123/gists{/gist_id}","starred_url":"https://api.github.com/users/mjg123/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mjg123/subscriptions","organizations_url":"https://api.github.com/users/mjg123/orgs","repos_url":"https://api.github.com/users/mjg123/repos","events_url":"https://api.github.com/users/mjg123/events{/privacy}","received_events_url":"https://api.github.com/users/mjg123/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":8,"created_at":"2018-08-14T09:13:36Z","updated_at":"2018-08-21T18:59:58Z","closed_at":null,"author_association":"MEMBER","body":"At the moment the CLI does two distinct things:\r\n\r\n  - builds images\r\n  - calls the API in order to deploy functions\r\n\r\nAs far as \"calls the API\" goes, that's fine.  Makes sense that we provide a tool for doing that.  But the justification for \"Builds images\" is significantly weaker.  We couldn't possibly make a better image building tool than docker itself, and we're spending a lot of time and effort trying to.\r\n\r\n### Proposal:\r\n\r\n  - `fn init` always generates a Dockerfile\r\n  - `fn build` becomes a synonym for `docker build` (we don't need to actually remove it I guess)\r\n  - `fn test` removed\r\n  - `func.yaml` is purely a deployment descriptor. The following keys which relate to building images on the host are deprecated and removed:\r\n    - build, build_image, cmd, content_type, entrypoint, expects, format, headers, run_image, runtime, tests\r\n\r\n### Work needed:\r\n\r\n  - init-images: #369 \r\n  - reduction in number of hard-coded runtimes: #380 \r\n  - supported init-images should produce dockerfiles and `runtime: docker` in the boilerplate\r\n  - remove all LangHelper code from CLI\r\n  - deprecate build-related keys from func.yaml\r\n  - remove all build code from CLI"},"comment":{"url":"https://api.github.com/repos/fnproject/cli/issues/comments/414785548","html_url":"https://github.com/fnproject/cli/issues/383#issuecomment-414785548","issue_url":"https://api.github.com/repos/fnproject/cli/issues/383","id":414785548,"node_id":"MDEyOklzc3VlQ29tbWVudDQxNDc4NTU0OA==","user":{"login":"rdallman","id":2935111,"node_id":"MDQ6VXNlcjI5MzUxMTE=","avatar_url":"https://avatars0.githubusercontent.com/u/2935111?v=4","gravatar_id":"","url":"https://api.github.com/users/rdallman","html_url":"https://github.com/rdallman","followers_url":"https://api.github.com/users/rdallman/followers","following_url":"https://api.github.com/users/rdallman/following{/other_user}","gists_url":"https://api.github.com/users/rdallman/gists{/gist_id}","starred_url":"https://api.github.com/users/rdallman/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/rdallman/subscriptions","organizations_url":"https://api.github.com/users/rdallman/orgs","repos_url":"https://api.github.com/users/rdallman/repos","events_url":"https://api.github.com/users/rdallman/events{/privacy}","received_events_url":"https://api.github.com/users/rdallman/received_events","type":"User","site_admin":false},"created_at":"2018-08-21T18:59:58Z","updated_at":"2018-08-21T18:59:58Z","author_association":"MEMBER","body":"yeah, it would be nice if `func.yaml` was just configuration for a function/trigger rather than some weird unclear mix of local build fields and remote configuration fields. generating the Dockerfile in `init` gives you that instead of pushing to build step, and `init` only runs once too. fwiw there was a push once upon a time to mask all the docker stuff from users that don't want to deal with it and that's how we got to where we are, now we've come full circle :) I like the idea of the dockerfile in init pretty well, there's some wrench to be thrown about other oci compatible runtimes but maybe punt that whole convo"}}
{"actor":{"display_login":"rdallman"}}