diff --git a/.github/workflows/build-base-images.yaml b/.github/workflows/build-base-images.yaml index aa3f4dc..2216e36 100644 --- a/.github/workflows/build-base-images.yaml +++ b/.github/workflows/build-base-images.yaml @@ -4,7 +4,8 @@ on: push: branches: - 'main' - - 'test_build' + tags: + - '*' jobs: build: @@ -40,6 +41,18 @@ jobs: nginx.tags=ghcr.io/${{ github.repository_owner }}/drupal-base-image/nginx:latest php.tags=ghcr.io/${{ github.repository_owner }}/drupal-base-image/php:latest + - name: Build and push remote (tag) + if: ${{ github.ref_type == 'tag' }} + uses: docker/bake-action@v5 + with: + push: true + set: | + *.platform=linux/amd64,linux/arm64 + cli.tags=ghcr.io/${{ github.repository_owner }}/drupal-base-image/cli:${{ github.ref_name }} + nginx.tags=ghcr.io/${{ github.repository_owner }}/drupal-base-image/nginx:${{ github.ref_name }} + php.tags=ghcr.io/${{ github.repository_owner }}/drupal-base-image/php:${{ github.ref_name }} + + - name: List images run: docker image ls @@ -54,4 +67,4 @@ jobs: php.tags=drupal-base-php:latest - name: List images - run: docker image ls \ No newline at end of file + run: docker image ls diff --git a/.lagoon.yml b/.lagoon.yml index 71889c0..ab792aa 100644 --- a/.lagoon.yml +++ b/.lagoon.yml @@ -18,15 +18,20 @@ tasks: command: | if [[ $(drush status --field=Database) == "Connected" ]]; then drush -y updb; fi service: cli + shell: bash # - run: # name: drush cim # # Enable once config sync has been setup. # command: drush -y cim # service: cli + # shell: bash - run: name: drush cr - command: drush -y cr + # This will only run if the database exists. + command: | + if [[ $(drush status --field=Database) == "Connected" ]]; then drush -y cr; fi service: cli + shell: bash environments: main: diff --git a/composer.json b/composer.json index 10c7c3d..1fa087e 100644 --- a/composer.json +++ b/composer.json @@ -24,8 +24,7 @@ "drupal/core-project-message": "10.3.3", "drupal/core-recommended": "10.3.3", "drupal/lagoon_logs": "3.0.1", - "drush/drush": "12.5.3", - "zaporylie/composer-drupal-optimizations": "1.2.0" + "drush/drush": "13.1.1" }, "conflict": { "drupal/drupal": "*" @@ -33,14 +32,12 @@ "minimum-stability": "dev", "prefer-stable": true, "config":{ - "platform": {"php": "8.1.12"}, "sort-packages": true, "allow-plugins": { "composer/installers": true, "cweagans/composer-patches": true, "drupal/core-composer-scaffold": true, "drupal/core-project-message": true, - "zaporylie/composer-drupal-optimizations": true, "dealerdirect/phpcodesniffer-composer-installer": true, "phpstan/extension-installer": true, "php-http/discovery": true diff --git a/composer.lock b/composer.lock index 72772f6..a6b2c0a 100644 --- a/composer.lock +++ b/composer.lock @@ -4,7 +4,7 @@ "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies", "This file is @generated automatically" ], - "content-hash": "e677832932e2b7e07e749b19ca0a8059", + "content-hash": "bd58690f5e5ba77f3edd448b221d3f04", "packages": [ { "name": "amazeeio/drupal_integrations", @@ -1639,54 +1639,57 @@ }, { "name": "drush/drush", - "version": "12.5.3", + "version": "13.1.1", "source": { "type": "git", "url": "https://github.com/drush-ops/drush.git", - "reference": "7fe0a492d5126c457c5fb184c4668a132b0aaac6" + "reference": "79f5f32f2c3f2059b986a2504ace5f14369a359f" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/drush-ops/drush/zipball/7fe0a492d5126c457c5fb184c4668a132b0aaac6", - "reference": "7fe0a492d5126c457c5fb184c4668a132b0aaac6", + "url": "https://api.github.com/repos/drush-ops/drush/zipball/79f5f32f2c3f2059b986a2504ace5f14369a359f", + "reference": "79f5f32f2c3f2059b986a2504ace5f14369a359f", "shasum": "" }, "require": { - "chi-teck/drupal-code-generator": "^3.0", + "chi-teck/drupal-code-generator": "^3.6 || ^4@alpha", "composer-runtime-api": "^2.2", "composer/semver": "^1.4 || ^3", "consolidation/annotated-command": "^4.9.2", - "consolidation/config": "^2.1.2", + "consolidation/config": "^2.1.2 || ^3", "consolidation/filter-via-dot-access-data": "^2.0.2", "consolidation/output-formatters": "^4.3.2", - "consolidation/robo": "^4.0.6", + "consolidation/robo": "^4.0.6 || ^5", "consolidation/site-alias": "^4", "consolidation/site-process": "^5.2.0", + "dflydev/dot-access-data": "^3.0.2", "ext-dom": "*", "grasmash/yaml-cli": "^3.1", "guzzlehttp/guzzle": "^7.0", - "league/container": "^4", - "php": ">=8.1", - "psy/psysh": "~0.11", - "symfony/event-dispatcher": "^6", - "symfony/filesystem": "^6.1", - "symfony/finder": "^6", - "symfony/var-dumper": "^6.0", - "symfony/yaml": "^6.0", - "webflo/drupal-finder": "^1.2" + "laravel/prompts": "^0.1.21", + "league/container": "^4.2", + "php": ">=8.2", + "psy/psysh": "~0.12", + "symfony/event-dispatcher": "^6 || ^7", + "symfony/filesystem": "^6.1 || ^7", + "symfony/finder": "^6 || ^7", + "symfony/var-dumper": "^6.0 || ^7", + "symfony/yaml": "^6.0 || ^7" }, "conflict": { - "drupal/core": "< 10.0", + "drupal/core": "< 10.2", "drupal/migrate_run": "*", "drupal/migrate_tools": "<= 5" }, "require-dev": { "composer/installers": "^2", - "cweagans/composer-patches": "~1.0", - "drupal/core-recommended": "^10", + "cweagans/composer-patches": "~1.7.3", + "drupal/core-recommended": "^10.2.5 || 11.0.x-dev", "drupal/semver_example": "2.3.0", - "phpunit/phpunit": "^9", - "rector/rector": "^0.12", + "jetbrains/phpstorm-attributes": "^1.0", + "mglaman/phpstan-drupal": "^1.2", + "phpunit/phpunit": "^9 || ^10", + "rector/rector": "^1", "squizlabs/php_codesniffer": "^3.7" }, "bin": [ @@ -1771,7 +1774,7 @@ "issues": "https://github.com/drush-ops/drush/issues", "security": "https://github.com/drush-ops/drush/security/advisories", "slack": "https://drupal.slack.com/messages/C62H9CWQM", - "source": "https://github.com/drush-ops/drush/tree/12.5.3" + "source": "https://github.com/drush-ops/drush/tree/13.1.1" }, "funding": [ { @@ -1779,7 +1782,7 @@ "type": "github" } ], - "time": "2024-08-02T11:57:29+00:00" + "time": "2024-09-06T17:17:11+00:00" }, { "name": "egulias/email-validator", @@ -2281,6 +2284,259 @@ ], "time": "2024-07-18T09:59:12+00:00" }, + { + "name": "illuminate/collections", + "version": "v11.22.0", + "source": { + "type": "git", + "url": "https://github.com/illuminate/collections.git", + "reference": "66d2c9bdf5641599735d402c1c504b54734a9cca" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/illuminate/collections/zipball/66d2c9bdf5641599735d402c1c504b54734a9cca", + "reference": "66d2c9bdf5641599735d402c1c504b54734a9cca", + "shasum": "" + }, + "require": { + "illuminate/conditionable": "^11.0", + "illuminate/contracts": "^11.0", + "illuminate/macroable": "^11.0", + "php": "^8.2" + }, + "suggest": { + "symfony/var-dumper": "Required to use the dump method (^7.0)." + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "11.x-dev" + } + }, + "autoload": { + "files": [ + "helpers.php" + ], + "psr-4": { + "Illuminate\\Support\\": "" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Taylor Otwell", + "email": "taylor@laravel.com" + } + ], + "description": "The Illuminate Collections package.", + "homepage": "https://laravel.com", + "support": { + "issues": "https://github.com/laravel/framework/issues", + "source": "https://github.com/laravel/framework" + }, + "time": "2024-08-23T18:49:36+00:00" + }, + { + "name": "illuminate/conditionable", + "version": "v11.22.0", + "source": { + "type": "git", + "url": "https://github.com/illuminate/conditionable.git", + "reference": "362dd761b9920367bca1427a902158225e9e3a23" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/illuminate/conditionable/zipball/362dd761b9920367bca1427a902158225e9e3a23", + "reference": "362dd761b9920367bca1427a902158225e9e3a23", + "shasum": "" + }, + "require": { + "php": "^8.0.2" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "11.x-dev" + } + }, + "autoload": { + "psr-4": { + "Illuminate\\Support\\": "" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Taylor Otwell", + "email": "taylor@laravel.com" + } + ], + "description": "The Illuminate Conditionable package.", + "homepage": "https://laravel.com", + "support": { + "issues": "https://github.com/laravel/framework/issues", + "source": "https://github.com/laravel/framework" + }, + "time": "2024-06-28T20:10:30+00:00" + }, + { + "name": "illuminate/contracts", + "version": "v11.22.0", + "source": { + "type": "git", + "url": "https://github.com/illuminate/contracts.git", + "reference": "af9b459f195d57f279ec30a45446ddaeb3337bcb" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/illuminate/contracts/zipball/af9b459f195d57f279ec30a45446ddaeb3337bcb", + "reference": "af9b459f195d57f279ec30a45446ddaeb3337bcb", + "shasum": "" + }, + "require": { + "php": "^8.2", + "psr/container": "^1.1.1|^2.0.1", + "psr/simple-cache": "^1.0|^2.0|^3.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "11.x-dev" + } + }, + "autoload": { + "psr-4": { + "Illuminate\\Contracts\\": "" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Taylor Otwell", + "email": "taylor@laravel.com" + } + ], + "description": "The Illuminate Contracts package.", + "homepage": "https://laravel.com", + "support": { + "issues": "https://github.com/laravel/framework/issues", + "source": "https://github.com/laravel/framework" + }, + "time": "2024-08-21T16:02:16+00:00" + }, + { + "name": "illuminate/macroable", + "version": "v11.22.0", + "source": { + "type": "git", + "url": "https://github.com/illuminate/macroable.git", + "reference": "e1cb9e51b9ed5d3c9bc1ab431d0a52fe42a990ed" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/illuminate/macroable/zipball/e1cb9e51b9ed5d3c9bc1ab431d0a52fe42a990ed", + "reference": "e1cb9e51b9ed5d3c9bc1ab431d0a52fe42a990ed", + "shasum": "" + }, + "require": { + "php": "^8.2" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "11.x-dev" + } + }, + "autoload": { + "psr-4": { + "Illuminate\\Support\\": "" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Taylor Otwell", + "email": "taylor@laravel.com" + } + ], + "description": "The Illuminate Macroable package.", + "homepage": "https://laravel.com", + "support": { + "issues": "https://github.com/laravel/framework/issues", + "source": "https://github.com/laravel/framework" + }, + "time": "2024-06-28T20:10:30+00:00" + }, + { + "name": "laravel/prompts", + "version": "v0.1.25", + "source": { + "type": "git", + "url": "https://github.com/laravel/prompts.git", + "reference": "7b4029a84c37cb2725fc7f011586e2997040bc95" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/laravel/prompts/zipball/7b4029a84c37cb2725fc7f011586e2997040bc95", + "reference": "7b4029a84c37cb2725fc7f011586e2997040bc95", + "shasum": "" + }, + "require": { + "ext-mbstring": "*", + "illuminate/collections": "^10.0|^11.0", + "php": "^8.1", + "symfony/console": "^6.2|^7.0" + }, + "conflict": { + "illuminate/console": ">=10.17.0 <10.25.0", + "laravel/framework": ">=10.17.0 <10.25.0" + }, + "require-dev": { + "mockery/mockery": "^1.5", + "pestphp/pest": "^2.3", + "phpstan/phpstan": "^1.11", + "phpstan/phpstan-mockery": "^1.1" + }, + "suggest": { + "ext-pcntl": "Required for the spinner to be animated." + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-main": "0.1.x-dev" + } + }, + "autoload": { + "files": [ + "src/helpers.php" + ], + "psr-4": { + "Laravel\\Prompts\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "description": "Add beautiful and user-friendly forms to your command-line applications.", + "support": { + "issues": "https://github.com/laravel/prompts/issues", + "source": "https://github.com/laravel/prompts/tree/v0.1.25" + }, + "time": "2024-08-12T22:06:33+00:00" + }, { "name": "league/container", "version": "4.2.2", @@ -3385,6 +3641,57 @@ }, "time": "2024-08-21T13:31:24+00:00" }, + { + "name": "psr/simple-cache", + "version": "3.0.0", + "source": { + "type": "git", + "url": "https://github.com/php-fig/simple-cache.git", + "reference": "764e0b3939f5ca87cb904f570ef9be2d78a07865" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/php-fig/simple-cache/zipball/764e0b3939f5ca87cb904f570ef9be2d78a07865", + "reference": "764e0b3939f5ca87cb904f570ef9be2d78a07865", + "shasum": "" + }, + "require": { + "php": ">=8.0.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "3.0.x-dev" + } + }, + "autoload": { + "psr-4": { + "Psr\\SimpleCache\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "PHP-FIG", + "homepage": "https://www.php-fig.org/" + } + ], + "description": "Common interfaces for simple caching", + "keywords": [ + "cache", + "caching", + "psr", + "psr-16", + "simple-cache" + ], + "support": { + "source": "https://github.com/php-fig/simple-cache/tree/3.0.0" + }, + "time": "2021-10-29T13:26:27+00:00" + }, { "name": "psy/psysh", "version": "v0.12.4", @@ -6294,98 +6601,6 @@ } ], "time": "2024-05-16T10:04:27+00:00" - }, - { - "name": "webflo/drupal-finder", - "version": "1.3.0", - "source": { - "type": "git", - "url": "https://github.com/webflo/drupal-finder.git", - "reference": "1fa65484857c7a2e4dcf0d9e0b47198fe0681b8a" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/webflo/drupal-finder/zipball/1fa65484857c7a2e4dcf0d9e0b47198fe0681b8a", - "reference": "1fa65484857c7a2e4dcf0d9e0b47198fe0681b8a", - "shasum": "" - }, - "require": { - "composer-runtime-api": "^2.2", - "php": ">=8.1" - }, - "require-dev": { - "mikey179/vfsstream": "^1.6", - "phpunit/phpunit": "^10.4" - }, - "type": "library", - "autoload": { - "psr-4": { - "DrupalFinder\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "GPL-2.0-or-later" - ], - "authors": [ - { - "name": "Florian Weber", - "email": "florian@webflo.org" - } - ], - "description": "Helper class to locate a Drupal installation.", - "support": { - "issues": "https://github.com/webflo/drupal-finder/issues", - "source": "https://github.com/webflo/drupal-finder/tree/1.3.0" - }, - "time": "2024-05-08T21:22:39+00:00" - }, - { - "name": "zaporylie/composer-drupal-optimizations", - "version": "1.2.0", - "source": { - "type": "git", - "url": "https://github.com/zaporylie/composer-drupal-optimizations.git", - "reference": "a7f409a765164fd13ac0bd00e19109165c51b369" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/zaporylie/composer-drupal-optimizations/zipball/a7f409a765164fd13ac0bd00e19109165c51b369", - "reference": "a7f409a765164fd13ac0bd00e19109165c51b369", - "shasum": "" - }, - "require": { - "composer-plugin-api": "^1.1 || ^2.0" - }, - "require-dev": { - "composer/composer": "^1.6", - "phpunit/phpunit": "^6" - }, - "type": "composer-plugin", - "extra": { - "class": "zaporylie\\ComposerDrupalOptimizations\\Plugin" - }, - "autoload": { - "psr-4": { - "zaporylie\\ComposerDrupalOptimizations\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "GPL-2.0-or-later" - ], - "authors": [ - { - "name": "Jakub Piasecki", - "email": "jakub@piaseccy.pl" - } - ], - "description": "Composer plugin to improve composer performance for Drupal projects", - "support": { - "issues": "https://github.com/zaporylie/composer-drupal-optimizations/issues", - "source": "https://github.com/zaporylie/composer-drupal-optimizations/tree/1.2.0" - }, - "time": "2020-10-22T13:26:00+00:00" } ], "packages-dev": [ @@ -11598,6 +11813,51 @@ ], "time": "2024-03-03T12:36:25+00:00" }, + { + "name": "webflo/drupal-finder", + "version": "1.3.0", + "source": { + "type": "git", + "url": "https://github.com/webflo/drupal-finder.git", + "reference": "1fa65484857c7a2e4dcf0d9e0b47198fe0681b8a" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/webflo/drupal-finder/zipball/1fa65484857c7a2e4dcf0d9e0b47198fe0681b8a", + "reference": "1fa65484857c7a2e4dcf0d9e0b47198fe0681b8a", + "shasum": "" + }, + "require": { + "composer-runtime-api": "^2.2", + "php": ">=8.1" + }, + "require-dev": { + "mikey179/vfsstream": "^1.6", + "phpunit/phpunit": "^10.4" + }, + "type": "library", + "autoload": { + "psr-4": { + "DrupalFinder\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "GPL-2.0-or-later" + ], + "authors": [ + { + "name": "Florian Weber", + "email": "florian@webflo.org" + } + ], + "description": "Helper class to locate a Drupal installation.", + "support": { + "issues": "https://github.com/webflo/drupal-finder/issues", + "source": "https://github.com/webflo/drupal-finder/tree/1.3.0" + }, + "time": "2024-05-08T21:22:39+00:00" + }, { "name": "webmozart/assert", "version": "1.11.0", @@ -11664,8 +11924,5 @@ "prefer-lowest": false, "platform": [], "platform-dev": [], - "platform-overrides": { - "php": "8.1.12" - }, "plugin-api-version": "2.6.0" }