From 7c32f10ebecc1c61ac7ee55edd3e5577d616d7c5 Mon Sep 17 00:00:00 2001
From: jurgenhaas <juergen.haas@lakedrops.com>
Date: Thu, 7 Sep 2023 19:29:52 +0200
Subject: [PATCH] composer/plugin/docker4drupal#63 Ensure templated files are
 writeable and set them read-only afterwards if they don't go into git, as
 they will be overwritten next time

---
 src/Handler.php | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/src/Handler.php b/src/Handler.php
index 2325669..dcbe82a 100644
--- a/src/Handler.php
+++ b/src/Handler.php
@@ -447,7 +447,11 @@ class Handler extends BaseHandler {
         if (empty($def['add2git'])) {
           $this->gitIgnore($filename);
         }
+        $fs->chmod($file, 0664);
         file_put_contents($file, $rendered);
+        if (empty($def['add2git'])) {
+          $fs->chmod($file, 0444);
+        }
       }
       if (isset($def['link']) && ($def['link'] !== $settingsPath)) {
         $link = $def['link'] . '/' . $filename;
@@ -465,7 +469,9 @@ class Handler extends BaseHandler {
       $settingsPhp = file_get_contents($settingsPhpFile);
       if (strpos($settingsPhp, 'settings.docker.php') === FALSE) {
         $settingsPhp .= "\n\nif (file_exists(__DIR__ . '/settings.docker.php')) {\n  include __DIR__ . '/settings.docker.php';\n}\n";
+        $fs->chmod($settingsPhpFile, 0664);
         file_put_contents($settingsPhpFile, $settingsPhp);
+        $fs->chmod($settingsPhpFile, 0444);
       }
     }
 
-- 
GitLab