Automatic selection of language pack
As an application developer, I can push my code to the platform, and have the platform automatically select the appropriate language pack to build+ deploy my application.
Blueprint information
- Status:
- Complete
- Approver:
- Adrian Otto
- Priority:
- Medium
- Drafter:
- Roshan Agrawal
- Direction:
- Approved
- Assignee:
- None
- Definition:
- Discussion
- Series goal:
- Accepted for icehouse
- Implementation:
- Implemented
- Milestone target:
- juno-1
- Started by
- Adrian Otto
- Completed by
- Adrian Otto
Related branches
Related bugs
Sprints
Whiteboard
When using the application.heroku application type, the language type is automatically selected. This functionality was released in the 2014.1.1 release. The additional functionality desired is to look at files within the Git repo, and determine what language type to use if none is specified in a Plan file.
We should have the following language packs supported:
Heroku (exists now)
Cloud Foundry (minor modifications needed to Heroku build pack, use CF runtimes)
Docker (new, to use docker to build in accordance with the content in the Dockerfile)
If an application type is specified in a Plan file, use that.
Otherwise, do auto-detection as follows:
1) If a file named 'Dockerfile' is present, then select the Docker LP.
2) If a manifest.yml file exists, then parse it to determine the CF language pack to use, and proceed with type Cloud Foundty.
3) If neither a Dockerfile or a manifest.yml file are present, then default to using the Heroku LP, and rely on it's auto-detection capability.