diff --git a/check_process b/check_process index 0525f7b..8d574fc 100644 --- a/check_process +++ b/check_process @@ -4,6 +4,7 @@ is_public=1 node_type="client" bootstrap_expect="1" + retry_join="192.168.1.100" server_ip="192.168.1.100" ; Checks pkg_linter=1 @@ -24,6 +25,7 @@ is_public=1 node_type="server" bootstrap_expect="1" + retry_join="192.168.1.100" server_ip="none..." ; Checks pkg_linter=1 diff --git a/conf/server.hcl b/conf/server.hcl index 0f937b5..7310a15 100644 --- a/conf/server.hcl +++ b/conf/server.hcl @@ -38,7 +38,7 @@ server { # Similar to start_join but allows retrying a join if the first attempt fails. This is useful for cases # where we know the address will become available eventually. -# retry_join = [] + retry_join = ["__RETRY_JOIN__"] # The time to wait between join attempts. Defaults to 30s. retry_interval = "30s" diff --git a/manifest.json b/manifest.json index 6581c06..89ee8f3 100644 --- a/manifest.json +++ b/manifest.json @@ -57,6 +57,15 @@ "en": "For production, it's recommanded to have 3 to 5 server nodes." } }, + { + "name": "retry_join", + "type": "string", + "ask": { + "en": "[Server only] What is the IP of another server to join ?" + }, + "example": "192.168.1.100", + "optional": true + }, { "name": "server_ip", "type": "string", diff --git a/scripts/install b/scripts/install index 686e9a2..2335f96 100755 --- a/scripts/install +++ b/scripts/install @@ -29,6 +29,7 @@ path_url="/" is_public=$YNH_APP_ARG_IS_PUBLIC node_type=$YNH_APP_ARG_NODE_TYPE bootstrap_expect=$YNH_APP_ARG_BOOTSTRAP_EXPECT +retry_join=$YNH_APP_ARG_RETRY_JOIN server_ip=$YNH_APP_ARG_SERVER_IP app=$YNH_APP_INSTANCE_NAME @@ -54,6 +55,7 @@ ynh_app_setting_set --app=$app --key=domain --value=$domain ynh_app_setting_set --app=$app --key=path --value=$path_url ynh_app_setting_set --app=$app --key=node_type --value=$node_type ynh_app_setting_set --app=$app --key=bootstrap_expect --value=$bootstrap_expect +ynh_app_setting_set --app=$app --key=retry_join --value=$retry_join ynh_app_setting_set --app=$app --key=server_ip --value=$server_ip ynh_app_setting_set --app=$app --key=lxc_bridge --value=$lxc_bridge ynh_app_setting_set --app=$app --key=plage_ip --value=$plage_ip diff --git a/scripts/upgrade b/scripts/upgrade index e54f780..f75b4c0 100644 --- a/scripts/upgrade +++ b/scripts/upgrade @@ -22,8 +22,9 @@ path_url=$(ynh_app_setting_get --app=$app --key=path) config_path=$(ynh_app_setting_get --app=$app --key=config_path) datadir=$(ynh_app_setting_get --app=$app --key=datadir) node_type=$(ynh_app_setting_get --app=$app --key=node_type) -server_ip=$(ynh_app_setting_get --app=$app --key=server_ip) bootstrap_expect=$(ynh_app_setting_get --app=$app --key=bootstrap_expect) +retry_join=$(ynh_app_setting_get --app=$app --key=retry_join) +server_ip=$(ynh_app_setting_get --app=$app --key=server_ip) http_port=$(ynh_app_setting_get --app=$app --key=http_port) rpc_port=$(ynh_app_setting_get --app=$app --key=rpc_port) serf_port=$(ynh_app_setting_get --app=$app --key=serf_port)