diff --git a/composer.json b/composer.json index d18e85a..3fa74b8 100644 --- a/composer.json +++ b/composer.json @@ -1,8 +1,8 @@ { "name": "setono/deployer-dotenv", - "type": "library", "description": "Easily update your .env files when deploying", "license": "MIT", + "type": "library", "authors": [ { "name": "Joachim Løvgaard", @@ -20,14 +20,7 @@ "phpunit/phpunit": "^9.5", "setono/code-quality-pack": "^2.1" }, - "config": { - "sort-packages": true - }, - "extra": { - "branch-alias": { - "dev-master": "1.1-dev" - } - }, + "prefer-stable": true, "autoload": { "psr-4": { "Setono\\Deployer\\DotEnv\\": "src/" @@ -41,7 +34,18 @@ "Setono\\Deployer\\DotEnv\\": "tests/" } }, - "prefer-stable": true, + "config": { + "allow-plugins": { + "ergebnis/composer-normalize": true, + "dealerdirect/phpcodesniffer-composer-installer": false + }, + "sort-packages": true + }, + "extra": { + "branch-alias": { + "dev-master": "1.1-dev" + } + }, "scripts": { "analyse": "psalm", "check-style": "ecs check", diff --git a/src/task/dotenv.php b/src/task/dotenv.php index 157dce9..a971611 100644 --- a/src/task/dotenv.php +++ b/src/task/dotenv.php @@ -33,6 +33,12 @@ set('stage', 'prod'); } + // this small trick will make sure the environment (i.e. for the console) is set to the expected environment + // when running commands before the generation of the .env.local.php is run + if (!test('[ -f {{release_path}}/.env.local ]')) { + run('echo "APP_ENV={{stage}}" > {{release_path}}/.env.local'); + } + if (has('previous_release') && test('[ -f {{previous_release}}/.env.{{stage}}.local ]')) { run('cp {{previous_release}}/.env.{{stage}}.local {{release_path}}'); } else {