• Share
  • Email
  • Embed
  • Like
  • Save
  • Private Content
Contributing to Grails

Contributing to Grails






Total Views
Views on SlideShare
Embed Views



8 Embeds 890

http://groovyflow.com 643
http://gr8conf.eu 173
http://feeds.feedburner.com 22
http://localhost 19
http://www.groovyflow.com 18
http://lanyrd.com 11
http://gr8conf.org 3
http://m.gr8conf.eu 1



Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
Post Comment
Edit your comment

    Contributing to Grails Contributing to Grails Presentation Transcript

    • Contributing to GrailsPeter Ledbrook - VMwaret: @pledbrooke: pledbrook@vmware.com© 2012 VMware, Inc. All rights reserved.
    • Why contribute?
    • Giving back feels good!
    • Expanded Easier on-user base boarding Self interest Improved dev experience
    • “Many hands make light work”
    • Where to start? 6
    • dev@grails.codehaus.orgDiscuss the direction and future of Grails!
    • JIRA• Raise bugs, improvements, new features – Project leads set priority• Vote! – Affects prioritisation• Comment – Make your voice heard• Submit reproducible examples – Preferably with automated tests – These can be incorporated in Grails functional test suite http://jira.grails.org/ 8
    • JIRA 9
    • JIRA 10
    • Reviewing old issues 11
    • Reviewing old issues Add recommendation, e.g. close the issue, and why 12
    • Want to contribute? Search for Resolution: unresolved, Label: contribute 13
    • Useful components in project GRAILS• Documentation• Data binding• URL mappings• View technologies• Persistence• Scaffolding• Request new ones in ADMIN project 14
    • Help your fellow man • http://grails.org/doc/latest/User Guide • https://github.com/grails/grails-doc • http://grails.github.com/grails-howtos/HOWTOs • https://github.com/grails/grails-howtos 15
    • Contributing to documentation• Add missing info• Correct misinformation• Clarify! – Don’t be afraid to rewrite or restructure• Develop HOWTOs – Single page documents• User guide and HOWTOs: – use gdoc wiki syntax – support translations 16
    • Contributing to user guideEither pledbrook/grails-doc Sync grails/grails-doc (master) (2.0.x) Push Anyone can ask for commit rights via dev mailing list You 17
    • Contributing to user guideOr Pull request <username>/grails-doc grails/grails-doc (patch-n) (<branch>) Push Currently <branch> one of: • master • 2.1.x • 2.0.x You 18
    • Contributing to HOWTOs grails/grails-howtos Hudson http://grails.github.com/grails-howtos (master) Push Anyone can ask for commit rights via dev mailing list You 19
    • Website (http://grails.org)• Grails application• Used by you!• Currently undergoing facelift• Open source – https://github.com/grails-samples/grails-website• Works with Release plugin – For publishing public plugins• Used for plugin resolution – http://plugins.grails.org/ 20
    • Public plugins• Hosted on Grails Central Plugin Repository• Requires permission per plugin to publish – Currently ask on dev mailing list – Website will have plugin submission form – Source code must be available for review• For successful proposal – Correct metadata – Good description – Documentation 21
    • Grails core git clone https://github.com/grails/grails-core ./gradlew install export GRAILS_HOME=<path>/grails-core 22
    • Grails core UrlMappingsFilter URL mappings GrailsDomainBinder Domain class mapping GrailsDataBinder Data binding GrailsDispatcherServlet Request handling AbstractGrailsPluginManager DefaultGrailsPluginManager Plugin loading and initialisation DefaultGrailsPlugin 23
    • Grails core scripts/* Build commands GrailsScriptRunner ‘grails’ command starter grails.build.logging.GrailsConsole InteractiveMode Interactive console 24
    • Summary• PaaS is the application platform for the Cloud era• PaaS will change the way you write apps – Design for horizontal scalability – Account for ephemeral file system – Rich set of services – Go polyglot!• Tools & libraries are important – Spring for the win!• Can use Redis in place of RabbitMQ for some patterns 25
    • Grails core• Start with pull requests...• ...become a Grails committer! 26
    • Summary• Many ways of contributing• Gain kudos, name recognition, etc.• Get a warm fuzzy feeling :)• GitHub, JIRA, website• Learn how to use GitHub: – http://grails.org/screencast/show/21 – or search for GitHub in screencasts 27
    • Q&A