daniel pittman - platform team presentation - puppetcamp la '12
TRANSCRIPT
![Page 2: Daniel Pittman - Platform Team Presentation - PuppetCamp LA '12](https://reader033.vdocuments.net/reader033/viewer/2022052307/554bbab1b4c90594278b4c7c/html5/thumbnails/2.jpg)
PUPPET PLATFORMWho, What, Why, and How
2Monday, 21 May 12
![Page 3: Daniel Pittman - Platform Team Presentation - PuppetCamp LA '12](https://reader033.vdocuments.net/reader033/viewer/2022052307/554bbab1b4c90594278b4c7c/html5/thumbnails/3.jpg)
WHAT IS THE PLATFORM TEAM?
3Monday, 21 May 12
![Page 4: Daniel Pittman - Platform Team Presentation - PuppetCamp LA '12](https://reader033.vdocuments.net/reader033/viewer/2022052307/554bbab1b4c90594278b4c7c/html5/thumbnails/4.jpg)
I AM PLATFORM TEAM LEAD
• Find the right people
• Help them be awesome
• Stay out of their way
4Monday, 21 May 12
![Page 5: Daniel Pittman - Platform Team Presentation - PuppetCamp LA '12](https://reader033.vdocuments.net/reader033/viewer/2022052307/554bbab1b4c90594278b4c7c/html5/thumbnails/5.jpg)
WHAT DO WE DO?
5Monday, 21 May 12
![Page 6: Daniel Pittman - Platform Team Presentation - PuppetCamp LA '12](https://reader033.vdocuments.net/reader033/viewer/2022052307/554bbab1b4c90594278b4c7c/html5/thumbnails/6.jpg)
MAKE PUPPET MORE AWESOME FOR THE COMMUNITY
• Build great things
• Triage and fix bugs
•Merge contributed code
6Monday, 21 May 12
![Page 7: Daniel Pittman - Platform Team Presentation - PuppetCamp LA '12](https://reader033.vdocuments.net/reader033/viewer/2022052307/554bbab1b4c90594278b4c7c/html5/thumbnails/7.jpg)
WORK WITH THE COMMUNITY
7Monday, 21 May 12
![Page 8: Daniel Pittman - Platform Team Presentation - PuppetCamp LA '12](https://reader033.vdocuments.net/reader033/viewer/2022052307/554bbab1b4c90594278b4c7c/html5/thumbnails/8.jpg)
ASIDE: WORKING IN THE COMMUNITY => WORKING FOR PUPPET LABS
•Developers
• Professional Services
• Sales Engineers
• ...and other roles
8Monday, 21 May 12
![Page 9: Daniel Pittman - Platform Team Presentation - PuppetCamp LA '12](https://reader033.vdocuments.net/reader033/viewer/2022052307/554bbab1b4c90594278b4c7c/html5/thumbnails/9.jpg)
REDUCE FRICTION FOR NEW CONTRIBUTORS
9Monday, 21 May 12
![Page 10: Daniel Pittman - Platform Team Presentation - PuppetCamp LA '12](https://reader033.vdocuments.net/reader033/viewer/2022052307/554bbab1b4c90594278b4c7c/html5/thumbnails/10.jpg)
BE TRANSPARENT
• Tell you what is happening
•Make decisions in public
•Work together on roadmap
•Work together on design
•Open by default
10Monday, 21 May 12
![Page 11: Daniel Pittman - Platform Team Presentation - PuppetCamp LA '12](https://reader033.vdocuments.net/reader033/viewer/2022052307/554bbab1b4c90594278b4c7c/html5/thumbnails/11.jpg)
WHAT WE HAVE ACCOMPLISHED
11Monday, 21 May 12
![Page 12: Daniel Pittman - Platform Team Presentation - PuppetCamp LA '12](https://reader033.vdocuments.net/reader033/viewer/2022052307/554bbab1b4c90594278b4c7c/html5/thumbnails/12.jpg)
DATA/MODEL SEPARATION
• Lookup of class parameters separate from the manifest
• You can assume it is there!
•No manifest changes needed
• Uses Hiera as the back-end
12Monday, 21 May 12
![Page 13: Daniel Pittman - Platform Team Presentation - PuppetCamp LA '12](https://reader033.vdocuments.net/reader033/viewer/2022052307/554bbab1b4c90594278b4c7c/html5/thumbnails/13.jpg)
RUBY 1.9.3
...is finally a first class citizen.This is part of 3.0.0
Fully supported.All bugs fixed.
(Probably)
13Monday, 21 May 12
![Page 14: Daniel Pittman - Platform Team Presentation - PuppetCamp LA '12](https://reader033.vdocuments.net/reader033/viewer/2022052307/554bbab1b4c90594278b4c7c/html5/thumbnails/14.jpg)
PUPPET MODULE TOOL
• Project Geordi La Forge
• PMT ships with 3.0.0
•Making it more awesome!
• Buffing up publishing
• Enhance the forge
14Monday, 21 May 12
![Page 15: Daniel Pittman - Platform Team Presentation - PuppetCamp LA '12](https://reader033.vdocuments.net/reader033/viewer/2022052307/554bbab1b4c90594278b4c7c/html5/thumbnails/15.jpg)
VARIABLE SCOPE FIXED
•No more dynamic scope
• Killed deprecation warnings!
• Local, then inherited...
• ...then node, then global.
15Monday, 21 May 12
![Page 16: Daniel Pittman - Platform Team Presentation - PuppetCamp LA '12](https://reader033.vdocuments.net/reader033/viewer/2022052307/554bbab1b4c90594278b4c7c/html5/thumbnails/16.jpg)
GIVE BACK MEMORY
•Daemon mode used to grow and grow...
•Now, we return memory to the OS
• Part of our performance improvement strategy
16Monday, 21 May 12
![Page 17: Daniel Pittman - Platform Team Presentation - PuppetCamp LA '12](https://reader033.vdocuments.net/reader033/viewer/2022052307/554bbab1b4c90594278b4c7c/html5/thumbnails/17.jpg)
ENC VS ENVIRONMENTS
• You could set the client environment from the ENC
• The client would ignore you (sometimes)
•Now it doesn’t
• Bug fix, not feature
• Still great!
17Monday, 21 May 12
![Page 18: Daniel Pittman - Platform Team Presentation - PuppetCamp LA '12](https://reader033.vdocuments.net/reader033/viewer/2022052307/554bbab1b4c90594278b4c7c/html5/thumbnails/18.jpg)
PLUGIN SYNC
• This worked unevenly
• Failures on first run
•Oddities about what can by synced and used successfully
•Now, uniform and standard
18Monday, 21 May 12
![Page 19: Daniel Pittman - Platform Team Presentation - PuppetCamp LA '12](https://reader033.vdocuments.net/reader033/viewer/2022052307/554bbab1b4c90594278b4c7c/html5/thumbnails/19.jpg)
DSL POLISH
• Add “unless” to the language
• Allow keywords as resource parameters and properties
• Fixed some parser bugs (like ‘-’ in variable names)
•More of this coming...
19Monday, 21 May 12
![Page 20: Daniel Pittman - Platform Team Presentation - PuppetCamp LA '12](https://reader033.vdocuments.net/reader033/viewer/2022052307/554bbab1b4c90594278b4c7c/html5/thumbnails/20.jpg)
HIDDEN CHANGES
• Lots of bugs fixed
• Code cleanup
• Performance improvements
• Correctness fixes
•None of them visible
20Monday, 21 May 12
![Page 21: Daniel Pittman - Platform Team Presentation - PuppetCamp LA '12](https://reader033.vdocuments.net/reader033/viewer/2022052307/554bbab1b4c90594278b4c7c/html5/thumbnails/21.jpg)
FINALLY SHIPPING!
• Puppet 3.0.0
• Facter 2.0.0
• Hiera 1.0.0
21Monday, 21 May 12
![Page 22: Daniel Pittman - Platform Team Presentation - PuppetCamp LA '12](https://reader033.vdocuments.net/reader033/viewer/2022052307/554bbab1b4c90594278b4c7c/html5/thumbnails/22.jpg)
COMMITTING TO SEMVER
• Semantic Versioning FTW
•We are moving all our projects over
• SemVer 2.0.0-rc.1 compliant
22Monday, 21 May 12
![Page 23: Daniel Pittman - Platform Team Presentation - PuppetCamp LA '12](https://reader033.vdocuments.net/reader033/viewer/2022052307/554bbab1b4c90594278b4c7c/html5/thumbnails/23.jpg)
IT’S VERSION-CEPTION!
23Monday, 21 May 12
![Page 24: Daniel Pittman - Platform Team Presentation - PuppetCamp LA '12](https://reader033.vdocuments.net/reader033/viewer/2022052307/554bbab1b4c90594278b4c7c/html5/thumbnails/24.jpg)
MAJOR VERSIONBreaking Changes
24Monday, 21 May 12
![Page 25: Daniel Pittman - Platform Team Presentation - PuppetCamp LA '12](https://reader033.vdocuments.net/reader033/viewer/2022052307/554bbab1b4c90594278b4c7c/html5/thumbnails/25.jpg)
MINOR VERSION
Compatible new features
25Monday, 21 May 12
![Page 26: Daniel Pittman - Platform Team Presentation - PuppetCamp LA '12](https://reader033.vdocuments.net/reader033/viewer/2022052307/554bbab1b4c90594278b4c7c/html5/thumbnails/26.jpg)
PATCH VERSION
Bug fix with no other behavioural or functional
changes
26Monday, 21 May 12
![Page 27: Daniel Pittman - Platform Team Presentation - PuppetCamp LA '12](https://reader033.vdocuments.net/reader033/viewer/2022052307/554bbab1b4c90594278b4c7c/html5/thumbnails/27.jpg)
WHICH MEANS?
• You have version numbers that match the way we write and ship code
• You can be confident about the scope of changes in any release
27Monday, 21 May 12
![Page 28: Daniel Pittman - Platform Team Presentation - PuppetCamp LA '12](https://reader033.vdocuments.net/reader033/viewer/2022052307/554bbab1b4c90594278b4c7c/html5/thumbnails/28.jpg)
SHIPPING CODE FASTER
28Monday, 21 May 12
![Page 29: Daniel Pittman - Platform Team Presentation - PuppetCamp LA '12](https://reader033.vdocuments.net/reader033/viewer/2022052307/554bbab1b4c90594278b4c7c/html5/thumbnails/29.jpg)
OS PACKAGES FOR RELEASE CANDIDATES
29Monday, 21 May 12
![Page 30: Daniel Pittman - Platform Team Presentation - PuppetCamp LA '12](https://reader033.vdocuments.net/reader033/viewer/2022052307/554bbab1b4c90594278b4c7c/html5/thumbnails/30.jpg)
MONTH DEVELOPMENT RELEASES
•Waldorf is the next major release after Telly (3.0.0)
•We will ship a tested version every month as a preview
• This way you don’t have changes a year old before they ship to the community
• Plus OS packages!
30Monday, 21 May 12
![Page 31: Daniel Pittman - Platform Team Presentation - PuppetCamp LA '12](https://reader033.vdocuments.net/reader033/viewer/2022052307/554bbab1b4c90594278b4c7c/html5/thumbnails/31.jpg)
NOT DONE YET...
31Monday, 21 May 12
![Page 32: Daniel Pittman - Platform Team Presentation - PuppetCamp LA '12](https://reader033.vdocuments.net/reader033/viewer/2022052307/554bbab1b4c90594278b4c7c/html5/thumbnails/32.jpg)
OLD MISTAKES STILL HAUNT US
• Parameterized classes don’t work everywhere
• undef vs nil
• classes with ‘-’ in the name
32Monday, 21 May 12
![Page 33: Daniel Pittman - Platform Team Presentation - PuppetCamp LA '12](https://reader033.vdocuments.net/reader033/viewer/2022052307/554bbab1b4c90594278b4c7c/html5/thumbnails/33.jpg)
SLOW MOVING ECOSYSTEM
•Dashboard has not gotten a lot of love recently
• Puppet Labs modules need more attention
• ...but we are starting to invest in them.
33Monday, 21 May 12
![Page 34: Daniel Pittman - Platform Team Presentation - PuppetCamp LA '12](https://reader033.vdocuments.net/reader033/viewer/2022052307/554bbab1b4c90594278b4c7c/html5/thumbnails/34.jpg)
BROKEN (OR DELAYED) PROMISES
• import isn’t deprecated
• The static compiler isn’t the default
• Facter doesn’t have typed or structured facts
34Monday, 21 May 12
![Page 35: Daniel Pittman - Platform Team Presentation - PuppetCamp LA '12](https://reader033.vdocuments.net/reader033/viewer/2022052307/554bbab1b4c90594278b4c7c/html5/thumbnails/35.jpg)
THE FUTURE
35Monday, 21 May 12
![Page 36: Daniel Pittman - Platform Team Presentation - PuppetCamp LA '12](https://reader033.vdocuments.net/reader033/viewer/2022052307/554bbab1b4c90594278b4c7c/html5/thumbnails/36.jpg)
THE ECOSYSTEM
• Shipping structured and typed facts without the ecosystem is a no-go
•On release, new features should work everywhere
36Monday, 21 May 12
![Page 37: Daniel Pittman - Platform Team Presentation - PuppetCamp LA '12](https://reader033.vdocuments.net/reader033/viewer/2022052307/554bbab1b4c90594278b4c7c/html5/thumbnails/37.jpg)
THE NEXT CHALLENGEWaldorf, kicking ass and taking names
37Monday, 21 May 12
![Page 38: Daniel Pittman - Platform Team Presentation - PuppetCamp LA '12](https://reader033.vdocuments.net/reader033/viewer/2022052307/554bbab1b4c90594278b4c7c/html5/thumbnails/38.jpg)
EXPERIMENT ONEWe are going to fix some high-voted tickets
38Monday, 21 May 12
![Page 39: Daniel Pittman - Platform Team Presentation - PuppetCamp LA '12](https://reader033.vdocuments.net/reader033/viewer/2022052307/554bbab1b4c90594278b4c7c/html5/thumbnails/39.jpg)
VOTES SHAPE THE ROADMAP
•We said votes matter before
• It wasn’t really true
• I don’t expect you to believe me this time...
• ...so we are gonna fix tickets, then ask you to believe us
39Monday, 21 May 12
![Page 40: Daniel Pittman - Platform Team Presentation - PuppetCamp LA '12](https://reader033.vdocuments.net/reader033/viewer/2022052307/554bbab1b4c90594278b4c7c/html5/thumbnails/40.jpg)
VOTES SHAPE THE ROADMAP
•We want community input into the roadmap
• This seems a solid choice
• Success is that votes get used by the community
• ...and that we use them to shape the roadmap!
40Monday, 21 May 12
![Page 41: Daniel Pittman - Platform Team Presentation - PuppetCamp LA '12](https://reader033.vdocuments.net/reader033/viewer/2022052307/554bbab1b4c90594278b4c7c/html5/thumbnails/41.jpg)
SCHEDULE TRANSPARENCY
41Monday, 21 May 12
![Page 42: Daniel Pittman - Platform Team Presentation - PuppetCamp LA '12](https://reader033.vdocuments.net/reader033/viewer/2022052307/554bbab1b4c90594278b4c7c/html5/thumbnails/42.jpg)
REDMINE “ACCEPTED” TICKETSThis is the scrum “unsorted product backlog”
42Monday, 21 May 12
![Page 43: Daniel Pittman - Platform Team Presentation - PuppetCamp LA '12](https://reader033.vdocuments.net/reader033/viewer/2022052307/554bbab1b4c90594278b4c7c/html5/thumbnails/43.jpg)
REDMINE “3.X” TARGET VERSIONThis is “we might fix it before 4.0.0”
43Monday, 21 May 12
![Page 44: Daniel Pittman - Platform Team Presentation - PuppetCamp LA '12](https://reader033.vdocuments.net/reader033/viewer/2022052307/554bbab1b4c90594278b4c7c/html5/thumbnails/44.jpg)
SAME THING!
44Monday, 21 May 12
![Page 45: Daniel Pittman - Platform Team Presentation - PuppetCamp LA '12](https://reader033.vdocuments.net/reader033/viewer/2022052307/554bbab1b4c90594278b4c7c/html5/thumbnails/45.jpg)
GONNA FIX THAT UP
• Target open tickets at the next numeric version
•Means “trying to fix for that release”
• Still shipping time-based product, so things will miss
45Monday, 21 May 12
![Page 46: Daniel Pittman - Platform Team Presentation - PuppetCamp LA '12](https://reader033.vdocuments.net/reader033/viewer/2022052307/554bbab1b4c90594278b4c7c/html5/thumbnails/46.jpg)
OTHER EXPERIMENTSYou bring ‘em, We try ‘em
46Monday, 21 May 12
![Page 47: Daniel Pittman - Platform Team Presentation - PuppetCamp LA '12](https://reader033.vdocuments.net/reader033/viewer/2022052307/554bbab1b4c90594278b4c7c/html5/thumbnails/47.jpg)
TECH FOR WALDORFThis is all speculative, no promises.
47Monday, 21 May 12
![Page 48: Daniel Pittman - Platform Team Presentation - PuppetCamp LA '12](https://reader033.vdocuments.net/reader033/viewer/2022052307/554bbab1b4c90594278b4c7c/html5/thumbnails/48.jpg)
SYSTEM MODULE PATH
•Modules can move fast
• Batteries-included is great
• Combine them!
• Best of both worlds
48Monday, 21 May 12
![Page 49: Daniel Pittman - Platform Team Presentation - PuppetCamp LA '12](https://reader033.vdocuments.net/reader033/viewer/2022052307/554bbab1b4c90594278b4c7c/html5/thumbnails/49.jpg)
STATIC COMPILER
•Missed Telly, but only just
• Content reference, not URI
• Single file catalog?
• Easier push model?
49Monday, 21 May 12
![Page 50: Daniel Pittman - Platform Team Presentation - PuppetCamp LA '12](https://reader033.vdocuments.net/reader033/viewer/2022052307/554bbab1b4c90594278b4c7c/html5/thumbnails/50.jpg)
STRUCTURED FACTS
• Really, structured and typed
• JSON is the template for supported types and structures
• Full ecosystem support
• Third party facts only, initially
50Monday, 21 May 12
![Page 51: Daniel Pittman - Platform Team Presentation - PuppetCamp LA '12](https://reader033.vdocuments.net/reader033/viewer/2022052307/554bbab1b4c90594278b4c7c/html5/thumbnails/51.jpg)
BETTER GRAPH PROCESSING
• Improve graph handling in the Puppet Agent
• Fix the “anchor” pattern
• Improves from O(N^2) worst case to O(N)
• Allows future improvements to the catalog and graph
51Monday, 21 May 12
![Page 52: Daniel Pittman - Platform Team Presentation - PuppetCamp LA '12](https://reader033.vdocuments.net/reader033/viewer/2022052307/554bbab1b4c90594278b4c7c/html5/thumbnails/52.jpg)
BETTER ENVIRONMENTS
•Different versions of a type in different environments
• Turns out that is pretty hard (thanks, Ruby)
•We will make it easy
• Fix performance cost too
52Monday, 21 May 12
![Page 53: Daniel Pittman - Platform Team Presentation - PuppetCamp LA '12](https://reader033.vdocuments.net/reader033/viewer/2022052307/554bbab1b4c90594278b4c7c/html5/thumbnails/53.jpg)
CLEANER, DOCUMENTED CODE
• Easier to use Puppet as a library or extend it
• Better API definitions
• Richer integrations
53Monday, 21 May 12
![Page 54: Daniel Pittman - Platform Team Presentation - PuppetCamp LA '12](https://reader033.vdocuments.net/reader033/viewer/2022052307/554bbab1b4c90594278b4c7c/html5/thumbnails/54.jpg)
MY REAL GOAL
54Monday, 21 May 12
![Page 55: Daniel Pittman - Platform Team Presentation - PuppetCamp LA '12](https://reader033.vdocuments.net/reader033/viewer/2022052307/554bbab1b4c90594278b4c7c/html5/thumbnails/55.jpg)
BUILD A 10× TEAM...and let them work with the community to be awesome!
55Monday, 21 May 12
![Page 56: Daniel Pittman - Platform Team Presentation - PuppetCamp LA '12](https://reader033.vdocuments.net/reader033/viewer/2022052307/554bbab1b4c90594278b4c7c/html5/thumbnails/56.jpg)
THANK YOU ALLPlease tweet your thanks to @MediaTemple for hosting
#PuppetCampLA 2012
56Monday, 21 May 12