On 30 November 2012 17:37, Schofield <dbschofi...@gmail.com> wrote:
> I am at the beginning of merging the traditional OS/Middleware update
> process with application development release process.  The goal is to be
> able to test a complete versioned OS/Middleware/Application stack as it
> moves through dev/test/qa/prod environments.  The key here is that entire
> stack is labeled under a single version. In other terms, the node and
> everything on it is aligned under a single version. Right now the
> OS/Middleware is managed by puppet.  The application release process is not.
> I'm hoping some folks would like to comment on the following questions I am
> pondering.
>
> How to best version puppet classes and control the classification of nodes
> based on the version of the node?

Although I've not done it myself I've seen people use Puppet
environments for versioning. You can also use environment variables on
the nodes to help with classification.

> Are there ENC's that integrate with SVN/GIT that make this easy?
> Should application deployment be brought under the control of puppet?
> If so how do you easily do this without burdening applications developers
> with having to learn something about or have access to puppet?

The vcsrepo module (https://forge.puppetlabs.com/puppetlabs/vcsrepo)
supports defining git/bzr/svn checkouts, but another approach would be
to package your applications up as system packages (debs for
debian/ubuntu, rpms for redhat/centos). This has a number of nice
advantages, including making managing the application version just a
matter of defining a package resource in puppet.

> Is there a puppet API that an existing application release processes can
> leverage to trigger OS/Middleware updates when an application version is
> updated?

So, assuming you do package your applications up as system packages as
described then triggering updates to supporting components could be
done in the package dependencies, or it could be done with Puppet
requires, assuming the dependencies are on the same node. Cross node
dependencies are harder however. Some ideas for that thorny problem:

https://github.com/jamtur01/puppet-noah/
http://www.slideshare.net/lusis/beyond-the-node-arkestration-with-noah

G

>
> Looking forward to your comments.
>
> --
> You received this message because you are subscribed to the Google Groups
> "Puppet Users" group.
> To view this discussion on the web visit
> https://groups.google.com/d/msg/puppet-users/-/vAGrAj_5qpUJ.
> To post to this group, send email to puppet-users@googlegroups.com.
> To unsubscribe from this group, send email to
> puppet-users+unsubscr...@googlegroups.com.
> For more options, visit this group at
> http://groups.google.com/group/puppet-users?hl=en.



--
Gareth Rushgrove
@garethr

devopsweekly.com
morethanseven.net
garethrushgrove.com

-- 
You received this message because you are subscribed to the Google Groups 
"Puppet Users" group.
To post to this group, send email to puppet-users@googlegroups.com.
To unsubscribe from this group, send email to 
puppet-users+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/puppet-users?hl=en.

Reply via email to