iqual/drupal-platform

Project asset package for the iqual internal developer platform's Drupal integration.

Installs: 7 356

Dependents: 0

Suggesters: 0

Security: 0

Stars: 0

Watchers: 3

Forks: 0

Open Issues: 0

Language:Twig

v1.6.3 2024-05-07 09:05 UTC

README

This is a project asset composer package to be used with the iqual/project-scaffold Composer plugin for creating new or updating existing projects with pre-defined assets.

The bundled assets are for the iqual internal developer platform's Drupal integration. It supports a local (and remote) VS Code setup running docker-compose containers, integrations for Drupal deployments on Kubernetes or Platform.sh and workflows for automation.

Disclaimer: This package is not (yet) intended for public usage and depends on iqual's internal developer platform.

Platform Features

  • Local development environment with docker-compose
  • VS Code setup with .devcontainer
  • Workflows for Drupal automation using GitHub Actions
  • Integration for Kubernetes or Platform.sh
  • Drush configuration for SSH proxy
  • Makefile commands for project and app tasks

Package Variables

  • name: Code name of the project (e.g. iqual)
  • title: Title of the project (e.g. iqual AG)
  • url: URL to the current remote live deployment (e.g. https://www.iqual.ch)
  • drupal_spot: The drupal single point of truth for asset synchronization (e.g. prod)
  • runtime.php_version: PHP version of the platform (e.g. 8.2)
  • runtime.db_version: Database version of the platform (e.g. 10.6)
  • deployment: Remote deployment integration (e.g. kubernetes)

Check the documentation for a full list of the Drupal Platform's available package variables.

Managed Assets

List of files that are going to be managed in the destination project by this package.

Added Assets

Assets that are only added if it doesn't exist in the target yet:

Show structure of added assets
assets/add/
├── .platform
│   └── routes.yaml.twig
└── @web-root
    └── sites
        └── default
            ├── all.settings.php
            ├── local.services.yml
            └── local.settings.php.twig

Replaced Assets

Assets that are fully managed by the package and will be created if inexistant or otherwise overwritten in the target destination:

Show structure of replaced assets
assets/replace/
├── .devcontainer
│   └── devcontainer.json
├── .github
│   ├── actions
│   │   ├── install-local
│   │   │   └── action.yml.twig
│   │   └── upgrade
│   │       ├── rector.php
│   │       └── upgrade.sh
│   └── workflows
│       ├── phpcs.yml.twig
│       ├── phpunit-functional-testing.yml.twig
│       ├── phpunit-unit-testing.yml.twig
│       ├── testing.yml.twig
│       ├── upgrade.yml.twig
│       └── visual-regression-testing.yml.twig
├── .vscode
│   ├── launch.json
│   └── settings.json.twig
├── @app-root
│   ├── phpunit.xml.dist
│   ├── .environment.twig
│   ├── drush
│   │   ├── drush.yml
│   │   ├── platformsh_generate_drush_yml.php.twig
│   │   └── sites
│   │       └── self.site.yml.twig
│   ├── php.ini.twig
│   └── resources
│       ├── build.sh.twig
│       ├── deploy.mk.twig
│       ├── deploy.sh.twig
│       ├── drupal.mk
│       ├── robots.txt.twig
│       └── utility.mk
├── @web-root
│   └── sites
│       └── default
│           ├── settings.php
│           └── settings.platformsh.php.twig
├── Makefile
├── README.md.twig
├── manifests
│   ├── dev
│   │   └── patch.yml.twig
│   ├── stage
│   │   └── patch.yml.twig
│   ├── prod
│   │   └── patch.yml.twig
│   └── local
│       └── docker-compose.yml.twig
└── solr
    └── site_search
        └── README.md.twig

Merged Assets

Assets that will be merged into existing destination files or added if inexstistant:

Show structure of merged assets
assets/merge/
├── .dockerignore
├── .env.twig
├── .env.visreg.twig
├── .gitattributes
├── .gitignore.twig
├── .platform
│   └── services.yaml.twig
└── .platform.app.yaml.twig

Documentation