Slide 1

Slide 1 text

Juseppe Меркушев Кирилл Яндекс

Slide 2

Slide 2 text

2 Jenkins Update Site Embedded for Plugin Publishing Easily J bit.ly/juseppe U S E P P E

Slide 3

Slide 3 text

Что это? 3 Update Site Список расширений Рекомендации * История Ядро Тулы

Slide 4

Slide 4 text

4 Когда нужно? Как получить? Как сделан? Что ещё?

Slide 5

Slide 5 text

5 Когда нужно? Что ещё? Как получить? Как сделан?

Slide 6

Slide 6 text

Когда нужно? 6 *.HPI / *.JPI

Slide 7

Slide 7 text

Когда нужно? 7 *.HPI / *.JPI

Slide 8

Slide 8 text

Когда нужно? 8 Глобальный конфиг Управление плагинами Дополнительно

Slide 9

Slide 9 text

Когда нужно? 9 *.HPI / *.JPI

Slide 10

Slide 10 text

Когда нужно? 10 *.HPI / *.JPI

Slide 11

Slide 11 text

Когда нужно? 11 Juseppe

Slide 12

Slide 12 text

12 Когда нужно? Что ещё? Как получить? Как сделан? Quick Start

Slide 13

Slide 13 text

$ docker run --name juseppe \ -v /your/plugins/dir/:/juseppe/plugins/ \ -e JUSEPPE_BASE_URI=http://my.company.com \ -p 80:8080 lanwen/juseppe Как получить? Как получить? 13

Slide 14

Slide 14 text

$ 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

Slide 15

Slide 15 text

$ 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

Slide 16

Slide 16 text

Ready! Как получить? 16 http://${JUSEPPE_BASE_URI}/update-center.json

Slide 17

Slide 17 text

На Jenkins: Как получить? 17 UpdateSites Manager plugin

Slide 18

Slide 18 text

$ docker run --rm lanwen/juseppe cert -----BEGIN CERTIFICATE----- MIIDZTCCAk2gAwIBAgIJAPlUddznKBcWMA0GCSqGSIb3DQEBCwUAMEkxCzAJBgNV BAYTAkVOMRYwFAYDVQQIDA1VcGRhdGUtQ2VudGVyMRAwDgYDVQQHDAdKdXNlcHBl . . . Сертификат Как получить? 18

Slide 19

Slide 19 text

Апдейты в один клик! Как получить? 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

Slide 20

Slide 20 text

20 Когда нужно? Что ещё? Как получить? Как сделан? Advanced Mode: ON

Slide 21

Slide 21 text

Как получить? 21 bit.ly/juseppe-guide

Slide 22

Slide 22 text

Как получить? 22 SSH SCP RSYNC

Slide 23

Slide 23 text

Как получить? 23 SSH MAVEN +

Slide 24

Slide 24 text

org.apache.maven.wagon wagon-ssh-external Autodeploy Как получить? 24

Slide 25

Slide 25 text

org.codehaus.mojo wagon-maven-plugin upload-single ${project.build.directory}/${finalName}.hpi scpexe://${plugin-repo} Autodeploy Как получить? 25

Slide 26

Slide 26 text

26 Когда нужно? Что ещё? Как получить? Как сделан?

Slide 27

Slide 27 text

Как сделан? 27 HPI/JPI JAR META-INF/MANIFEST.MF Что такое HPI/JPI new JarFile(file).getManifest().getMainAttributes() "Plugin-Dependencies" "Hudson-Version" . . .

Slide 28

Slide 28 text

Как сделан? 28 JUSEPPE CORE Внутри Juseppe Signer CLI Parser Beans File Watcher Embeded Jetty Default Servlet

Slide 29

Slide 29 text

Ключ + Сертификат 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

Slide 30

Slide 30 text

30 Когда нужно? Что ещё? Как получить? Как сделан?

Slide 31

Slide 31 text

Что еще? 31 JUCIES github.com/jucies

Slide 32

Slide 32 text

Что еще? 32 JUCIES github.com/jucies repo/plugin-name Releases +

Slide 33

Slide 33 text

Что еще? 33 Ограничения

Slide 34

Slide 34 text

Что еще? 34 Ограничения Не рекурсивно Нестабильные + стабильные в куче Не умеет мавен репозиторий Нет тулов и ядер Нет рекомендаций по плагинам*

Slide 35

Slide 35 text

Что еще? 35 Мечты? Свой плагин Автозеркало* Не про автомобиль

Slide 36

Slide 36 text

Что еще? 36 Вопросы? [email protected] github.com/lanwen @delnariel