Automating software releases brian d foy August 24, 2004 Dallas/Ft. Worth Perl Mongers sponsored by Metallect
Everyone’s problems <ul><li>Software has problems </li></ul><ul><li>Problems suck time </li></ul><ul><li>Keep you from wha...
Automate <ul><li>Repetition </li></ul><ul><li>Dull bits </li></ul><ul><li>Discovery </li></ul><ul><li>Notification </li></...
Mechanics are easy <ul><li>Mechanics are easy </li></ul><ul><li>Simple matter of programming </li></ul><ul><li>Solutions a...
My problems <ul><li>Many Perl modules </li></ul><ul><li>Forgot things </li></ul><ul><li>Didn’t run tests </li></ul><ul><li...
Heal thyself! <ul><li>Find problems before users </li></ul><ul><li>Avoid embarrassment </li></ul><ul><li>Know on day -1 </...
release(1) <ul><li>Created a script </li></ul><ul><li>Used Perl </li></ul><ul><li>Started small </li></ul><ul><li>Got a bi...
Releasing is easy <ul><li>Have software </li></ul><ul><li>Want other people to use it </li></ul><ul><li>Just give it to th...
Oh no! <ul><li>Did not test software </li></ul><ul><li>Missing files </li></ul><ul><li>Old information </li></ul><ul><li>P...
Preparing is harder <ul><li>Squash bugs </li></ul><ul><li>Test code </li></ul><ul><li>Test distribution </li></ul><ul><li>...
Development Lifecycle <ul><li>Specify </li></ul><ul><li>Design </li></ul><ul><li>Implement </li></ul><ul><li>Test </li></u...
Steps <ul><li>One at a time </li></ul><ul><li>Requirements to move on </li></ul><ul><li>Check </li></ul><ul><li>Move on </...
Checking <ul><li>Different  </li></ul><ul><ul><li>types </li></ul></ul><ul><ul><li>times </li></ul></ul><ul><ul><li>reason...
Distribute <ul><li>Multiple uploads </li></ul><ul><li>Announcements </li></ul><ul><li>Automate it! </li></ul>
Computers can help <ul><li>Use your computer! </li></ul><ul><li>Figure out </li></ul><ul><ul><li>want  </li></ul></ul><ul>...
Module::Release <ul><li>Ken Williams refactored release(1) </li></ul><ul><li>Does the same thing </li></ul><ul><li>Write y...
Module::Release 2.x <ul><li>Easier </li></ul><ul><li>Pluggable </li></ul><ul><li>Shareable </li></ul><ul><li>Automatic </l...
Future additions <ul><li>Pre-flight </li></ul><ul><li>Tests </li></ul><ul><li>Distribution tests </li></ul><ul><li>Source ...
The End
Upcoming SlideShare
Loading in...5
×

Automating Software Releases (Dallas/Ft. Worth Perl Mongers 2004)

2,478

Published on

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
2,478
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
0
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Transcript of "Automating Software Releases (Dallas/Ft. Worth Perl Mongers 2004)"

  1. 1. Automating software releases brian d foy August 24, 2004 Dallas/Ft. Worth Perl Mongers sponsored by Metallect
  2. 2. Everyone’s problems <ul><li>Software has problems </li></ul><ul><li>Problems suck time </li></ul><ul><li>Keep you from what’s important </li></ul><ul><li>It’s not just the code </li></ul>
  3. 3. Automate <ul><li>Repetition </li></ul><ul><li>Dull bits </li></ul><ul><li>Discovery </li></ul><ul><li>Notification </li></ul><ul><li>Monkey work </li></ul>
  4. 4. Mechanics are easy <ul><li>Mechanics are easy </li></ul><ul><li>Simple matter of programming </li></ul><ul><li>Solutions are not so easy </li></ul>
  5. 5. My problems <ul><li>Many Perl modules </li></ul><ul><li>Forgot things </li></ul><ul><li>Didn’t run tests </li></ul><ul><li>Stale source control </li></ul><ul><li>POD errors </li></ul>
  6. 6. Heal thyself! <ul><li>Find problems before users </li></ul><ul><li>Avoid embarrassment </li></ul><ul><li>Know on day -1 </li></ul><ul><li>Save time </li></ul><ul><li>Develop process </li></ul>
  7. 7. release(1) <ul><li>Created a script </li></ul><ul><li>Used Perl </li></ul><ul><li>Started small </li></ul><ul><li>Got a bit ugly </li></ul><ul><li>Put on CPAN </li></ul>
  8. 8. Releasing is easy <ul><li>Have software </li></ul><ul><li>Want other people to use it </li></ul><ul><li>Just give it to them </li></ul>
  9. 9. Oh no! <ul><li>Did not test software </li></ul><ul><li>Missing files </li></ul><ul><li>Old information </li></ul><ul><li>People complain! </li></ul>
  10. 10. Preparing is harder <ul><li>Squash bugs </li></ul><ul><li>Test code </li></ul><ul><li>Test distribution </li></ul><ul><li>Sync source control </li></ul><ul><li>Update information </li></ul>
  11. 11. Development Lifecycle <ul><li>Specify </li></ul><ul><li>Design </li></ul><ul><li>Implement </li></ul><ul><li>Test </li></ul><ul><li>Accept </li></ul><ul><li>Release </li></ul>
  12. 12. Steps <ul><li>One at a time </li></ul><ul><li>Requirements to move on </li></ul><ul><li>Check </li></ul><ul><li>Move on </li></ul>
  13. 13. Checking <ul><li>Different </li></ul><ul><ul><li>types </li></ul></ul><ul><ul><li>times </li></ul></ul><ul><ul><li>reasons </li></ul></ul><ul><li>Automate it! </li></ul>
  14. 14. Distribute <ul><li>Multiple uploads </li></ul><ul><li>Announcements </li></ul><ul><li>Automate it! </li></ul>
  15. 15. Computers can help <ul><li>Use your computer! </li></ul><ul><li>Figure out </li></ul><ul><ul><li>want </li></ul></ul><ul><ul><li>need </li></ul></ul><ul><ul><li>should </li></ul></ul><ul><li>Script checks for it </li></ul>
  16. 16. Module::Release <ul><li>Ken Williams refactored release(1) </li></ul><ul><li>Does the same thing </li></ul><ul><li>Write your own scripts </li></ul><ul><ul><li>Chris Nandor </li></ul></ul><ul><li>Add your own functions </li></ul><ul><ul><li>Module::Release::Subversion </li></ul></ul>
  17. 17. Module::Release 2.x <ul><li>Easier </li></ul><ul><li>Pluggable </li></ul><ul><li>Shareable </li></ul><ul><li>Automatic </li></ul><ul><li>Not Perl specific </li></ul>
  18. 18. Future additions <ul><li>Pre-flight </li></ul><ul><li>Tests </li></ul><ul><li>Distribution tests </li></ul><ul><li>Source control plugins </li></ul><ul><li>Upload plugins </li></ul><ul><li>Little language </li></ul>
  19. 19. The End

×