release-github-actions
release-github-actions copied to clipboard
fix: treat `npm ci` & `npm install` as install command
Description: 概要
BUILD_COMMANDにnpm installやnpm ciが定義されている場合に、以下のコマンドが付与されることを抑制する。
これにより、予期しないインストールプロセスが動いてしまうことを防ぐ。(ex. --ignore-scripts)
npm installnpm install --production(DELETE_NODE_MODULESがtrueでないとき)
close #455
Changes: 変更内容
utils/misc.tsのgetBuildCommands内にあるhasInstallCommandの条件式を下記のように変更- Before:
BUILD_COMMANDに定義されたコマンド内にnpm run installまたはyarn installを含む - After:
BUILD_COMMANDに定義されたコマンド内に${pkgManager} installまたはnpm ci`のいずれかを含む
- Before:
Expected Impact: 影響範囲
BUILD_COMMANDにnpm installやnpm ciを定義していた場合、今まで実行されていたnpm installコマンドが実行されなくなる。
ただ今までの動作がバグ的挙動であるため、実際に影響を受ける可能性は軽微である。
影響を受けるケース
- uses: technote-space/release-github-actions@v8
with:
BUILD_COMMAND: npm ci --ignore-scripts && npm run build
- 現行で実行されるコマンド
npm installnpm ci --ignore-scriptsnpm run buildrm -rdf node_modulesnpm install --production
- 修正後に実行されるコマンド
npm ci --ignore-scriptsnpm run build
今までのビルド動作がnpm install部分(≒postinstallなどで実行されるnpm script)に依存していた場合に、破壊的変更となる。
Operating Requirements: 動作要件
Additional context: 補足
:raised_hands: Thanks for opening this pull request! Please check out our contributing guidelines.