4.7.2. 実行時の devfile の追加
手順
devfile を追加するには、以下を実行します。
devfile レジストリーソースを確認します。
$ git clone https://github.com/redhat-developer/codeready-workspaces; \ cd codeready-workspaces/dependencies/che-devfile-registrydevfile.yamlおよびmeta.yamlを一部のローカルフォルダーに作成します。これは、ゼロから実行することも、既存の devfile からコピーして実行することもできます。$ STACK="new-stack"; \ mkdir -p devfiles/${STACK}; cp devfiles/03_web-nodejs-simple/* devfiles/${STACK}/-
既存の devfile からコピーする場合は、ニーズに合わせて devfile に変更を加えます。新規 devfile に一意の
displayNameおよびdescriptionがあることを確認します。 devfile レジストリーコンテナーをホストする Pod の名前を取得します。これを実行するには、
component=devfile-registryラベルをフィルターします。$ DEVFILE_REG_POD=$(oc get -o custom-columns=NAME:.metadata.name \ --no-headers pod -l component=devfile-registry)レジストリーの
index.jsonファイルを再生成し、新規 devfile を追加します。$ cd codeready-workspaces/dependencies/che-devfile-registry; \ "$(pwd)/build/scripts/check_mandatory_fields.sh" devfiles; \ "$(pwd)/build/scripts/index.sh" > index.json新規ローカルの devfile フォルダーから、新しい
index.json、devfile.yaml、およびmeta.yamlファイルをコンテナーにコピーします。$ cd che-devfile-registry; \ oc exec ${DEVFILE_REG_POD} -i -t -- mkdir -p /var/www/html/devfiles/${STACK}; \ oc cp $(pwd)/devfiles/${STACK}/meta.yaml ${DEVFILE_REG_POD}:/var/www/html/devfiles/${STACK}/meta.yaml; \ oc cp $(pwd)/devfiles/${STACK}/devfile.yaml ${DEVFILE_REG_POD}:/var/www/html/devfiles/${STACK}/devfile.yaml; \ oc cp $(pwd)/index.json ${DEVFILE_REG_POD}:/var/www/html/devfiles/index.json- 新しい devfile は、devfile レジストリーの既存の CodeReady Workspaces インスタンスから使用できるようになりました。これを検出するには、CodeReady Workspaces ダッシュボードに移動してから、Workspaceリンクをクリックします。そこから、Add Workspace をクリックし、利用可能な devfile の更新された一覧を表示します。