状況
package.jsonに記述したスクリプトからトークンを参照したい場合があり、以下のように直接記述するのではなく.envで管理したい。
// package.json
...
"scripts": {
"chromatic": "npx chromatic --project-token ABCDEFG1234"
}
...
対応
package.jsonに埋め込めなさそうだったので、大人しく別のスクリプトファイルに切り出すことにした。
# .env
CHROMATIC_TOKEN=ABCDEFG1234
// scripts/chromatic-upload.js
const path = require("path");
const dotenv = require("dotenv");
const env = dotenv.config({path: path.join(__dirname, "../.env") }).parsed;
const exec = require("child_process").exec;
const res = exec(`npx chromatic --project-token ${env.CHROMATIC_TOKEN}`);
console.log(res);
package.jsonから呼び出すように修正。
// package.json
...
"scripts": {
"chromatic": "node scripts/chromatic-upload.js"
}
...