Diese Präsentation wurde erfolgreich gemeldet.
Wir verwenden Ihre LinkedIn Profilangaben und Informationen zu Ihren Aktivitäten, um Anzeigen zu personalisieren und Ihnen relevantere Inhalte anzuzeigen. Sie können Ihre Anzeigeneinstellungen jederzeit ändern.
Practical project automation
          Reinout van Rees
 http://www.thehealthagency.com/
     http://reinout.vanrees.org
Practical project automation
• Practical: tips & pointers, illustrated with examples from
  The Health Agency
• Project: y...
Project + repeatable + automatable
•   Bunch of code
•   Bunch of configuration
•   Probably scripts
•   Collect, inititia...
z3c.recipe.usercrontab
[apachelogcheck-cronjob]
recipe = z3c.recipe.usercrontab
times = 39 12 * * *
command = ${apachelogc...
tha.recipe.logcheck
Quality control: buildbot + tests
•   python setup.py test or bin/test
•   The jackpot: buildbot
•   Oops, I forgot aaaa
•...
Buildbot screenshot
Quality control: buildbot + tests
•   python setup.py test or bin/test
•   The jackpot: buildbot
•   Oops, I forgot aaaa
•...
Quality: make it easy to do the good thing
•   Small scripts: python instead of shell?
•   Automate away boring fault-attr...
zest.releaser
tha.coverage
Quality: make it easy to do the good thing
•   Small scripts: python instead of shell?
•   Automate away boring fault-attr...
Skeleton for namespaced library
Closing comments
•   Automation is nice work. Fun.
•   It ensures quality.
•   Get into the habit: do it also for your own...
Nächste SlideShare
Wird geladen in …5
×

Practical project automation

1.757 Aufrufe

Veröffentlicht am

Talk for the Dutch python user group ("PUN") meeting in Veenendaal, May 2009. Goal: encourage you to automate your projects more.

Veröffentlicht in: Technologie, Business
  • Als Erste(r) kommentieren

  • Gehören Sie zu den Ersten, denen das gefällt!

Practical project automation

  1. 1. Practical project automation Reinout van Rees http://www.thehealthagency.com/ http://reinout.vanrees.org
  2. 2. Practical project automation • Practical: tips & pointers, illustrated with examples from The Health Agency • Project: your projects are important, right? • Automation: get help from the computer
  3. 3. Project + repeatable + automatable • Bunch of code • Bunch of configuration • Probably scripts • Collect, inititialize, convert, (compile) • => BUILD TOOLS • Make, scons, a.a.p., buildout • Write buildout extensions • Example: z3c.recipe.usercrontab • Example: tha.recipe.logcheck
  4. 4. z3c.recipe.usercrontab [apachelogcheck-cronjob] recipe = z3c.recipe.usercrontab times = 39 12 * * * command = ${apachelogcheck:command}
  5. 5. tha.recipe.logcheck
  6. 6. Quality control: buildbot + tests • python setup.py test or bin/test • The jackpot: buildbot • Oops, I forgot aaaa • Oops, I forgot bbbb • Oops, I did cccc • Example: content (xml docbook) checking
  7. 7. Buildbot screenshot
  8. 8. Quality control: buildbot + tests • python setup.py test or bin/test • The jackpot: buildbot • Oops, I forgot aaaa • Oops, I forgot bbbb • Oops, I did cccc • Example: content (xml docbook) checking
  9. 9. Quality: make it easy to do the good thing • Small scripts: python instead of shell? • Automate away boring fault-attracting tasks • Example: zest.releaser • Example: tha.coverage • Skeletons (“pastescript”, but see ZopeSkel) • Example: in-company skeletons
  10. 10. zest.releaser
  11. 11. tha.coverage
  12. 12. Quality: make it easy to do the good thing • Small scripts: python instead of shell? • Automate away boring fault-attracting tasks • Example: zest.releaser • Example: tha.coverage • Skeletons (“pastescript”, but see ZopeSkel) • Example: in-company skeletons
  13. 13. Skeleton for namespaced library
  14. 14. Closing comments • Automation is nice work. Fun. • It ensures quality. • Get into the habit: do it also for your own private tasks • It pays of in spades • So: automate your projects • http://reinout.vanrees.org/weblog • (Which I also largely automated, of course)

×