The document discusses practical ways to automate projects through tools like buildout, Jenkins, and zest.releaser. It advocates automating builds, tests, deployment, releases, and other routine tasks to reduce errors, manual work, and make it easier to do things correctly. Specific automation examples provided include generating Apache config files, setting up cronjobs, running quality checks, and releasing Python packages.
2. Practical project
automation
• Reinout van Rees
• Nelen & Schuurmans
• Utrecht
• Water consultancy
• Lots of python and
django
donderdag 19 mei 2011
3. Project: more than code
• Projects are important
• Deployment
• Colleagues
• Rebuilding
• Solution: automation
donderdag 19 mei 2011
4. Generic idea: automation
• Cobbler’s children
• Automate your
projects
• Less manual work
• Less menial work
• Fewer errors
• More of the fun work
donderdag 19 mei 2011
5. Build automation
• ./configure;make
• Ant, maven
• Buildout (python)
• Single command to
get started
donderdag 19 mei 2011
6. Build tool: good spot for
more automation
• Most are extensible
• Examples:
• Apache config file
generation
• Setting up cronjobs
donderdag 19 mei 2011
14. Quality: make it easy to
do the right thing
• “I really should do x,
but it takes too much
time so I’ll skip it”
• Releasing packages
• Skeleton
donderdag 19 mei 2011
18. Practical project
automation
• Make it easier to do
the right thing: let
laziness work for you
• Automate your builds
• Automate tests
• Extend where
practical
donderdag 19 mei 2011