Skip to content

Commit 27470cf

Browse files
committed
Fixed composer stuff
1 parent b853f94 commit 27470cf

8 files changed

Lines changed: 78 additions & 6 deletions

File tree

.github/workflows/composer.yaml

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -62,6 +62,11 @@ jobs:
6262
docker network create frontend
6363
6464
- run: |
65+
docker compose run --rm --env COMPOSER=composer.lenient.json phpfpm composer init --no-interaction
66+
docker compose run --rm --env COMPOSER=composer.lenient.json phpfpm composer config --no-plugins allow-plugins.mglaman/composer-drupal-lenient true
67+
docker compose run --rm --env COMPOSER=composer.lenient.json phpfpm composer require mglaman/composer-drupal-lenient
68+
docker compose run --rm --env COMPOSER=composer.lenient.json phpfpm rm composer.lenient.*
69+
6570
docker compose run --rm phpfpm composer install
6671
docker compose run --rm phpfpm composer normalize --dry-run
6772

.github/workflows/php.yaml

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -55,5 +55,10 @@ jobs:
5555
docker network create frontend
5656
5757
- run: |
58+
docker compose run --rm --env COMPOSER=composer.lenient.json phpfpm composer init --no-interaction
59+
docker compose run --rm --env COMPOSER=composer.lenient.json phpfpm composer config --no-plugins allow-plugins.mglaman/composer-drupal-lenient true
60+
docker compose run --rm --env COMPOSER=composer.lenient.json phpfpm composer require mglaman/composer-drupal-lenient
61+
docker compose run --rm --env COMPOSER=composer.lenient.json phpfpm rm composer.lenient.*
62+
5863
docker compose run --rm phpfpm composer install
5964
docker compose run --rm phpfpm vendor/bin/phpcs

.github/workflows/twig.yaml

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -44,5 +44,11 @@ jobs:
4444

4545
- run: |
4646
docker network create frontend
47+
48+
docker compose run --rm --env COMPOSER=composer.lenient.json phpfpm composer init --no-interaction
49+
docker compose run --rm --env COMPOSER=composer.lenient.json phpfpm composer config --no-plugins allow-plugins.mglaman/composer-drupal-lenient true
50+
docker compose run --rm --env COMPOSER=composer.lenient.json phpfpm composer require mglaman/composer-drupal-lenient
51+
docker compose run --rm --env COMPOSER=composer.lenient.json phpfpm rm composer.lenient.*
52+
4753
docker compose run --rm phpfpm composer install
4854
docker compose run --rm phpfpm vendor/bin/twig-cs-fixer lint

README.md

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -62,3 +62,24 @@ key_provider_settings:
6262
key_input: none
6363
key_input_settings: { }
6464
```
65+
66+
## Development
67+
68+
``` shell
69+
task composer:install
70+
```
71+
72+
### Composer install hacks
73+
74+
``` shell name=composer-install-hack
75+
# Create a temporary composer file to install https://github.com/mglaman/composer-drupal-lenient before the real install needs it.
76+
docker compose run --rm --env COMPOSER=composer.lenient.json phpfpm sh <<<'EOF'
77+
composer init --no-interaction
78+
composer config --no-plugins allow-plugins.mglaman/composer-drupal-lenient true
79+
composer require mglaman/composer-drupal-lenient
80+
rm composer.lenient.*
81+
EOF
82+
83+
# Now we can install what we actually need.
84+
docker compose run --rm phpfpm composer install
85+
```

Taskfile.yml

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,21 @@ tasks:
1515
vars:
1616
TASK_ARGS: run --rm phpfpm composer {{.TASK_ARGS}}
1717

18+
composer:install:
19+
desc: Run composer inside docker compose setup, e.g. `task {{.TASK}} -- install`
20+
cmds:
21+
- rm -fr composer.lock vendor
22+
- |
23+
# Create a temporary composer file to install https://github.com/mglaman/composer-drupal-lenient before the real install needs it.
24+
docker compose run --rm --env COMPOSER=composer.lenient.json phpfpm composer init --no-interaction
25+
docker compose run --rm --env COMPOSER=composer.lenient.json phpfpm composer config --no-plugins allow-plugins.mglaman/composer-drupal-lenient true
26+
docker compose run --rm --env COMPOSER=composer.lenient.json phpfpm composer require mglaman/composer-drupal-lenient
27+
docker compose run --rm --env COMPOSER=composer.lenient.json phpfpm rm composer.lenient.*
28+
29+
- task: composer
30+
vars:
31+
TASK_ARGS: install
32+
1833
coding-standards:apply:
1934
desc: "Apply coding standards"
2035
cmds:

compose.yaml

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,10 @@ services:
77
volumes:
88
- .:/app-os2forms_fordelingskomponent
99
working_dir: /app-os2forms_fordelingskomponent
10+
environment:
11+
# https://getcomposer.org/doc/03-cli.md#composer-no-security-blocking
12+
# @see https://github.com/OS2Forms/os2forms/issues/244
13+
COMPOSER_NO_SECURITY_BLOCKING: 1
1014

1115
# Code checks tools
1216
markdownlint:

composer.json

Lines changed: 16 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -12,15 +12,13 @@
1212
"require": {
1313
"ext-dom": "*",
1414
"drupal/system_stream_wrapper": "^2.1",
15-
"drupal/webform": "^6.2",
1615
"drush/drush": "^12 || ^13",
17-
"itk-dev/serviceplatformen": "dev-feature/SF2900-Fordelingskomponenten",
18-
"os2web/os2web_audit": "^1.2",
19-
"os2web/os2web_key": "^1.0"
16+
"itk-dev/serviceplatformen": "dev-feature/SF2900-Fordelingskomponenten as 1.7.9999",
17+
"os2forms/os2forms": "^5.0"
2018
},
2119
"require-dev": {
2220
"drupal/coder": "^8.3",
23-
"ergebnis/composer-normalize": "^2.49",
21+
"ergebnis/composer-normalize": "^2.50",
2422
"mglaman/phpstan-drupal": "^2.0",
2523
"phpstan/extension-installer": "^1.4",
2624
"phpunit/phpunit": "^9.6",
@@ -45,7 +43,19 @@
4543
"cweagans/composer-patches": true,
4644
"dealerdirect/phpcodesniffer-composer-installer": true,
4745
"ergebnis/composer-normalize": true,
48-
"phpstan/extension-installer": true
46+
"mglaman/composer-drupal-lenient": true,
47+
"phpstan/extension-installer": true,
48+
"simplesamlphp/composer-module-installer": false,
49+
"simplesamlphp/composer-xmlprovider-installer": false,
50+
"zaporylie/composer-drupal-optimizations": true
51+
}
52+
},
53+
"extra": {
54+
"drupal-lenient": {
55+
"allowed-list": [
56+
"drupal/coc_forms_auto_export",
57+
"drupal/webform_node_element"
58+
]
4959
}
5060
}
5161
}

scripts/base

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -77,6 +77,12 @@ setup() {
7777
compose down --remove-orphans
7878
compose pull
7979
compose up --detach --remove-orphans --wait
80+
81+
COMPOSER=composer.lenient.json composer init --no-interaction
82+
COMPOSER=composer.lenient.json composer config --no-plugins allow-plugins.mglaman/composer-drupal-lenient true
83+
COMPOSER=composer.lenient.json composer require mglaman/composer-drupal-lenient
84+
# COMPOSER=composer.lenient.json rm composer.lenient.*
85+
8086
# Allow all plugins to run.
8187
composer --no-plugins config allow-plugins true
8288

0 commit comments

Comments
 (0)