diff --git a/.circleci/config.yml b/.circleci/config.yml index e9712c634314526a3e81addb67bb3080602e2045..77bdf9c94197b29430e0a01be28c2e9255262c03 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -79,15 +79,15 @@ commands: - run: name: npm install command: | - # use npm ci instead of npm install to make sure that it will install exact packages - # described in package-lock.json, without any additionnal checks - npm ci + mv package-lock.json package-lock.json.bak + npm install + php -r "file_put_contents('.package.hash', sha1_file('package-lock.json'));" - save_cache: key: npm-cache-{{ .Environment.CIRCLE_JOB }}-{{ epoch }} paths: - /home/circleci/.npm/_cacache/ - save_cache: - key: npm-install-{{ .Environment.CIRCLE_JOB }}-{{ checksum "package-lock.json" }} + key: npm-install-{{ .Environment.CIRCLE_JOB }}-{{ checksum "package-lock.json.bak" }} paths: - ./node_modules diff --git a/bin/console b/bin/console index e293a64311d6d626ce49570df41d4abc743f48c6..ee1d42bab32a1b9c6424a27add6f2887bde48697 100755 --- a/bin/console +++ b/bin/console @@ -32,9 +32,11 @@ */ // Handle specific dependencies update command that cannot be made upon symfony console -if (isset($_SERVER['argv']) && ['bin/console', 'dependencies', 'install'] === $_SERVER['argv']) { +if (isset($_SERVER['argv']) && ['dependencies', 'install'] === array_slice($_SERVER['argv'], 1, 2)) { + chdir(dirname(__FILE__, 2)); passthru('composer install'); passthru('npm install'); + file_put_contents('.package.hash', sha1_file('package-lock.json')); passthru('npm run-script build-dev'); exit(); }