[buildout] extends = ../../component/dropbear/buildout.cfg ../../component/gzip/buildout.cfg ../../component/rdiff-backup/buildout.cfg ../../component/rsync/buildout.cfg parts = rdiff-backup pbsready pbsready-import pbsready-export template-replicated template-parts instance-frozen # needed tools for resiliency gzip #---------------- #-- #-- Profiles needed to setup automated backup and recovery. #-- [pbsready] # Common parts for pbsready-import and pbsready-export. # Provides rdiff-backup, notification queue, ssh authentication, # dropbear server, and the bully script. recipe = slapos.recipe.template url = ${:_profile_base_location_}/pbsready.cfg.in output = ${buildout:directory}/pbsready.cfg md5sum = 570e0b54c97d510befa2ea981c1e90e0 mode = 0644 [pbsready-import] # An import instance has an importer script, which is called # by the parent PBS instance when the dump content is propagated. recipe = slapos.recipe.template url = ${:_profile_base_location_}/pbsready-import.cfg.in output = ${buildout:directory}/pbsready-import.cfg md5sum = cc9c776500ccd07cb51969beb68ffcda mode = 0644 [pbsready-export] # An export instance has an exporter script, and communicates # to parent PBS instances to deliver the exported dump. recipe = slapos.recipe.template url = ${:_profile_base_location_}/pbsready-export.cfg.in output = ${buildout:directory}/pbsready-export.cfg md5sum = 25d05b3929fb4c6cf275866bad678d6a mode = 0644 [template-pull-backup] recipe = slapos.recipe.template url = ${:_profile_base_location_}/instance-pull-backup.cfg.in output = ${buildout:directory}/instance-pull-backup.cfg md5sum = c49e5911b94078d87b94507fb4efc93b mode = 0644 [template-replicated] recipe = slapos.recipe.download url = ${:_profile_base_location_}/template-replicated.cfg.in md5sum = c762a625f65193bc8a570b4d56a0d08c mode = 0644 destination = ${buildout:directory}/template-replicated.cfg.in [template-parts] recipe = slapos.recipe.download url = ${:_profile_base_location_}/template-parts.cfg.in md5sum = c942f82552fcb42fc74a5f896e0cd5f3 mode = 0644 destination = ${buildout:directory}/template-parts.cfg.in [instance-frozen] # When an instance is detected as broken, its software type is changed to "frozen". # On the next run of slapgrid-cp, the buildout profile is replaced by instance-frozen.cfg, # which will run without removing any content because it raises an error. recipe = slapos.recipe.template url = ${:_profile_base_location_}/instance-frozen.cfg.in md5sum = d21472f0e58f928fb827f2cbf22c4d4a output = ${buildout:directory}/instance-frozen.cfg [versions] # Pin Jinja2 to 2.6, as 2.7 breaks current code Jinja2 = 2.6 # ... And newer s.r.template requires Jinja2 >= 2.7 slapos.recipe.template = 2.4.2