Commit 16186098 authored by Xavier Thompson's avatar Xavier Thompson

WIP theia resilient: add comments and import parts

parent 1f47afc7
...@@ -19,15 +19,15 @@ md5sum = df9548360119b698568694a037ec9c76 ...@@ -19,15 +19,15 @@ md5sum = df9548360119b698568694a037ec9c76
[instance-theia.cfg.jinja2.in] [instance-theia.cfg.jinja2.in]
filename = instance-theia.cfg.jinja2.in filename = instance-theia.cfg.jinja2.in
md5sum = 59c2a5a061d8a2427d4e2d5d10780220 md5sum = be9b217852da24d31ccc6d7c7a26a828
[instance-theia-import.cfg.in] [instance-theia-import.cfg.in]
filename = instance-theia-import.cfg.in filename = instance-theia-import.cfg.in
md5sum = 45ef2827041459f897f9e9c45eb44832 md5sum = 0ef11db9d5037add58b6f52030279690
[instance-theia-export.cfg.in] [instance-theia-export.cfg.in]
filename = instance-theia-export.cfg.in filename = instance-theia-export.cfg.in
md5sum = 0277ee2f775cf26fc08a431bceafc530 md5sum = 84639ad3d48b864e5ed1a5456b6a4754
[instance-theia-resilient.cfg.jinja2] [instance-theia-resilient.cfg.jinja2]
filename = instance-theia-resilient.cfg.jinja2 filename = instance-theia-resilient.cfg.jinja2
......
...@@ -2,6 +2,10 @@ ...@@ -2,6 +2,10 @@
extends = ${theia:rendered} extends = ${theia:rendered}
${template-pbsready-export:rendered} ${template-pbsready-export:rendered}
# The resilient stack makes the 'resilient' instance
# request the 'export' instance with a 'namebase' parameter.
# The export template then expects to receive it in
# slap-parameter:namebase
parts += parts +=
monitor-base monitor-base
$${:theia-parts} $${:theia-parts}
...@@ -11,11 +15,14 @@ parts += ...@@ -11,11 +15,14 @@ parts +=
[slap-parameter] [slap-parameter]
namebase = ${slap-configuration:configuration.namebase} namebase = ${slap-configuration:configuration.namebase}
# The resilient stack periodically calls exporter:wrapper
# and then notifies the pull-backup instance that data is ready
# to be pulled from the export instance.
[exporter] [exporter]
recipe = slapos.cookbook:wrapper recipe = slapos.cookbook:wrapper
command-line = echo "hello" command-line = echo "hello"
wrapper-path = $${directory:bin}/$${slap-parameter:namebase}-exporter wrapper-path = $${directory:bin}/$${slap-parameter:namebase}-exporter
# wrapper parameter is needed by resilience stack # wrapper parameter is needed by resilient stack
wrapper = $${:wrapper-path} wrapper = $${:wrapper-path}
# Extends publish section with resilient parameters # Extends publish section with resilient parameters
......
...@@ -2,14 +2,29 @@ ...@@ -2,14 +2,29 @@
extends = ${theia:rendered} extends = ${theia:rendered}
${template-pbsready-import:rendered} ${template-pbsready-import:rendered}
parts += $${:theia-parts} parts +=
monitor-base
$${:theia-parts}
$${:theia-environment-parts}
# The resilient stack makes the 'resilient' instance
# request the 'import' instance with a 'namebase' parameter.
# The import template then expects to receive it in
# slap-parameter:namebase
[slap-parameter] [slap-parameter]
namebase = ${slap-configuration:configuration.namebase} namebase = ${slap-configuration:configuration.namebase}
# The resilient stack calls importer:wrapper when the import instance
# is notified that the backup files have just been pushed to it.
[importer] [importer]
recipe = slapos.cookbook:wrapper recipe = slapos.cookbook:wrapper
command-line = echo "goodbye" command-line = echo "goodbye"
wrapper-path = $${directory:bin}/$${slap-parameter:namebase}-exporter wrapper-path = $${directory:bin}/$${slap-parameter:namebase}-exporter
# wrapper parameter is needed by resilience stack # wrapper parameter is needed by resilient stack
wrapper = $${:wrapper-path} wrapper = $${:wrapper-path}
# Resilient connection parameters of import instance are published
# through the resilient stack.
# Extend resilient parameters with normal theia connection parameters
[resilient-publish-connection-parameter]
<= publish-connection-parameter
...@@ -148,7 +148,7 @@ bytes = 12 ...@@ -148,7 +148,7 @@ bytes = 12
[frontend-instance-port] [frontend-instance-port]
recipe = slapos.cookbook:free_port recipe = slapos.cookbook:free_port
minimum = 3000 minimum = 3000
maximum = 3499 maximum = 3100
ip = $${instance-parameter:ipv6-random} ip = $${instance-parameter:ipv6-random}
[frontend-instance-certificate] [frontend-instance-certificate]
...@@ -289,7 +289,7 @@ filename = $${:_buildout_section_name_} ...@@ -289,7 +289,7 @@ filename = $${:_buildout_section_name_}
[theia-service-port] [theia-service-port]
recipe = slapos.cookbook:free_port recipe = slapos.cookbook:free_port
minimum = 3500 minimum = 3500
maximum = 3999 maximum = 3600
ip = $${instance-parameter:ipv4-random} ip = $${instance-parameter:ipv4-random}
[theia-service] [theia-service]
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment