Add recipes path handling
>>> [!note] Migrated issue <!-- Drupal.org comment --> <!-- Migrated from issue #3546508. --> Reported by: [jcandan](https://www.drupal.org/user/1831444) Related to !421 !408 >>> <h3 id="summary-problem-motivation">Problem/Motivation</h3> <p>When this template is applied to a Recipe project, the symlink is placed in <code>web/modules/custom/</code>. If using the <code>GenericTest.php</code>, the project path cannot find the other recipes.</p> <h3 id="summary-proposed-resolution">Proposed resolution</h3> <ul> <li>Introduce a new project type of "recipe"</li> <li>As recipes do not have a .info.yml to read the type, detect if a <code>recipe.yml</code> file exists</li> <li>The environment variable <code>$PROJECT_TYPE</code> can still be used to preset or override the type</li> <li>Introduce a new variale <code>$DRUPAL_RECIPES_PATH</code> which is the path from the build root to the recipes folder. The default is 'recipes'</li> <li>If the project is a recipe then no value is set for <code>$DRUPAL_PROJECTS_PATH</code></li> <li>The exitsing variable <code>$DRUPAL_PROJECT_FOLDER</code> remains as the full absolute path to the deeper-level project folder being tested.</li> <li>For modules, themes and profiles, the value is <code>$CI_PROJECT_DIR/$DRUPAL_PROJECTS_PATH/$PROJECT_NAME</code>, for example <code>/builds/project/my_theme/web/themes/custom/my_theme</code></li> <li>For recipes the value is <code>$CI_PROJECT_DIR/$DRUPAL_RECIPES_PATH/$PROJECT_NAME</code>, for example <code>/builds/project/my_recipe/recipes/my_recipe</code></li> <li>As recipe test files need to be real, not symlinks, at the start of the recipe phpunit job the project's /test/ folder symlinks are replaced by copying the real files</li> </ul>
issue