O slideshow foi denunciado.
Utilizamos seu perfil e dados de atividades no LinkedIn para personalizar e exibir anúncios mais relevantes. Altere suas preferências de anúncios quando desejar.
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...
Próximos SlideShares
Carregando em…5
×

Practical project automation

1.758 visualizações

Publicada em

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

Publicada em: Tecnologia, Negócios
  • Seja o primeiro a comentar

  • Seja a primeira pessoa a gostar disto

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)

×