Add standard set of run stages.
Many modules I'm working on need a standard but relatively granular location in the catalog. For example, any module that configures the packaging system should run "early" Add the following stages which have inter-dependencies in the top to bottom order listed: * setup * deploy * runtime * setup_infra * deploy_infra * main * setup_app * deploy_app
This commit is contained in:
parent
6964d13b26
commit
6f8b78cc67
2 changed files with 46 additions and 0 deletions
|
@ -13,5 +13,6 @@
|
|||
# [Remember: No empty lines between comments and class definition]
|
||||
class stdlib {
|
||||
|
||||
class { 'stdlib::stages': }
|
||||
|
||||
}
|
||||
|
|
|
@ -0,0 +1,45 @@
|
|||
# Class: stdlib::stages
|
||||
#
|
||||
# This class manages a standard set of Run Stages for Puppet.
|
||||
#
|
||||
# The high level stages are (In order):
|
||||
#
|
||||
# * setup
|
||||
# * deploy
|
||||
# * runtime
|
||||
# * setup_infra
|
||||
# * deploy_infra
|
||||
# * main
|
||||
# * setup_app
|
||||
# * deploy_app
|
||||
#
|
||||
# Parameters:
|
||||
#
|
||||
# Actions:
|
||||
#
|
||||
# Declares various run-stages for deploying infrastructure,
|
||||
# language runtimes, and application layers.
|
||||
#
|
||||
# Requires:
|
||||
#
|
||||
# Sample Usage:
|
||||
#
|
||||
# node default {
|
||||
# include stdlib::stages
|
||||
# class { java: stage => 'runtime' }
|
||||
# }
|
||||
#
|
||||
class stdlib::stages {
|
||||
|
||||
stage { 'setup': before => Stage['deploy'] }
|
||||
stage { 'deploy': before => Stage['setup_infra'] }
|
||||
stage { 'runtime':
|
||||
require => Stage['deploy'],
|
||||
before => Stage['setup_infra'],
|
||||
}
|
||||
stage { 'setup_infra': before => Stage['deploy_infra'] }
|
||||
stage { 'deploy_infra': before => Stage['main'] }
|
||||
stage { 'setup_app': require => Stage['main'] }
|
||||
stage { 'deploy_app': require => Stage['setup_app'] }
|
||||
|
||||
}
|
Loading…
Reference in a new issue