diff --git a/.changeset/blue-fishes-grow.md b/.changeset/blue-fishes-grow.md new file mode 100644 index 0000000..c5dc0a2 --- /dev/null +++ b/.changeset/blue-fishes-grow.md @@ -0,0 +1,5 @@ +--- +"create-solana-program": patch +--- + +Fix program env variable regex diff --git a/template/base/scripts/utils.mjs b/template/base/scripts/utils.mjs index d5c3fc4..9bbe49b 100644 --- a/template/base/scripts/utils.mjs +++ b/template/base/scripts/utils.mjs @@ -28,9 +28,18 @@ export function getExternalProgramAddresses() { let didWarnAboutMissingPrograms = false; export function getProgramFolders() { - const programs = process.env.PROGRAMS - ? process.env.PROGRAMS.split(/\s+/) - : getAllProgramFolders(); + let programs; + + if (process.env.PROGRAMS) { + try { + programs = JSON.parse(process.env.PROGRAMS); + } catch (error) { + programs = process.env.PROGRAMS.split(/\s+/); + } + } else { + programs = getAllProgramFolders(); + } + const filteredPrograms = programs.filter((program) => fs.existsSync(path.join(workingDirectory, program)) );