LINUX.ORG.RU

Не получилось тебя понять. Вот если label — слово, а от него что-то должно зависеть, то чем не устаривает взять Token Macro Plugin, Conditional build step и там прописать, что тебе надо? Может тебе тяжелая артиллерия нужна, может два Conditional build step'а — я не понимаю. Можно поподробнее, что тебе нужно сделать с этим url'ом?

t184256 ★★★★★
()
Ответ на: комментарий от t184256

Ситуэйшн такой - как параметры матрицы охота иметь урлы (потенциально, много урлов). Но как бэ значение из матрицы будет учавствовать в формировании лэйбла(как бы и хрен с ним, если бы создающаяся на его основании путь на фс - нормально создавался бы).

Кондишнл степ, это первое что приходит в голову, но это ок пока урлов - пара, и до этого я как бы и сам допетрил. Про груви - выглядит конечно мощно, но у мну на проекте и так языков заюзанно выше крыши, тащить туда ещё какой то не генерируемый код - вообще нет желания.

Про токены, я ниосилил по доке, что это, ща потыкаю.

pon4ik ★★★★★
() автор топика
Последнее исправление: pon4ik (всего исправлений: 1)
Ответ на: комментарий от pon4ik

И опять я не понял. У тебя только ось с урлами или есть еще оси? Если первое — надо уходить не только от label-слова, но и от матрицы вообще. Или обосновать, почему этого делать не надо. Если второе и ты остальные оси тоже под что-то используешь, то я не вижу, как тебе без Groovy обойтись. Возможно можно сузить его применение с описания всего подряд до только мапанья (Dynamic Parameter Plug-in похож на это, но я не особо вникал), прописать один словарь — еще не притащить новый язык.

t184256 ★★★★★
()
Ответ на: комментарий от t184256

Для простоты, будем считать что есть только ось с урлами. В Dynamic Parameter опять же груви, хотя там в принципе вообще фигня по идее коду, но опасный это блин путь :)

pon4ik ★★★★★
() автор топика
Ответ на: комментарий от pon4ik

Для простоты, будем считать что есть только ось с урлами.

Если ось реально одна (нет привязки к хостам по меткам, нет фильтрации матрицы), то матрица тебе не сдалась вообще. Если ось одна только для простоты, то недостаточно данных. Но в принципе рассмотри вариант: выгоняешь урлы из осей, лишаясь при этом матрицы. Можешь засунуть урл в параметр билда, можешь вообще по ним цикл сделать прямо в build step.

В Dynamic Parameter опять же груви, хотя там в принципе вообще фигня по идее коду, но опасный это блин путь :)

Да, я знаю, это я и имел в виду под «сузить его применение с описания всего подряд до только мапанья». «Опасный путь» — это занятно. Знаешь сколько языков используется в GNU Hello? Ну будет для CI еще на одном целый словарь, велика беда.

t184256 ★★★★★
()
Ответ на: комментарий от t184256

GNU Hello ни несёт никакой практической ценности, кроме демонстрации использования гнутых утилит и технологий. Так что аналогия довольно слабая.

А тащить +одну технологию в реальный проект где их и так дохрена таки опасный путь. Ибо сегодня ты втащил туда список, завтра ушёл в отпуск, а через месяц пришёл и узнал, что манагер это увидал и сказал следующему несчастному - «одна фигня мы уже заюзали груви, давай теперь приделаем туда свистящую пуковыжималку, на груви ессно ибо мы же всё равно его юзаем, ведь там был такой мелкий и удобный список». А через полгода все дружно проходим сертификацию по груви :D

pon4ik ★★★★★
() автор топика
Последнее исправление: pon4ik (всего исправлений: 1)

а алгоритм преобразования слова в урл есть? или урла в слово? как оно зависит? можно ли имея слово-label сформировать урл на его основании?

Komintern ★★★★★
()
Последнее исправление: Komintern (всего исправлений: 1)
Ответ на: комментарий от Komintern

В идеале это должен быть декларативный словарь. Алгоритма как такового - нет, есть просто сопоставление.

pon4ik ★★★★★
() автор топика
Ответ на: комментарий от pon4ik

ну так запихни это сопоставление в редис/мускуль/текстовик/sqlite, и получай урл по принципу key-value. заодно это даст возможность воспользоваться этой же базой не только в дженкинсе. или например использовать то же хранилище сопоставлений в другом дженкинс-проекте без лишнего копипаста.

Komintern ★★★★★
()
Последнее исправление: Komintern (всего исправлений: 2)
Ответ на: комментарий от Komintern

Читай аргументацию выше - неохота мне новую технологию тащить в проект, ради одного из мелких конфигов на билдсервере, тем более, я не понимаю, что мешало создателем matrix плагина запилить так by design, это же логично.

pon4ik ★★★★★
() автор топика
Ответ на: комментарий от pon4ik

ок, тогда можно сделать файл с пропертями (имя переменной - слово, значение - урл), и инжектить его в билд, а затем делать что-то вроде этого:

$ word1="http://linux.org.ru/"
$ word2="http://google.com/"

$ axis=word1
$ curl -I ${!axis}
HTTP/1.1 302 Found
Server: QRATOR
Date: Wed, 29 Apr 2015 04:47:10 GMT
Content-Length: 0
Connection: keep-alive
Keep-Alive: timeout=15
Location: http://www.linux.org.ru/
Komintern ★★★★★
()
Ответ на: комментарий от Komintern

О, спасибо, вот это уже похоже на правду :)

pon4ik ★★★★★
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.