LoginSignup
3

More than 5 years have passed since last update.

jQueryのPlugin Registryは、githubのmushupであった。

Posted at

registry公開、やってみました

しばらく前からやってみたい! と思っていた、
jQuery Plugin registry (公式)でのプラグイン公開、やってみました。

いやはや、簡単というか、手間がないだけに戸惑うというか。

まさか、githubへの操作だけで公開まで終わるとは
思ってませんでした。titleはそういう意図です。

スムーズにいけば、plugins.jquery.comに1度もアクセスしなくても
公開作業が終わってしまいます。

参考

ポイント

記事を書き始めてみたものの、手順の説明は↑の記事が文句なく分かりやすいので、
まずはかいつまんでポイントだけを。

  • プラグインというか、プラグインのgithubレポジトリを登録・公開する形
  • post-receive hookを使って、レジストリとgithubを連携・同期
  • versionはgitのtagと対応させている
  • Manifestというのを書く

「できる限り、jQuery側でデータを持たない!!」という思想をひしひしと感じますね。

では一応、手順と気になったところを書いていきます。

手順

1. 作ったpluginを、githubに投入する。

この段階では、本当にただぶち込んでおくだけ、という感じ。

pluginそのものを、どういう形で入れておくかは自由だし、
レポジトリの名前にも制約はなし。

このplugin registryには、pluginのファイルではなく、
あくまでpluginのレポジトリを登録するのである。

たぶん、jQueryのかけらもないレポジトリでも、
後述のManifestさえ書けば登録できるんじゃないかしら。(未確認)

2. レポジトリのpost-receiveを設定

post-receiveというのは、githubが提供しているサービスで、
「このレポジトリにpushがあった時、指定されたURLを叩いて教えてあげるよ!!」
というやつです。

例えば、この「指定されたURL」に自分の作ったAPIを置いておいて、

  • そのきっかけでgit pullして、常にremoteと一致するディレクトリ作るとか、
  • そのきっかけでTwitter API叩いて「pullしたぜ!」ってつぶやくとか、

いろいろできるわけです。

そしてpulgin registryは、このpost-receiveのURLに
http://plugins.jquery.com/postreceive-hook
を指定してもらうことで、registryの状態とレポジトリの状態を同期してるわけです。

おもしろいのは、事実上
post-receiveを登録 = registryへの登録
となっていることです。

こののち、正しいManifestファイルがpushされ、
対応したtagがpushされたら、
いつの間にかregistryにURLができてます。おそろしや……!

3. Manifestを書いてレポジトリのルートに置く

npmのpackage.jsonみたいなものですね。

ファイル名は(plugin名).jquery.jsonにする必要があります。

基本的には、このサンプルを空気読んで書き直していけばけばOK!
ですが、いくつか注意する項目が。

name:

plugin名です。Manifestのファイル名と対応している必要がありますし、

そのままURLにもなるので、大事です。

title:

registryページのtitleに使われます。

download:

ダウンロード用のURLです。

registryページの「Download now」は、ここに直リンクされるので、
zipの置き場所とかをそのまま貼っておいた方が便利です。

version:

versionです。
次の「tagを切る」ときには、ここと一致したtagを切らなくちゃいけません。

4. tagを切る

version名のタグを切ります。これはまぁそれだけです。
その時点でのレポジトリの状態が登録されることになるので、
見直しはこれより前に!

$ git tag 0.0.1
$ git push origin --tags

5. おわり

ここまでうまくいっていれば、registryにURLができてます。

まとめ

記事書きながら、
いま公開したpluginのManifestとかコードとかが怪しい気がしてきた…。

まぁ、なんだか作業自体が直接的じゃなくて分かりづらいんですが、
githubと相性良く連携してる感じはしますね。

また何か作ったらやってみます。

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
What you can do with signing up
3