Skip to content

/vscode の導入後、共通の VS Code Server ボリュームが本体の実体と /vscode へのリンクを混ぜて持つ #510

Open

Description

@takemi-ohama

何を見つけたか

#507(PR #508)で、どの dev インスタンスにも Dev Containers の共有の置き場(ボリューム vscode)を /vscode に付けた。置き場が付いたコンテナでは、Dev Containers 拡張が VS Code Server の新しい版の本体を /vscode/vscode-server/bin/<build>/<commit> に置き、~/.vscode-server/bin/<commit> にはそこへのリンクを張る。

その結果、共通の VS Code Server ボリューム devbase_vscode-server-bin(#463)は、次の 2 つが混ざった形になる。

中身 出どころ
<commit>/(本体の実体) /vscode を付ける前に入った版
<commit> -> /vscode/vscode-server/bin/<build>/<commit>(リンク) /vscode を付けた後に入った版

本体の置き場が 2 か所になり、版の数の上限も 2 つ(entrypoint の片付けの 5 版、Dev Containers の 9 版)が並ぶ。共通のボリュームを今後も持つか、/vscode へ寄せて畳むかを決めていない。

どこで見つけたか

PR #508 の本文の「後の課題」に「役割の見直しは別にする」と書いたが、起票していなかった。#507 の振り返りで取りこぼしとして拾った。仕様は docs/specifications/vscode-server-volume.md の「概要」。

なぜこの変更の範囲外なのか

#507 の受け入れ条件は、別の CPU 向けの拡張がコンテナへ送られて attach が止まることを断つことに限る。共通のボリュームの役割は、その条件を満たすのに変える必要が無い。根拠: MVV 版 1(判断の範囲は目の前の変更に限る)。

直さないと何が起きるか

  • 本体の置き場が 2 か所に分かれたまま残り、どちらに何版あるかを読む手間が増える
  • 共通のボリュームのリンクは、/vscode を持たないコンテナから見ると切れて見える。移行の間の片付けは PR Fix: Dev Containers の共有の置き場 vscode を dev コンテナへ付ける (#507) #508 の 3caa0e3 で避けたが、共有のボリュームとマウントの有無が食い違う形そのものは残る
  • 旧版の実体は、Dev Containers 側の版の上限では消えず、entrypoint の片付けに頼る

起票者の推定

由来

issue #507

Activity

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

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions