my$query="SELECT network_interface_uuid FROM network_interfaces WHERE network_interface_host_uuid = ".$anvil->Database->quote($host_uuid)." AND network_interface_name = ".$anvil->Database->quote($active_interface).";";
anvil-join-anvil \- This tool assembles two subnodes into a node.
anvil-join-anvil \- This tool assembles two subnodes into a node.
.SHSYNOPSIS
.SHSYNOPSIS
@ -9,10 +9,6 @@ anvil-join-anvil \- This tool assembles two subnodes into a node.
.SHDESCRIPTION
.SHDESCRIPTION
This program takes two subnodes and merges them into an Anvil! node. This can be two new subnodes, or an existing subnode with a replacement subnode after a subnode failure.
This program takes two subnodes and merges them into an Anvil! node. This can be two new subnodes, or an existing subnode with a replacement subnode after a subnode failure.
.TP
.TP
.BNote:
.TP
As if this time, this tool only runs from a job registered in the database. As such, the job must be recorded using the Striker web interface
.TP
.SHOPTIONS
.SHOPTIONS
.TP
.TP
\-?, \-h, \fB\-\-help\fR
\-?, \-h, \fB\-\-help\fR
@ -25,9 +21,25 @@ When logging, record sensitive data, like passwords.
Set the log level to 1, 2 or 3 respectively. Be aware that level 3 generates a significant amount of log data.
Set the log level to 1, 2 or 3 respectively. Be aware that level 3 generates a significant amount of log data.
.SS"Commands:"
.SS"Commands:"
.TP
.TP
\fB\-\-as\-machine\fR <'node1' or 'node2'>
.TP
When using \fB\-\-rejoin\fR, this is the subnode role that this host will take.
.TP
.BNOTE:
.TP
The previous subnode that held this position will be purged! All data associated with the previous subnode will be deleted from the Anvil! database.
.TP
\fB\-\-job\-uuid\fR
\fB\-\-job\-uuid\fR
.TP
.TP
This is the job UUID that will be run.
This is the job UUID that will be run.
.TP
\fB\-\-manifest\fR <name or uuid>
.TP
If this is given, then this host will be joined to the manifest. This is required if \fB\-\-rejoin\fR is used.
.TP
\fB\-\-rejoin\fR
.TP
If this is set, the host will be (re)joined to an existing Anvil! node. This is used to bring this host into an Anvil! subnode, typically after a subnode failure / rebuild.
.IP
.IP
.SHAUTHOR
.SHAUTHOR
Written by Madison Kelly, Alteeve staff and the Anvil! project contributors.
Written by Madison Kelly, Alteeve staff and the Anvil! project contributors.
<keyname="job_0166">* Please enter a valid amount up to: [#!variable!ram_total!# / #!variable!ram_available!#].</key>
<keyname="job_0166">* Please enter a valid amount up to: [#!variable!ram_total!# / #!variable!ram_available!#].</key>
<keyname="job_0167">-=] Available RAM: [#!variable!ram_available!#]
<keyname="job_0167">-=] Available RAM: [#!variable!ram_available!#]
@ -1765,6 +1765,7 @@ Note: This is a permanent action! If you protect this server again later, a full
<keyname="job_0482">Waiting for the peer's hostname to be: [#!variable!peer_name!#] in the database.</key>
<keyname="job_0482">Waiting for the peer's hostname to be: [#!variable!peer_name!#] in the database.</key>
<keyname="job_0483">The peer's hostname is: [#!variable!peer_name!#], proceeding.</key>
<keyname="job_0483">The peer's hostname is: [#!variable!peer_name!#], proceeding.</key>
<keyname="job_0484">The peer's hostname is currently: [#!variable!old_peer_name!#], waiting for it to be changed to: [#!variable!peer_name!#]... Will check again shortly.</key>
<keyname="job_0484">The peer's hostname is currently: [#!variable!old_peer_name!#], waiting for it to be changed to: [#!variable!peer_name!#]... Will check again shortly.</key>
<keyname="job_0485">The corosync authkey file does not exist locally, but it does exist on the peer. Copying the file to here.</key>
@ -2734,6 +2735,10 @@ The file: [#!variable!file!#] needs to be updated. The difference is:
<keyname="log_0848">The fence level exists and it's the same fence agent, nothing to do.</key>
<keyname="log_0848">The fence level exists and it's the same fence agent, nothing to do.</key>
<keyname="log_0849">The fence level exists, but it's for the fence name: [#!variable!old_fence_name!#], agent: [#!variable!old_fence_agent!#], deleting it.</key>
<keyname="log_0849">The fence level exists, but it's for the fence name: [#!variable!old_fence_name!#], agent: [#!variable!old_fence_agent!#], deleting it.</key>
<keyname="log_0850">Creating the fence level: [#!variable!key_name!#] for the agent: [#!variable!fence_agent!#] using the device(s): [#!variable!devices!#]</key>
<keyname="log_0850">Creating the fence level: [#!variable!key_name!#] for the agent: [#!variable!fence_agent!#] using the device(s): [#!variable!devices!#]</key>
<keyname="log_0851">The key in: [#!variable!known_hosts!#] for: [#!variable!target!#] of the type: [#!variable!key_type!#] has changed.
The key in the database has been updated, so we're going to swap the key. The change is;
old key: [#!variable!old_key!#]
new key: [#!variable!new_key!#]</key>
<!-- Messages for users (less technical than log entries), though sometimes used for logs, too. -->
<!-- Messages for users (less technical than log entries), though sometimes used for logs, too. -->
<keyname="message_0001">The host name: [#!variable!target!#] does not resolve to an IP address.</key>
<keyname="message_0001">The host name: [#!variable!target!#] does not resolve to an IP address.</key>