марионеточное имя узла с regex

Я выполняю марионеточные 3.7.3 на окна 8,1 клиентов, и это вытягивает в моем определении узла по умолчанию.

Я пытаюсь создать более обобщенное определение при помощи regex на группе узлов. Наша схема именования подобна: bldg-50zx022-1.domain.tld. Для моего определения узла я использую ниже, но я никогда не вижу информацию, когда я работаю puppet agent -td

node /^(bldg|BLDG)-\w{0,7}-\d+/ {
    info("inside node definition")
}

Я проверил, что мой regex является корректным использованием rubular.com. Когда я выполняю фактор, я получаю эти значения:

fqdn => BLDG-50ZX022-2.domain.tld
hostname => BLDG-50ZX022-2

Есть ли что-нибудь, что я могу сделать, чтобы заставить это работать?

0
задан 23 July 2015 в 22:12
1 ответ

Поэтому я не уверен, как марионеточный движок обрабатывает группировку, но (bldg | BLDG) технически является группой захвата, поэтому некоторые механизмы регулярных выражений будут возвращать только эту группу захвата.

При запуске через regex101.com я решил, что это будет делать ваш bldg / BLDG ИЛИ при захвате всего имени хоста в качестве единственного захвата. группа, попробуйте:

/^((?:bldg|BLDG)-\w{0,7}-\d+)/
1
ответ дан 4 December 2019 в 16:52

Теги

Похожие вопросы