Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Juseppe
Search
Merkushev Kirill
May 27, 2016
Technology
1
580
Juseppe
Jenkins Update Site Embedded for Pluigin Publishing Easily
Merkushev Kirill
May 27, 2016
Tweet
Share
More Decks by Merkushev Kirill
See All by Merkushev Kirill
Проект на Java и библиотеке Reactor - а как же тесты?
lanwen
0
99
Your tests will ask you to repeat. Scallable Immutable Selenium Infrastructure.
lanwen
1
350
[RU] Codegeneration in Java as way to solve autotest problems
lanwen
0
180
[RU] Codegeneration as way to help test automation engeneers
lanwen
0
83
[RU] GIMME your first Autotest!
lanwen
1
410
SPb Jenkins Meetup #0 Как начать писать плагин для Jenkins? И когда этого не делать?
lanwen
3
690
Other Decks in Technology
See All in Technology
東京海上日動におけるセキュアな開発プロセスの取り組み
miyabit
0
140
経験がないことを言い訳にしない、 AI時代の他領域への染み出し方
parayama0625
0
160
機械学習を「社会実装」するということ 2025年夏版 / Social Implementation of Machine Learning July 2025 Version
moepy_stats
1
620
M365アカウント侵害時の初動対応
lhazy
7
4.6k
そもそも AWS FIS について。なぜ今 FIS のハンズオンなのか?などなど
kazzpapa3
2
120
Jitera Company Deck / JP
jitera
0
150
分散トレーシングによる コネクティッドカーのデータ処理見える化の試み
thatsdone
0
220
データ駆動経営の道しるべ:プロダクト開発指標の戦略的活用法
ham0215
2
230
DATA+AI SummitとSnowflake Summit: ユーザから見た共通点と相違点 / DATA+AI Summit and Snowflake Summit
nttcom
0
220
AI エンジニアの立場からみた、AI コーディング時代の開発の品質向上の取り組みと妄想
soh9834
6
310
ゼロから始めるSREの事業貢献 - 生成AI時代のSRE成長戦略と実践 / Starting SRE from Day One
shinyorke
PRO
0
230
SAE J1939シミュレーション環境構築
daikiokazaki
0
150
Featured
See All Featured
Building Better People: How to give real-time feedback that sticks.
wjessup
367
19k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
29
9.6k
VelocityConf: Rendering Performance Case Studies
addyosmani
332
24k
The Language of Interfaces
destraynor
158
25k
Statistics for Hackers
jakevdp
799
220k
Automating Front-end Workflow
addyosmani
1370
200k
GitHub's CSS Performance
jonrohan
1031
460k
GraphQLの誤解/rethinking-graphql
sonatard
71
11k
Fireside Chat
paigeccino
37
3.5k
Facilitating Awesome Meetings
lara
54
6.5k
The Straight Up "How To Draw Better" Workshop
denniskardys
235
140k
Practical Orchestrator
shlominoach
189
11k
Transcript
Juseppe Меркушев Кирилл Яндекс
2 Jenkins Update Site Embedded for Plugin Publishing Easily J
bit.ly/juseppe U S E P P E
Что это? 3 Update Site Список расширений Рекомендации * История
Ядро Тулы
4 Когда нужно? Как получить? Как сделан? Что ещё?
5 Когда нужно? Что ещё? Как получить? Как сделан?
Когда нужно? 6 *.HPI / *.JPI
Когда нужно? 7 *.HPI / *.JPI
Когда нужно? 8 Глобальный конфиг Управление плагинами Дополнительно
Когда нужно? 9 *.HPI / *.JPI
Когда нужно? 10 *.HPI / *.JPI
Когда нужно? 11 Juseppe
12 Когда нужно? Что ещё? Как получить? Как сделан? Quick
Start
$ docker run --name juseppe \ -v /your/plugins/dir/:/juseppe/plugins/ \ -e
JUSEPPE_BASE_URI=http://my.company.com \ -p 80:8080 lanwen/juseppe Как получить? Как получить? 13
$ docker run --name juseppe \ -v /your/plugins/dir/:/juseppe/plugins/ \ -e
JUSEPPE_BASE_URI=http://my.company.com \ -p 80:8080 lanwen/juseppe Папка с HPI/JPI Как получить? 14
$ docker run --name juseppe \ -v /your/plugins/dir/:/juseppe/plugins/ \ -e
JUSEPPE_BASE_URI=http://my.company.com \ -p 80:8080 lanwen/juseppe Базовый URL Как получить? 15
Ready! Как получить? 16 http://${JUSEPPE_BASE_URI}/update-center.json
На Jenkins: Как получить? 17 UpdateSites Manager plugin
$ docker run --rm lanwen/juseppe cert -----BEGIN CERTIFICATE----- MIIDZTCCAk2gAwIBAgIJAPlUddznKBcWMA0GCSqGSIb3DQEBCwUAMEkxCzAJBgNV BAYTAkVOMRYwFAYDVQQIDA1VcGRhdGUtQ2VudGVyMRAwDgYDVQQHDAdKdXNlcHBl
. . . Сертификат Как получить? 18
Апдейты в один клик! Как получить? 19 INFO: Obtained the
latest update center data file for UpdateSource juseppe 2016-05-21 16:11:08 INFO RequestLog:60 - 172.17.42.1 - - [1463847068536] "GET /update-center.json?id=juseppe&version=1.642.1 HTTP/1.1" 200 7418
20 Когда нужно? Что ещё? Как получить? Как сделан? Advanced
Mode: ON
Как получить? 21 bit.ly/juseppe-guide
Как получить? 22 SSH SCP RSYNC
Как получить? 23 SSH MAVEN +
<build> <!-- ... --> <extensions> <!-- Enabling the use of
SSH --> <extension> <groupId>org.apache.maven.wagon</groupId> <artifactId>wagon-ssh-external</artifactId> </extension> </extensions> </build> Autodeploy Как получить? 24
<plugin> <groupId>org.codehaus.mojo</groupId> <artifactId>wagon-maven-plugin</artifactId> <!—- . . . —> <goal>upload-single</goal> <!—-
. . . —> <configuration> <fromFile>${project.build.directory}/${finalName}.hpi</fromFile> <url>scpexe://${plugin-repo}</url> </configuration> </plugin> Autodeploy Как получить? 25
26 Когда нужно? Что ещё? Как получить? Как сделан?
Как сделан? 27 HPI/JPI JAR META-INF/MANIFEST.MF Что такое HPI/JPI new
JarFile(file).getManifest().getMainAttributes() "Plugin-Dependencies" "Hudson-Version" . . .
Как сделан? 28 JUSEPPE CORE Внутри Juseppe Signer CLI Parser
Beans File Watcher Embeded Jetty Default Servlet
Ключ + Сертификат openssl genrsa -out uc.key 2048 \ &&
openssl req -nodes -x509 -new \ -key uc.key \ -out uc.crt \ -days 1056 \ -subj "/C=EN/ST=Update-Center/L=Juseppe/O=Juseppe" Как сделан? 29
30 Когда нужно? Что ещё? Как получить? Как сделан?
Что еще? 31 JUCIES github.com/jucies
Что еще? 32 JUCIES github.com/jucies repo/plugin-name Releases +
Что еще? 33 Ограничения
Что еще? 34 Ограничения Не рекурсивно Нестабильные + стабильные в
куче Не умеет мавен репозиторий Нет тулов и ядер Нет рекомендаций по плагинам*
Что еще? 35 Мечты? Свой плагин Автозеркало* Не про автомобиль
Что еще? 36 Вопросы?
[email protected]
github.com/lanwen @delnariel