Назад | Перейти на главную страницу

Ссылка на каждый заголовок в массиве заголовков

В Puppet 2.7.11 мне нужно создать несколько символических ссылок из /usr/local/bin к /usr/bin и хочешь быть умным:

class containing_class {
    file { [ "/usr/local/bin/job", "/usr/local/bin/jstart",
             "/usr/local/bin/jstop", "/usr/local/bin/jsub"]:
        ensure => link,
        target => regsubst(name, "^/usr/local/bin/", "/usr/bin/")
    }

Тем не мение, name заставляет цели ссылок быть name, $name и $title использовать containing_class (!) вместо этого и $path значение $PATH.

Как я могу сослаться на заголовок / путь к отдельному файлу в вызове?

Что ж, это может быть не то, что вам нужно, но должно работать:

class containing_class {
    define bin_link {
        file { $title:
            ensure => link,
            target => regsubst($title, "^/usr/local/bin/", "/usr/bin/"),
        }
    }
    bin_link { [ "/usr/local/bin/job", "/usr/local/bin/jstart",
                 "/usr/local/bin/jstop", "/usr/local/bin/jsub"]: }
}