Skip to content

Instantly share code, notes, and snippets.

@nota-ja
Last active August 29, 2015 14:20
Show Gist options
  • Star 1 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save nota-ja/ac45b94cebf4f6493574 to your computer and use it in GitHub Desktop.
Save nota-ja/ac45b94cebf4f6493574 to your computer and use it in GitHub Desktop.
Major Updates of Cloud Foundry in the Last (approx.) One Year (2/3)

ここ1年ほどの Cloud Foundry の更新 中編

【この記事は, Cloud Foundry 情報発信強化週間 の記事の一つです】

 この記事は, https://github.com/cloudfoundry-community/cf-docs-contrib/wiki/All-CF-Releases (※0) に基づいて,ここ1年くらいに Cloud Foundry (以下"CF") のソースコードに入った更新を簡単にまとめるものです。

 この中編では,2014年9月2日の v182 から,2014年12月29日の v195 までについて記します。

◆ v182 (2014/09/02)

URL: https://github.com/cloudfoundry-community/cf-docs-contrib/wiki/v182

▷ Feature Flags 機能

 Feature Flags 機能が導入されました。

 この機能は,CF 管理者が,以下の6つの機能の on / off の切り替えを行うことを可能にします(カッコ内はデフォルト値)。

  • user_org_creation (false): true の場合,API 経由で一般ユーザーが organization を作ることが可能
  • private_domain_creation (true): true の場合,OrgManager は自分の管理する org に対して private domain を作ることが可能
  • app_bits_upload (true): true の場合,SpaceDeveloper はアプリをアップロード可能
  • app_scaling (true): true の場合,SpaceDeveloper はアプリの scale (メモリー割り当てやインスタンス数の変更)が可能
  • route_creation (true): true の場合,SpaceDeveloper は space 内に route を作ることが可能
  • service_instance_creation (true): true の場合,SpaceDeveloper は space 内に service を作ることが可能

▷ Environment Variable Groups 機能

 環境変数グループ機能が導入されました。

 この機能は,CF 管理者が,ステージング時/アプリ実行時の環境に独自に環境変数を設定することを可能にします。
 以下,v207 環境で試した例です。

 管理者としてログインし,staging-environment-variable-group / running-environment-variable-group を設定します。

$ cf login admin
..
API endpoint:   https://api.10.244.0.34.xip.io (API version: 2.25.0)
User:           admin
Org:            demo
Space:          demo
$ cf set-staging-environment-variable-group '{"name1":"value","name2":"value"}'
Setting the contents of the staging environment variable group as admin...
OK
$ cf set-running-environment-variable-group '{"name3":"value","name4":"value"}'
Setting the contents of the running environment variable group as admin...
OK

 設定値を確認します。

$ cf staging-environment-variable-group
Retrieving the contents of the staging environment variable group as admin...
OK
Variable Name   Assigned Value
name1           value
name2           value
$ cf running-environment-variable-group
Retrieving the contents of the running environment variable group as admin...
OK
Variable Name   Assigned Value
name3           value
name4           value

 一般ユーザーでも,設定値を確認することはできます。

nota@NotaBookPro:~/repos/My/cf-example-ruby-ver[2015-05-06T00:05:51]!2051$ cf login -u demo
..
API endpoint:   https://api.10.244.0.34.xip.io (API version: 2.25.0)
User:           demo
Org:            demo
Space:          demo
$ cf sevg
Retrieving the contents of the staging environment variable group as demo...
OK
Variable Name   Assigned Value
name1           value
name2           value
$ cf revg
Retrieving the contents of the running environment variable group as demo...
OK
Variable Name   Assigned Value
name3           value
name4           value
nota@NotaBookPro:~/repos/My/cf-example-ruby-ver[2015-05-06T00:07:00]!2054$

 アプリごとの環境変数設定を見る env コマンドでも確認できます。

$ cf env rv
Getting env variables for app rv in org demo / space demo as demo...
OK

System-Provided:


{
 "VCAP_APPLICATION": {
  "application_name": "rv",
  "application_uris": [
   "rv.10.244.0.34.xip.io"
  ],
  "application_version": "39dd88ea-cb81-4d7e-b617-304404b350ff",
  "limits": {
   "disk": 1024,
   "fds": 16384,
   "mem": 256
  },
  "name": "rv",
  "space_id": "3251672c-c8b6-4070-9254-b421a2ad2694",
  "space_name": "demo",
  "uris": [
   "rv.10.244.0.34.xip.io"
  ],
  "users": null,
  "version": "39dd88ea-cb81-4d7e-b617-304404b350ff"
 }
}

No user-defined env variables have been set

Running Environment Variable Groups:
name3: value
name4: value

Staging Environment Variable Groups:
name1: value
name2: value

 一般ユーザーでは,値を設定することはできません。

$ cf ssevg '{"name1":"value","name2":"value"}'
Setting the contents of the staging environment variable group as demo...
FAILED
Server error, status code: 403, error code: 10003, message: You are not authorized to perform the requested action

env.log の廃止

 アプリの実行環境で使用される環境変数が出力されるファイル env.log が廃止されました。廃止はセキュリティ上の理由によるものです。当初はアプリごとに選択可能にするという pull request だったようですが,残す理由がなさそうということで廃止になりました。

▷ Gorouter でのプロキシー方法の変更

 Gorouter でのプロキシー方法が多少変わりました。従来は,受け取った URL のパス部分をデコードし,upstream にアクセスするときに再度エンコードしていたのですが,一部の文字コードの変換に問題があったため,URLをデコード/エンコードせず,そのまま渡すようになりました。

◆ v183 (2014/09/03)

URL: https://github.com/cloudfoundry-community/cf-docs-contrib/wiki/v183

▷ アプリ実行環境で FUSE が利用可能に

 アプリの実行環境である Warden コンテナー内で,FUSE を使ってファイルシステムのマウントができるようになりました。これを使ったファイルシステムの例としては, sshfs を使った stackato-service-filesystem があるようです。

▷ Ruby Buildpack v1.1.0

 大きな更新はないようでした。詳細は こちら で。

◆ v184, v185

 問題があると判断され,タグが削除されました。

◆ v186 (2014/09/25)

URL: https://github.com/cloudfoundry-community/cf-docs-contrib/wiki/v186

▷ Buildpack を DEA にダウンロードするタイミングの変更

 Buildpack の DEA へのダウンロードが,最初のアプリのデプロイ時から,DEA の起動時に変更されました。これは最初のアプリのステージング/実行に時間がかかりすぎてタイムアウトしてしまう現象を回避するための修正です。

▷ Buildpack の更新

 以下の buildpack が更新されました。目立った変更はないようだったので,詳細はそれぞれ以下で。

▷ 複数 SAML IDP サポート

 Login Server 1.8.5 で,複数 SAML IDP がサポートされるようになりました。

▷ デフォルトのスコープが設定可能に

 これまでユーザーのデフォルト・スコープは固定だったのですが,UAA 1.8.3 で,uaa.yml ファイルから設定可能になりました。

▷ login クライアントの redirect 時プロトコルが login.protocol で指定可能に

 これまで login クライアントの redirect 時のプロトコルは HTTPS 固定だったのですが,証明書を使用しないでデプロイしてログインできないというトラブルが多かったため, login.protocol というプロパティで指定可能になりました。

◆ v187 (2014/09/26)

URL: https://github.com/cloudfoundry-community/cf-docs-contrib/wiki/v187

 このリリースは "Shellshock" 脆弱性の対応が主で,機能更新らしいものはあまりありませんでした。

▷ Go Buildpack v1.0.2

 詳細は こちら で。

◆ v188 (2014/09/30)

URL: https://github.com/cloudfoundry-community/cf-docs-contrib/wiki/v188

 このリリースも "Shellshock" 脆弱性の対応が主だったようです。

▷ python buildpack to v1.0.3

 詳細は こちら で。

▷ Java Buildpack v2.5

 重要な更新としては,Java 8 / Tomcat 8 がデフォルトになったことです。この時点ではまだ本家の Java Buildpack で Java や Tomcat のバージョンを簡単に変更できなかった(変更するには fork してデフォルトを書き換える必要があった)ので,この更新は大きな影響がありました。

 詳細は こちら から。

◆ v189 (2014/10/08)

URL: https://github.com/cloudfoundry-community/cf-docs-contrib/wiki/v189

▷ Buildpack の更新

 それぞれにそれほど大きな更新は入っていませんでした。

▷ 常に router.register を一定間隔で実施するよう変更

 従来,アプリのインスタンスが1つもない DEA は router.register を送らなかったのですが,常に送るようになりました。

◆ v190 (2014/10/16)

URL: https://github.com/cloudfoundry-community/cf-docs-contrib/wiki/v19

▷ ruby buildpack v1.1.2

 あまり大きな更新はなかったようです。詳細は こちら

▷ CC の syslog forwarder を metron agent に変更

 この時期の CF では,logging と metrics を新しく metron / dropsonde / NOAA ベースのものに移行する取り組みが続いていました。この変更もその一環です。

◆ v191 (2014/10/22)

URL: https://github.com/cloudfoundry-community/cf-docs-contrib/wiki/v19

 このリリースは POODLE 脆弱性対応も大きなウェイトを占めていました。

▷ /v2/apps/:guid/env に VCAP_APPLICATION の情報を追加

 v207環境で試した結果はこんな感じです。

$ cf curl /v2/apps/7d03e5a8-c1b7-4012-9193-2400db8b262b/env
{
   "staging_env_json": {
      "name1": "value",
      "name2": "value"
   },
   "running_env_json": {
      "name3": "value",
      "name4": "value"
   },
   "environment_json": {},
   "system_env_json": {
      "VCAP_SERVICES": {}
   },
   "application_env_json": {
      "VCAP_APPLICATION": {
         "limits": {
            "mem": 256,
            "disk": 1024,
            "fds": 16384
         },
         "application_version": "39dd88ea-cb81-4d7e-b617-304404b350ff",
         "application_name": "rv",
         "application_uris": [
            "rv.10.244.0.34.xip.io"
         ],
         "version": "39dd88ea-cb81-4d7e-b617-304404b350ff",
         "name": "rv",
         "space_name": "demo",
         "space_id": "3251672c-c8b6-4070-9254-b421a2ad2694",
         "uris": [
            "rv.10.244.0.34.xip.io"
         ],
         "users": null
      }
   }
}

▷ /v2/apps/:guid/copy_bits の追加 (Experimental)

 あるアプリのソースコードを別のアプリにコピーすることができる API が追加されました。

 v207 環境で試した例は以下の通りです。

 空の Gemfile だけのアプリを CF にデプロイします。起動はしないよう --no-start を付けています。

$ ll
total 0
drwxr-----+  3 nota  staff  102  5  6 14:43 ./
drwxr-----+ 21 nota  staff  714  5  6 14:42 ../
-rw-r-----+  1 nota  staff    0  5  6 14:43 Gemfile
$ cf push rv2 --no-start
Creating app rv2 in org demo / space demo as demo...
OK

Creating route rv2.10.244.0.34.xip.io...
OK

Binding rv2.10.244.0.34.xip.io to rv2...
OK

Uploading rv2...
Uploading app files from: /Users/nota/work/dummy
Uploading 128, 1 files
Done uploading
OK

 copy_bits API を使ってアプリのコピーを行います。デフォルトではコピー先のアプリは自動再起動されます。

$ CF_TRACE=true cf copy-source rv rv2

VERSION:
6.11.2-2a26d55
(..略..)
REQUEST: [2015-05-06T14:44:52+09:00]
POST /v2/apps/08849d0a-537f-41ea-9f4c-cd8545b4746c/copy_bits?async=true HTTP/1.1
Host: api.10.244.0.34.xip.io
Accept: application/json
Authorization: [PRIVATE DATA HIDDEN]
Content-Type: application/json
User-Agent: go-cli 6.11.2-2a26d55 / darwin

{"source_app_guid":"7d03e5a8-c1b7-4012-9193-2400db8b262b"}

RESPONSE: [2015-05-06T14:44:52+09:00]
HTTP/1.1 201 Created
Content-Length: 270
Content-Type: application/json;charset=utf-8
Date: Wed, 06 May 2015 05:44:52 GMT
Server: nginx
X-Cf-Requestid: 24312889-264a-4f4f-54fb-2dd0071ca689
X-Content-Type-Options: nosniff
X-Vcap-Request-Id: 6c0a5de6-ba05-48c8-5f67-cc6da2138885::85553e10-5398-41cb-b7e8-7b83e1d45398

{
  "metadata": {
    "guid": "1e365ff3-18cf-4d16-979e-107726d642b0",
    "created_at": "2015-05-06T05:44:52Z",
    "url": "/v2/jobs/1e365ff3-18cf-4d16-979e-107726d642b0"
  },
  "entity": {
    "guid": "1e365ff3-18cf-4d16-979e-107726d642b0",
    "status": "queued"
  }
}
(..略..)
requested state: started
instances: 1/1
usage: 256M x 1 instances
urls: rv2.10.244.0.34.xip.io
package uploaded: Wed May 6 05:44:56 UTC 2015
stack: cflinuxfs2

     state     since                    cpu    memory          disk      details
#0   running   2015-05-06 02:45:20 PM   0.0%   43.4M of 256M   0 of 1G
OK

 コピー元だけでなく,コピー先のアプリもあらかじめ存在している必要があるので,使い方としては,新バージョンのアプリを別名で起動しておいて,それを旧バージョンのアプリにコピーするなどが考えられると思います。

◆ v192 (2014/11/06)

URL: https://github.com/cloudfoundry-community/cf-docs-contrib/wiki/v19

 このリリースからリリース情報の構造がシステマティックになり,情報量も増えました。主な更新は以下の通りです。

▷ HM9000 と CC の通信方法の変更

 HM9000 が Cloud Countroller と通信する方法が,NATS から HTTP に変更されました。これは HM9000 の API が無応答状態になってしまうのを解決するための修正です。

cf. https://www.pivotaltracker.com/n/projects/966314/stories/80850336

▷ CC の AppEvent API を deprecated に

 Cloud Controller の AppEvent API は意味のある情報を持たなくなって久しかったので,deprecated になりました。

cf. https://www.pivotaltracker.com/n/projects/966314/stories/77626184

▷ login server を spiff template から無効にすることが可能に

 login server を spiff template から無効にすることが可能になりました。これにより login server を使わず UAA のみを使うデプロイが簡単になりました。

cf. https://www.pivotaltracker.com/n/projects/966314/stories/81069846

▷ Ruby Buildpack v1.1.3

 大きな更新はありませんでした。詳細は こちら

▷ Process Types (experimental) の開発開始

 Procfile で Web 以外の Process Type をサポートするための開発が始まりました。Process Type については(ここで紹介することは難しいので)詳細は CF の design documentHeroku のこのページ をご覧ください。なお現時点 (v207) ではまだ正式リリースされていません。

▷ Service Broker API へのプラン変更機能の追加

 Service Broker API に「プラン変更」が追加されました。Broker が対応していれば,ユーザーは作成済みの service instance のプランを変更することができるようになります。なお,これは API 仕様の更新であり,実際のコードの更新はこの後のリリースで入ります。

cf. http://docs.cloudfoundry.org/services/api.html#updating_service_instance

▷ Loggregator firehose

 CF のコンポーネントや CF 上のアプリの log / metrics を取り出す(統一的な) streaming API "firehose" がリリースされました。これも大きな変更で,ここで紹介することは困難なので,詳細については こちらこちら などをご覧ください。

▷ Loggregator streaming endpoint の OAuth 認証

 Loggregator streaming endpoint で cookie を使って oauth token が取得できるようになりました。

▷ Login Server 関連

 比較的大きな幾つかの修正が Login Server 1.9.0 で入りました。

  • Email アドレス変更が可能に ただし UAA 内部のユーザーのみで,LDAP / SAML 等の外部ユーザーは対象外です
  • Notifications Server との統合 CF の Notifications Server と統合され,ユーザーへのメイル通知を Notifications Server を使って送れるようになりました
  • Spring Security OAuth が 1.0.5 から 2.0.3 に

◆ v193 (2014/11/17)

URL: https://github.com/cloudfoundry-community/cf-docs-contrib/wiki/v19

 このリリースは NFS のマウントに問題があるため,複数 CC 間のデータ共有に NFS を使っている環境では使えません。なおこの問題は次のリリース (v193) で修正されました。

▷ CC API の inlined relations 関連パラメーターの拡張

 CC の API (参照系) には,inline-relations-depth というパラメーターがあり,深さを指定することでモデルをまたいで再帰的に情報を取得することが可能になっています。その処理の性能を改善するために,以下の三つのパラメーターが追加されました。

  • orphan-relations これを指定すると,リレーションがネストではなくルートに埋め込む形で返されます
    パースが楽になるのがメリットだと思われます
  • exclude-relations 指定されたの名前のリレーションを除外します
    , 区切りで複数指定することも可能です
  • include-relations 指定された名前のリレーションのみを取得します
    , 区切りで複数指定することも可能です

cf. https://www.pivotaltracker.com/story/show/79917792

▷ /v2/organizations/:guid/memory_usage の追加

 Org 全体でどれだけのメモリを消費しているかを取得する API endpoint /v2/organizations/:guid/memory_usage が追加されました。

 v207 環境で試した結果は以下の通りです。

$ cf org demo --guid
69d95c47-2e8c-42af-ac1d-7d99154eaa8d
$ cf curl /v2/organizations/69d95c47-2e8c-42af-ac1d-7d99154eaa8d/memory_usage
{
   "memory_usage_in_mb": 512
}

cf. https://www.pivotaltracker.com/story/show/81065364

▷ Gorouter の route 情報の expire 期間の指定

 Gorouter に router.register を行う際,expire 期間を指定することが可能になりました。NATS プロトコルの話なので,ユーザーではなく運用者機能ですが,service broker を NATS を使って冗長化/並列化する際には有用であると思われます(実際にそもそもの動機も MySQL service broker の負荷分散でした)。

cf. https://www.pivotaltracker.com/n/projects/966314/stories/81878766

▷ request_timeout_in_seconds のデフォルト値変更

request_timeout_in_seconds のデフォルト値が300秒(5分)から900秒(15分)に変更されました。理由はわかりません。

cf. https://www.pivotaltracker.com/n/projects/966314/stories/80931258

▷ staging の状態が長時間 PENDING になっているパッケージの整理

 staging の状態が PENDING になっているパッケージが定期的に整理されて FAILED にされることになりました。期間の指定は cc.pending_packages.expiration_in_seconds で行うことが可能で,デフォルト値は1200秒(20分)です。

cf. https://www.pivotaltracker.com/n/projects/966314/stories/80259334

◆ v194 (2014/12/02)

URL: https://github.com/cloudfoundry-community/cf-docs-contrib/wiki/v19

▷ CC の bin/console の不具合の修正

 CC の bin/console が gem 関連の問題で正常に動作しなかったのが修正されました。bin/console は,CC を pry のコンソール・モードで起動するもので,デバッグの時などに有用なツールです。

cf. https://www.pivotaltracker.com/n/projects/966314/stories/81126332

▷ Ruby Buildpack v1.1.4

 大きな更新はありませんでした。詳細は こちら

▷ CC が HM9000 にアクセスする際のユーザーのデフォルト値の追加

 CC が HM9000 にアクセスする際のユーザーのデフォルト値として,CC のテンプレートで使われているのと同じ internal_user が設定されました。

cf. https://www.pivotaltracker.com/n/projects/966314/stories/82901242

▷ Notification Service の admin ユーザー向けデフォルト・スコープ

 Notification Service のデフォルト・スコープが,将来含め全ての admin ユーザーに適用されるようになりました。

cf. https://www.pivotaltracker.com/n/projects/1107230/stories/80596206

▷ Gorouter の GOMAXPROCS の変更

 Gorouter の GOMAXPROCS のデフォルト値が,固定値の 8 から runtime.NumCPU() を使うように変更されました。

 以前 Gorouter の性能評価をした ことがあって,性能的に割と残念だったのですが,その原因の一つにこの GOMAXPROCS が (8 に固定されていることが) あるかもしれないと考えていました。どこかで時間があったらもう一度性能評価をしたいと考えています。

cf. https://www.pivotaltracker.com/n/projects/966314/stories/82480664

▷ UAA / Login Server 1.9.1

 UAA と Login Server が共に 1.9.1 になりました。大きな変更はなかったようです。

◆ v195 (2014/12/29)

URL: https://github.com/cloudfoundry-community/cf-docs-contrib/wiki/v19

 このリリースはかなり大型で,調査が大変でした。

▷ Buildpack 更新

 以下の buildpack が更新されました。マイナー・バージョンが変わった Java と Ruby 以外は,大きな変更はありませんでした。

▷ アプリが実行されている Warden コンテナー内での core ファイル出力を可能に

 Warden コンテナーの rlimit_core を設定可能にすることで,設定に基づいて core ファイルが出力できるようになりました。

cf. https://www.pivotaltracker.com/n/projects/966314/stories/83102260

▷ UAA / Login Server の IP アドレスに基づくアクセス制御

 UAA / Login Server に IP アドレスに基づくアクセス制御機能が追加されました。

cf. https://github.com/cloudfoundry/cf-release/pull/547/files

▷ Collector のログレベル設定

 Collector のログレベルが設定可能になりました。

cf. https://www.pivotaltracker.com/n/projects/966314/stories/83468558

▷ 「タイムアウトなし」設定

 ネットワークが非常に遅い環境などでもアプリのデプロイが行えるよう,CCの request_timeout_in_seconds0 にすると「タイムアウトなし」にできるようになりました。

cf. https://www.pivotaltracker.com/n/projects/966314/stories/84079612

▷ デプロイされるアプリの2倍のリソースが必要と判断してしまう問題の修正

 DEA が,デプロイされるアプリが必要とするリソースを過剰に見積もってしまう問題が修正されました。これは,リソースのチェック前に,これからデプロイされるアプリがレジストリーに登録されてしまっていたことによるものです。

cf. https://www.pivotaltracker.com/n/projects/966314/stories/81721664

▷ より柔軟なドメイン名生成ルール

 以下のようなルールに基づき,より柔軟にドメイン名を生成することが可能になりました。

  • 共有ドメインのサブドメインをプライベート/共有ドメインとして生成できる
  • プライベート/共有ドメインの親ドメインを共有ドメインとして生成できる
  • 同じOrg内であれば,プライベート・ドメインのプライベートなサブ/親ドメインを生成できる
  • ドメインが生成される時は,適合するルートのチェックが行われる
  • ルートが生成される時は,適合するドメインのチェックが行われる
  • 親のプライベート・ドメインに対して,共有ドメインを生成することはできない

cf. https://www.pivotaltracker.com/n/projects/966314/stories/83505974

▷ DEA から HM9000 にハートビートを送る条件の変更

 cf app などで取得される HM9000 のインスタンス情報が正しく表示されるよう,アプリのインスタンスの有無にかかわらず DEA から HM9000 にハートビートが送られるようになりました。これにより,全てのインスタンスが正常であるにもかかわらず,インスタンス数が ?/2 のように表示されるのを避けることができるようになります。

cf. https://www.pivotaltracker.com/n/projects/966314/stories/84509968

▷ Droplet のアップロード時のポーリング再試行

 Droplet のアップロード後にポーリングを行った際,エラーが HTTP timeout であればポーリングを再試行するようになりました。これにより,droplet のアップロードが成功しているにもかかわらず staging が FAILED と判断されてしまうのを防ぐことができるようになります。

cf. https://www.pivotaltracker.com/n/projects/966314/stories/81065428

▷ Delayed job worker が deadlock してしまう問題の修正

 Delayed job 用の gem を変更することにより,delayed job worker が deadlock してしまう問題が修正されました。

cf. https://www.pivotaltracker.com/n/projects/966314/stories/84346198

▷ Service のプラン更新機能

 Service のプラン更新機能の実装が完了,したようなのですが,下記の URL を見ても何も情報がないので,詳細は不明です。

cf. https://www.pivotaltracker.com/n/projects/1211680/epics/1533368

▷ Service Audit Events

 Service の操作監視イベントを記録する "Service Audit Events" 機能の実装が行われています。この機能は v196 で実装が完了したようです。

▷ UAA / Login Server 1.11

 UAA と Login Server のバージョンが 1.11 になりました。大きな更新はないようでした。

中編まとめ

 大きめの feature の追加としては,

  • Feature Flags
  • Environment Variable Groups
  • Service のプラン更新
  • Loggregator firehose

などでしょうか。

 そのほか,

  • FUSE を使ったファイルシステム・サービスの実現
  • copy_bits API の追加
  • CC の inlined relations 関連処理の高速化
  • Org のメモリ消費量の取得
  • 柔軟なドメイン生成ルール

などが便利そうです。

 全般的な印象としては,

  • Logging / metrics
  • Buildpack

等への注力が大きく,本体の更新はバグ修正が中心になっていると感じました。

 Diego (CF v3) という大きなアーキテクチャの更改を前に,そちらにリソースが振り分けられていること,及び Diego のリリースに伴って旧版となる DEA / HM9000 等はメインテナンス・モードに入っているのかもしれません。

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment