13

Getting the most out of the Universal Plugin Manager

Embed Size (px)

DESCRIPTION

 

Citation preview

Page 1: Getting the most out of the Universal Plugin Manager
Page 2: Getting the most out of the Universal Plugin Manager

John KodumalTechnical Lead, Atlassian

Getting the most out of the Universal Plugin Manager

2

Page 3: Getting the most out of the Universal Plugin Manager

You give 100 percent in the first half of the game,

and if that isn't enough in the second half you give

what's left.

Yogi Berra

”“

3

Page 4: Getting the most out of the Universal Plugin Manager

Now 100% more universal

4

JIRA 4.1

Confluence 3.1

FE/Cru 2.5

Bamboo 3.1

Page 5: Getting the most out of the Universal Plugin Manager

Reloadable plugins

5

New in JIRA 4.4!

Page 6: Getting the most out of the Universal Plugin Manager

• Improved support for proxies• Offline mode

• Better support for walled-off servers

• Over 40 issues since January

Squashing bugs

6

Page 7: Getting the most out of the Universal Plugin Manager

They misunderestimated me.

George W. Bush

”“

7

Page 8: Getting the most out of the Universal Plugin Manager

• Fetch the audit log as an RSS feed

Read the feed

8

Page 9: Getting the most out of the Universal Plugin Manager

• UPM has a complete REST API• And UPM itself is a client!

• Many potential applications• UPM gadget• Notification e-mails

Use the REST API

9

Page 10: Getting the most out of the Universal Plugin Manager

10

Using the api$ curl -u admin:admin -basic http://localhost:2990/jira/rest/plugins/1.0/

{ "plugins":[ { "enabled":true, "name":"Admin Menu Sections", "userInstalled":false, "description":"This library includes the web fragments for the administration menu", "links":{ "modify":"/jira/rest/plugins/1.0/jira.webfragments.admin-key", "delete":"/jira/rest/plugins/1.0/jira.webfragments.admin-key" }, }, ... ], "links":{ "available":"/jira/rest/plugins/1.0/available", "upgrades":"/jira/rest/plugins/1.0/available/upgrades", "enter-safe-mode":"/jira/rest/plugins/1.0/safe-mode", "install":"/jira/rest/plugins/1.0/" ... },}

Page 11: Getting the most out of the Universal Plugin Manager

Scripting the UPM

11

#!/usr/bin/env pythonfrom subprocess import Popen, PIPE, STDOUTimport json,os

nul_f = open(os.devnull, 'w')cmd = 'curl -basic -u admin:admin http://localhost:2990/jira/rest/plugins/1.0/upgrades'p = Popen(cmd, shell=True, stdin=PIPE, stdout=PIPE, stderr=nul_f, close_fds=True)print len(json.loads(p.stdout.read())['plugins'])

Page 12: Getting the most out of the Universal Plugin Manager

Crouching tiger, hidden tab

12

http://{baseurl}

/plugins/servlet

/upm#osgi

Page 13: Getting the most out of the Universal Plugin Manager

The future will be better tomorrow.

Dan Quayle

”“

13