Ich plane, die Möglichkeit zu implementieren, mehrere SSH-Schlüssel pro Benutzer hinzuzufügen. Für einen einzelnen Schlüssel, habe ich:Array-Iteration mit Position in Puppe
if ($sshkey) {
ssh_authorized_key { $resourcename:
ensure => 'present',
type => 'ssh-rsa',
key => '$sshkey',
user => $title,
require => User[$title],
}
}
Für mehrere Schlüssel, dachte ich, dass dies funktionieren könnte:
if ($sshkeyarray != []) {
$sshkeyarray.each |String $singlesshkey| {
ssh_authorized_key { $resourcename:
ensure => 'present',
type => 'ssh-rsa',
key => '$singlesshkey',
user => $title,
require => User[$title],
}
}
}
Aber die resource kann nur einmal verwendet werden, so möchte ich Namen geben wie "resourcename_1" für den ersten ssh-Schlüssel und "resourcename_n" für den n-ten Schlüssel.
Wie kann ich das tun? Kann ich die Position des singlesshkey aus dem Array bekommen und sie zum Resourcename hinzufügen?
Perfekt, danke! – Studentus
Wow, das ist ein Detail der 'each()' Funktion, von der ich vorher noch nichts wusste! Ich habe heute etwas Neues gelernt. –