tohokuaikiのチラシの裏

技術的ネタとか。

Atlassian Cloud用のプラグインを作成する

Atlassian CloudのアドオンはJavaアプリではないので作り方が全く違う。ということで、Getting start.
https://developer.atlassian.com/static/connect/docs/latest/guides/getting-started.html

とりあえず、デモの起動まで

Getting startでは、プレーンなHTMLを表示させるプラグインを作る。
とりあえず、

  1. atlassian-plugin.xml代わりのJSONを作る
  2. プレーンなHTMLを用意する

までは問題なく。ちなみに、この2つのファイルは、以下のgitで取ってくる。
https://bitbucket.org/atlassianlabs/confluence-gardener/src



次の開発用Confluence Cloudの起動。
https://developer.atlassian.com/static/connect/docs/latest/guides/confluence-gardener-tutorial.html
に従って、https://bitbucket.org/atlassianlabs/confluence-gardener.git をgit cloneし、cloneしたディレクトリに移動後、下記のコマンドを実行

atlas-run-standalone --product confluence --version 5.9.1-OD-65-062 --bundled-plugins com.atlassian.bundles:json-schema-validator-atlassian-bundle:1.0.4,com.atlassian.webhooks:atlassian-webhooks-plugin:1.0.6,com.atlassian.jwt:jwt-plugin:1.2.2,com.atlassian.upm:atlassian-universal-plugin-manager-plugin:2.19.1.2-D20150723T232127,com.atlassian.plugins:atlassian-connect-plugin:1.1.46 --jvmargs -Datlassian.upm.on.demand=true


まず、Java8とAtlassianSDKの4.2.20以上を・・・ってことなんだけど、このブログ執筆時点での最高の5.1.11を使ったら、あえなくエラーで起動しなかったので5.0.13でリトライ。起動した。

プラグイン用のサーバを立てる

atlassian-connect.jsonを読み込ませる用のHTTPサーバを立てる。
最初、普通にインターネット上のApache使えばいいじゃんって思ってたけど、開発用Confluenceでは同じhost名じゃないとアクセスできないようで、localhostでConfluenceを立てたらlocalhostプラグイン用サーバを立てなければいけない。

Windowsなので、nginxを使うことにした。

開発用Confluence Cloudでの作業

nginxに
http://localhost:8080/dev/sample/atlassian-connect.json
とかでおいて、このURLをアドオンマネージャからアップロードする。これでインストール完了。

ローカルホストじゃにないと、

Problem accessing the file https://atlassian-addon.junoe.jp/confluence/dev/sample/atlassian-connect.json.

とかのエラーが出る。

確認する

こんなところで出てる。
f:id:tohokuaiki:20150826193907j:plain