Czy w parametrach Jenkins rozróżniana jest wielkość liter? Mam sparametryzowaną kompilację, która wymaga ustawienia parametru ant o nazwie "build_parameter" przed kompilacją. Kiedy próbuję uzyskać dostęp do zestawu $ {BUILD_NUMBER} ustawionego przez Jenkinsa, otrzymuję wartość ustawioną dla parametru ant. Jeśli w parametrach kompilacji nie jest rozróżniana wielkość liter, czy ktoś może zaproponować mi obejście tego problemu? Nie mogę zmienić nazwy parametru kompilacji, ponieważ będę musiał zmienić skrypty budowania (co nie jest opcją). Dzięki!Jenkins - jak uzyskać dostęp do zmiennej środowiskowej BUILD_NUMBER
Odpowiedz
Aby odpowiedzieć na pierwsze pytanie, zmienne Jenkins uwzględniają wielkość liter. Jednak jeśli piszesz skrypt wsadowy Windows, nie uwzględniają wielkości liter, ponieważ system Windows nie dba o sprawę.
Ponieważ nie bardzo wiadomo, jak wygląda konfiguracja, załóżmy założenie, że używasz kroku budowania mrówek, aby odpalić swoje zadanie z mrówkami. Spójrz na the Jenkins documentation (tę samą stronę, którą podał Ci Adarsh, ale inny rozdział) na przykład, jak udostępnić zmienne Jenkinsa dla twojego zadania mrówkowego.
EDIT:
Stąd będę mieć dostęp do zmiennej $ środowisko {BUILD_NUMBER} skonstruować URL.
Dlaczego nie użyć $BUILD_URL
? Czy nie jest dostępny w rozszerzonej wtyczce e-mail?
Peter: Proszę odnieść się do mojego komentarza powyżej, aby odpowiedzieć na pytanie Sagara. Potrzebuję uzyskać wartość zmiennej środowiskowej $ {BUILD_NUMBER}, jednak przypuszczam, że jest ona nadpisywana przez inny parametr (parametr małej litery). Używam Mac OS i nie używam tych parametrów w żadnym skrypcie Bash. Wszystko, co próbuję zrobić, to użyć go w treści wiadomości e-mail z rozszerzonym powiadomieniem e-mail. – Anand
Peter: Dzięki za twoją sugestię. Wypróbowałem $ {BUILD_URL} po sugerowaniu. To prowadzi mnie do strony kompilacji. Czy istnieje sposób skierowania go bezpośrednio do artefaktu, aby rozpocząć pobieranie artefaktu bezpośrednio z linku w wiadomości e-mail? – Anand
To $ {BUILD_URL}/artefakt/<ścieżka_do_artykatury> –
Zakładając mam zrozumienia zapytanie i poprawnie ustawiony,
Jeśli próbujesz użyć numer kompilacji w skrypcie, trzeba opcji:
1) Dzwoniąc ant, przeznaczenie: ant -Dbuild_parameter=${BUILD_NUMBER}
2) Zmień skrypt tak, aby:
<property environment="env" />
<property name="build_parameter" value="${env.BUILD_NUMBER}"/>
Sagar: Używam sparametryzowanej opcji kompilacji, aby użytkownik wprowadził parametr build_number (uwaga: jest w lower_case), a następnie używa go w moim skrypcie ant. Muszę jednak wysłać wiadomość e-mail z lokalizacją artefaktu jako adresem URL. W związku z tym będę musiał uzyskać dostęp do zmiennej środowiskowej $ {BUILD_NUMBER}, aby utworzyć adres URL. Teraz użytkownik wprowadził parametr $ {numer_budowy}, a zmienna środowiskowa $ {BUILD_NUMBER} jest inna. Ale jeśli dodaję $ {BUILD_NUMBER} do adresu URL, zawsze zajmie on wartość zapisaną w $ {numer_budowy}. – Anand
Aah ok. W takim przypadku, dlaczego nie zmienisz "build_number" na "build.number" na liście parametrów. Nadal ma to samo znaczenie i ludzie nie będą go mylić z niczym innym; w tym samym czasie będzie zupełnie inny niż BUILD_NUMBER. Nie jestem pewien, czy jest niewrażliwość na wielkość liter (czy to twój serwer, czy klient w systemie Windows?), Ale byłoby to najlepsze wyjście. Nadal możesz używać punktu 1 lub 2 powyżej, aby dopasować wewnętrzne zmienne skryptu do parametrów i zmiennych środowiskowych. – Sagar
- 1. Jenkins: dostęp do ładunku bitbucket w powłoce
- 2. jak uzyskać wartość zmiennej środowiskowej w Android.mk?
- 3. Jak określić wartość zmiennej środowiskowej Jenkins, która zawiera spację
- 4. Jak uzyskać dostęp do zmiennej środowiskowej bash z poziomu R w emacs-ESS
- 5. Jak uzyskać dostęp do zmiennej środowiskowej w wierszu exec pliku .desktop?
- 6. Jak znaleźć położenie zmiennej środowiskowej?
- 7. Jak uzyskać separator zmiennej środowiskowej PATH w języku Python?
- 8. Jak programowo uzyskać wartość zmiennej środowiskowej PATH w systemie Android?
- 9. Jak odwoływać się do zmiennej środowiskowej wewnątrz kodu Obj-C
- 10. Ustawianie zmiennej środowiskowej w javascript
- 11. Jak korzystać ze zmiennej środowiskowej Rails w skrypcie wdrożenia Capistrano?
- 12. Powershell - zmiana wartości zmiennej środowiskowej
- 13. Jak uzyskać szczegółowe informacje o bieżącym projekcie budowy w Jenkins z Groovy?
- 14. Składnia, aby uzyskać wartość zmiennej środowiskowej w pliku Kconfig
- 15. Zakres Groovy - jak uzyskać dostęp do zmiennej skryptowej w metodzie
- 16. Jak uzyskać dostęp do globalnej zmiennej JS w angular2 komponentu
- 17. Jak uzyskać dostęp do zmiennej w dwóch plikach
- 18. Jak uzyskać dostęp do wartości zmiennej C# na stronie .aspx?
- 19. Jak uzyskać dostęp do wartości zmiennej lokalnej z drzewa wyrażeń
- 20. Jak mogę uzyskać dostęp do zmiennej szablonu w makrze TWIG?
- 21. Jak uzyskać dostęp do zmiennej instancji w metodzie mixin?
- 22. Jak uzyskać dostęp do zmiennej javascript w ramach @ URL.Action()
- 23. jak uzyskać dostęp do zmiennej klasy przez napis w Pythonie?
- 24. Jak uzyskać dostęp do zmiennej sesji w kontrolerze
- 25. Jak używać putenv() do aktualizacji istniejącej zmiennej środowiskowej?
- 26. Uzyskiwanie wartości zmiennej środowiskowej w java
- 27. Jenkins/Hudson - dostęp do aktualnego numeru kompilacji?
- 28. Ustawienie zmiennej środowiskowej za pomocą .htaccess
- 29. Czy ktoś próbował użyć zmiennej środowiskowej UV_THREADPOOL_SIZE?
- 30. Ustawianie zmiennej środowiskowej w skrypcie ant
Patrz https://issues.jenkins-ci.org/browse/JENKINS-1322 –
Adarsh: My build_param Zmienna eter i środowisko $ {BUILD_NUMBER} mają różne wartości. Przepraszam, że nie jest jasne. Potrzebuję sposobu na uzyskanie dostępu do wartości Jenkins $ {BUILD_NUMBER}. Jednak gdy próbuję uzyskać do niego dostęp w taki sposób, jak w przypadku zmiennych środowiskowych ($ {BUILD_NUMBER}), drukuje on inną wartość. – Anand
Według mojego badania BUILD_NUMBER podaje aktualny numer kompilacji. Musisz zmienić skrypt budujący. Lub spróbuj utworzyć nową zmienną i przypisz jej wartość BUILD_NUMBER i użyj jej. –