Erlware For Managing Distribution and Build.ppt
《Erlware For Managing Distribution and Build.ppt》由会员分享,可在线阅读,更多相关《Erlware For Managing Distribution and Build.ppt(27页珍藏版)》请在麦多课文档分享上搜索。
1、Erlware For Managing Distribution and Build,Erlang User Conference 2007,Erlware Goals,Allow the Erlang Community to drive itself Allow the community to evolve the language/platform Make the language/platform accessible to reasonably competent programmers,Steps to Reach Erlwares Goals,Define a Common
2、 Repository for OTP Artifacts Make it easy for anyone to host their own version of the Repository Build tools that leverage the features of the Repository,Repository Design Goals,Be Lazy Dont add more meta data then you need Where ever possible leverage existing OTP metadata,Repository and OTP,OTP a
3、lready provides most of the metadata that we need. OTP Applications make good artifacts. OTP *.app files make for good metadata. OTP *.boot, *.script, *.rel files make really good release packages.,Anatomy of a package,Contains a src directory Contains an ebin directory Contains a *.app file Contain
4、s source code,Application,Release,Contains an *.rel fileContains a sys.config fileContains command templates,Repository Implementation,Dirt Simple Http Server with WEBDAV Enabled Specific, well documented directory structure,Repository Layout,The structure of the repo is/ /and/Meta/Example: The Sina
5、n-1.0.1 release package for mac sits in:http:/repo.erlware.org/pub/5.5.5/ i386-apple-darwin8.9/releases/sinan/,Leveraging the Repository,Sinan is a build system that understands erlang and OTP. It makes it very easy to handle complex OTP build logic,Faxien is a distribution system built on the same
6、backend as Sinan. It provides functionality similar to rubygems or CPAN for Erlang.,OTP Centric Build System Expects OTP Applications, Understands OTP Applications Written and extensible in Erlang,Getting Started,Generate an OTP Projectsinan genAfter asking a few questions generates a useful, sinan
7、compliant, compilable OTP application with a complete skeleton,Dependency Detection,Just runsinan dependsEvaluates the OTP application dependencies and restrictions in the project. Hits the repository to gather information. Comes back with a list of hard dependencies (app, version) for each of the d
8、ependencies and transitive dependencies in the project. Many other tasks in Sinan depend on this one.,Building,Just runsinanorsinan buildBuilds all of your artifacts into the _build directory. Will only rebuild when a file needs to be rebuilt. Understands includes, parse transforms etc.,Testing,We d
9、ecided to leverage eunit in Sinan. Want to run all of the eunit tests in your project.sinan testSinan prints successes and failures to the shell. It also generates html code coverage reports to _build/reports.,The Good Stuff - Releases,Want to generate *.rel, *.boot, *.script files for your project?
10、 How about taring it up and getting it ready for a push to an Erlang node?Just dosinan releaseorsinan tarBest of all, Faxien knows how to push these releases out to a repository. That makes distribution a no brainer.,Extras,How about running dialyzer on your project?sinan analyzeThe first time its r
11、un it generates a plt file for dependencies so you only get the output relevant for your project.Want an erlang shell with all of your paths set so you can noodle with your project?sinan shell,The Future,Anything you want. Sinan is an extensible system so anything useful can be quickly incorporated.
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
2000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- ERLWAREFORMANAGINGDISTRIBUTIONANDBUILDPPT
