15
12

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

Apiaryで作成するAPIドキュメントをGitHubで管理する

Last updated at Posted at 2015-09-22

概要

ApiaryでAPIドキュメントを作成した場合、そのドキュメント自体のバージョン管理をどうするか疑問でした。調べてみると、ApiaryにはGitHubと連携させることでドキュメントのバージョン管理を行う機能が用意されていたので、実際に試してみました。

サンプルリポジトリの作成

ApiarySmapleというリポジトリを作成します。

apiary_github_1.png

Apiaryでドキュメントを作成

Apirayでサンプルドキュメントを作成します。

GitHubと連携させる

ApiaryのメニューからSettingsを選択。

apiary_github_2.png

設定メニューの下部にGitHubとの連携についての説明が書いてあるので、「Connect to GitHub」をクリック。
今回はPublicでサンプルリポジトリを用意したので、 Grant access to my private repositories as well. にはチェックを付けません。

apiary_github_3.png

対象となるリポジトリを選択

GitHubとの連携を行うと、以下のように設定メニュー下部にリポジトリを選択する画面が表示されるので、先ほど作成したApiarySmapleを選択。

apiary_github_4.png

選択をすると以下のようになります。

apiary_github_5.png

リポジトリへのAPI Blueprintファイルの追加

ApirayでAPIドキュメントを作成する場合、API BlueprintというMarkdownを拡張した言語で記述します。拡張子は.apibです。上記でリポジトリを選択すると、ApiarySmapleリポジトリにapiary.apibがApiaryからプッシュされ自動的に追加されます。このファイルは、Apiaryのエディタで編集したものと同一のものになります。

apiary_github_6.png

APIドキュメントの更新

ブラウザからの更新

Apiaryへアクセスし、エディタでAPIドキュメントを更新します。通常は「Save & Publish」になっている右上のボタンがGitHubと連携済みの場合「Save & Commit」に変化します。

apiary_github_7.png

「Save & Commit」をクリックするとコミットメッセージの入力フォームが出てくるので、「test」と入力し、「Save and Push to GitHub」をクリックします。

apiary_github_8.png

GitHubを確認すると更新が反映されていることがわかります。

apiary_github_9.png

ローカルでの更新

ApiarySmapleをcloneし、apiary.apibを編集します。

apiary_github_10.png

編集後コミットしGitHubへプッシュすると、ApiaryのAPIドキュメントに自動的に反映されます。

apiary_github_11.png

まとめ

Apiaryで作成したAPIドキュメントをGitHubで管理することができました。さらにDreddを使うことで、.apibファイルを使用したAPIレスポンスのテストが出来ると考えられるので、引き続き調べようと思います。

15
12
0

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
15
12

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?