5
2

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 3 years have passed since last update.

Visual Studio CodeAdvent Calendar 2019

Day 21

VSCode機能拡張向けバッジサービスのリニューアル

Last updated at Posted at 2019-12-20

どんなサービス?

VSMarketplaceBadge
vsmb.png

Visual Studio Marketplaceからバージョンとインストール数を取得しバッジ表示 - Qiita

皆さんどこかで目にしているかもしれないVisual Studio Marketplaceから機能拡張のインストール数やバージョン情報、レーティング情報を取得し、Shields.io経由でバッジを生成するサービス。(現在はShields.ioでもVisual Studio Marketplaceのサポートがされているが開発開始当時は未対応だった)

VSCode機能拡張向けバッジサービス

といいつつVisual Studio Marketplaceから情報を拾っているので本家(?)Visual Studioの機能拡張でもバッジ生成できます:rolling_eyes:

VS Code Extension Managerのコード中にも信頼されたSVGソースとしてドメインが登録されている。

なぜリニューアルするのか

リニューアル前のPaasが無料プランだからなのか高負荷になると最悪半日ほどつながらなくなることが発生。(落ちてるの気づいてなくてTwitterで報告受けて気づいて慌ててUptime Robot設定した)
image.png

あと.NET Core移行したかった。(VSCodeでも開発しやすくなる!)

何が変わったか

環境回り

今後また環境を変える時があってもサクッと行けるようにコンテナのホスティングで行けるところ中心に探した結果、料金やサービスの継続性を考慮しCloud Runに決定。

Google Cloud Platform Advent CalendarでもCloud Runの記事が出てますね。
ローカルで作ったDockerコンテナをCloud Run で公開するまで - Qiita

[Kamatera Express]
(https://www.kamatera.com/express/compute/)もコスパよさそうでちょっと迷った。

ドメイン

vsmarketplacebadge.apphb.com

vsmarketplacebadges.dev

ホスティング先変えるたびにドメイン変わるのめんどいのでdevドメイン購入 :tada:

デプロイ

  • リニューアル前
    1. GitHubにpush
    2. 1.に連動してAppHarbor上にデプロイ
  • リニューアル後
    1. GitHubでリリース作成
    2. GitHub Actionsでビルド→GCPのContainer Registryに登録
    3. Cloud Runへデプロイ(バージョン切り替え)

GitHub Actions内でCloud Runへのデプロイまでやってしまうのもありかなと思っている。
AppEngineのようにバージョン毎にサブドメインが割り振られていて

  1. デプロイ
  2. 動作確認
  3. トラフィック
    ってできるとうれしいな。

削った機能

機能拡張毎にバッジが呼び出された回数のランキングを生成してたけどあんまり使われていなさそうだったので削除。
外部ログ管理サービス(Loggly)に依存していて、こちらも無料枠ギリギリだったのも理由の一つ。

キャッシュ

外部APIをいくつか利用しているのでレスポンスをキャッシュしている。AppHarborは無料のAddOnでRedisを利用できていたがCloud Runでは現時点で類似の機能が使えなさそうなのでRedis Labsの無料プランをとりあえず採用。($4のプランに移行するかも)VPC周りが整理されればCloud Memorystoreが選択肢になりそう。

移行作業

ドメインが変わるのでもちろん移行作業が必要になってくる。

  • 旧ドメイン→新ドメインへリダイレクトするよう旧アプリケーションに手を入れる(12/11~)
  • GitHubで旧ドメインを検索しかたっぱしから新ドメインに書き換えたPRを投げていく
    • 一ヶ月の運用費が固まってから

個人開発 Advent Calendarとも迷ったけどこちらに書かさせてもらいました。
VSCode機能拡張作成の際はどうぞご贔屓に。

5
2
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
5
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?