Jenkins dodanie daty do zmiennej

0

Cześć. Mam problem z dodaniem daty do zmiennej, która później będzie używana do budowania projektu. Obecnie w sekcji environment dodaję następujący kod

environment {
        DATE = '$(date +"%Y%m%d%I%M%S")'
}

Wprawdzie data jest tworzona prawidłowo, ale każde użycie tej zmiennej powoduje, że data jest tworzona na nowo. W ten sposób kiedy tworzę katalog

sh 'mkdir /var/www/html/${DATE}'

i później próbuję coś do niego skopiować używając znowu zmiennej ${DATE} to dostaję wiadomość, że taki folder nie istnieje, ponieważ data już się zmieniła o sekundę. Dodam tylko, że nie mogę instalować jakiś dodatkowych pluginów, ponieważ używam konta klienta i nie mam uprawnień, a kontakt jest ciężki.

0
  1. Potrzebujesz tych sekund w zmiennej? Może wystarczy się ich pozbyć?
  2. Możesz całość opędzić w shellu i z poziomu jenkinsfile wywołać tylko skrypt, który robi to, co potrzebujesz w odpowiednim momencie.
  3. Opcja, która u Ciebie nie wchodzi w grę - Build Timestamp Plugin, lub jakiś pokrewny plugin.

Nie wyobrażam sobie co to znaczy "kontakt jest ciężki". Z pewnością nie powinno tak być i to osoba odpowiedzialna za Jenkinsa powinna Ci pomóc z tym zadaniem. Jesteśmy przecież poważnymi ludźmi i nie robisz tego dla zabawy, tylko masz konkretne zadanie, które ktoś zlecił i ktoś za nie zapłaci. Pisanie własnych rozwiązań na już rozwiązane problemy zazwyczaj nie jest najlepszą praktyką. Spróbuj pogadać z tą osobą. :)

0

OK Dzięki. Wrzucanie do skryptu oddzielnego to dobry pomysł tylko nie wiem czy lepiej trzymać skrypty na remote serwerze i przez ssh je wywoływać z Jenkinsa czy trzymać lokalnie na serwerze tam gdzie Jenkins.

1

To zależy. Jeżeli skrypty służą do jednej, konkretnej rzeczy to trzymaj je przy repo tej rzeczy.

Ale jeżeli to mają być generyczne skrypty np. budujące, testujące, deployujące to możesz trzymać je przy repo z Infrastrukturą (jeżeli takie macie), lub zapakować do paczek (Nuget?).

My nie trzymamy nic na build serwerach, ale to pewnie zależy od skali i konkretnej sytuacji.

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0