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
590
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
100
Your tests will ask you to repeat. Scallable Immutable Selenium Infrastructure.
lanwen
1
360
[RU] Codegeneration in Java as way to solve autotest problems
lanwen
0
180
[RU] Codegeneration as way to help test automation engeneers
lanwen
0
85
[RU] GIMME your first Autotest!
lanwen
1
410
SPb Jenkins Meetup #0 Как начать писать плагин для Jenkins? И когда этого не делать?
lanwen
3
700
Other Decks in Technology
See All in Technology
2025年になってもまだMySQLが好き
yoku0825
8
4.7k
エラーとアクセシビリティ
schktjm
1
1.2k
サラリーマンの小遣いで作るtoCサービス - Cloudflare Workersでスケールする開発戦略
shinaps
2
440
テストを軸にした生き残り術
kworkdev
PRO
0
200
新アイテムをどう使っていくか?みんなであーだこーだ言ってみよう / 20250911-rpi-jam-tokyo
akkiesoft
0
240
ブロックテーマ時代における、テーマの CSS について考える Toro_Unit / 2025.09.13 @ Shinshu WordPress Meetup
torounit
0
120
CDK CLIで使ってたあの機能、CDK Toolkit Libraryではどうやるの?
smt7174
4
160
Generative AI Japan 第一回生成AI実践研究会「AI駆動開発の現在地──ブレイクスルーの鍵を握るのはデータ領域」
shisyu_gaku
0
160
JTCにおける内製×スクラム開発への挑戦〜内製化率95%達成の舞台裏/JTC's challenge of in-house development with Scrum
aeonpeople
0
210
5分でカオスエンジニアリングを分かった気になろう
pandayumi
0
240
KotlinConf 2025_イベントレポート
sony
1
130
RSCの時代にReactとフレームワークの境界を探る
uhyo
10
3.4k
Featured
See All Featured
Mobile First: as difficult as doing things right
swwweet
224
9.9k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
49
3k
VelocityConf: Rendering Performance Case Studies
addyosmani
332
24k
How STYLIGHT went responsive
nonsquared
100
5.8k
How to Ace a Technical Interview
jacobian
279
23k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
4k
A Modern Web Designer's Workflow
chriscoyier
696
190k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
30
9.7k
Practical Orchestrator
shlominoach
190
11k
We Have a Design System, Now What?
morganepeng
53
7.8k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
17k
Keith and Marios Guide to Fast Websites
keithpitt
411
22k
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