13. Certification program
• Compile your application code. Getting the latest version of
any recent code changes from other developers is purely
optional and not a requirement for certification.
• Launch the application or website that has just been
compiled.
• Cause one code path in the code you're checking in to be
executed. The preferred way to do this is with ad-hoc
manual testing of the simplest possible case for the feature
in question. Omit this step if the code change was less than
five lines, or if, in the developer's professional opinion, the
code change could not possibly result in an error.
• Check the code changes into your version control system.
http://blog.codinghorror.com/the-works-on-my-machine-certification-program/
20. The provisioning tool
• It configures the machine (installs stuff, push
config files, etc.)
– Puppet
– Chef
– Ansible
– Salt
– … ?
21. The deployment tool
• It pushes the project on the server (&
configures it, runs migration, clears caches, …)
– Capistrano (and it can deploy non ruby
applications)
– Two ways informations transferts (DB sync, logs…)
28. • Simple (its just Yaml)
• Agent less
• Runs on every dev machine (python +
openssh, yeah that means you don’t need
ruby)
• Push based
• Made in Durham
46. • Don’t: Make snowflake VM : you become
dependant of the VM management tool
• Do: Separate provisioning
• Don’t: Use Vagrant default SSH key in
production !
• Don’t: Separate dev & ops
• Don’t: Try to eliminate admin sys (you need
hero)
• Do: Use same environment for Dev/test/prod