LoginSignup
3
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と相性良く連携してる感じはしますね。

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

3
3
1

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
  3. You can use dark theme
What you can do with signing up
3
3