Skip to content

Commit 645e85e

Browse files
authored
[doctrine/doctrine-bundle] add a recipe for DoctrineBundle 3.0 (#1462)
1 parent 15a50fe commit 645e85e

File tree

5 files changed

+106
-0
lines changed

5 files changed

+106
-0
lines changed
Lines changed: 48 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,48 @@
1+
doctrine:
2+
dbal:
3+
url: '%env(resolve:DATABASE_URL)%'
4+
5+
# IMPORTANT: You MUST configure your server version,
6+
# either here or in the DATABASE_URL env var (see .env file)
7+
#server_version: '16'
8+
9+
profiling_collect_backtrace: '%kernel.debug%'
10+
orm:
11+
validate_xml_mapping: true
12+
naming_strategy: doctrine.orm.naming_strategy.underscore_number_aware
13+
identity_generation_preferences:
14+
Doctrine\DBAL\Platforms\PostgreSQLPlatform: identity
15+
auto_mapping: true
16+
mappings:
17+
App:
18+
type: attribute
19+
is_bundle: false
20+
dir: '%kernel.project_dir%/src/Entity'
21+
prefix: 'App\Entity'
22+
alias: App
23+
controller_resolver:
24+
auto_mapping: false
25+
26+
when@test:
27+
doctrine:
28+
dbal:
29+
# "TEST_TOKEN" is typically set by ParaTest
30+
dbname_suffix: '_test%env(default::TEST_TOKEN)%'
31+
32+
when@prod:
33+
doctrine:
34+
orm:
35+
query_cache_driver:
36+
type: pool
37+
pool: doctrine.system_cache_pool
38+
result_cache_driver:
39+
type: pool
40+
pool: doctrine.result_cache_pool
41+
42+
framework:
43+
cache:
44+
pools:
45+
doctrine.result_cache_pool:
46+
adapter: cache.app
47+
doctrine.system_cache_pool:
48+
adapter: cache.system
Lines changed: 54 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,54 @@
1+
{
2+
"bundles": {
3+
"Doctrine\\Bundle\\DoctrineBundle\\DoctrineBundle": ["all"]
4+
},
5+
"copy-from-recipe": {
6+
"config/": "%CONFIG_DIR%/",
7+
"src/": "%SRC_DIR%/"
8+
},
9+
"env": {
10+
"#1": "Format described at https://www.doctrine-project.org/projects/doctrine-dbal/en/latest/reference/configuration.html#connecting-using-a-url",
11+
"#2": "IMPORTANT: You MUST configure your server version, either here or in config/packages/doctrine.yaml",
12+
"#3": "",
13+
"#4": "DATABASE_URL=\"sqlite:///%kernel.project_dir%/var/data_%kernel.environment%.db\"",
14+
"#5": "DATABASE_URL=\"mysql://app:!ChangeMe!@127.0.0.1:3306/app?serverVersion=8.0.32&charset=utf8mb4\"",
15+
"#6": "DATABASE_URL=\"mysql://app:!ChangeMe!@127.0.0.1:3306/app?serverVersion=10.11.2-MariaDB&charset=utf8mb4\"",
16+
"DATABASE_URL": "postgresql://app:!ChangeMe!@127.0.0.1:5432/app?serverVersion=16&charset=utf8"
17+
},
18+
"dockerfile": [
19+
"RUN install-php-extensions pdo_pgsql"
20+
],
21+
"docker-compose": {
22+
"docker-compose.yml": {
23+
"services": [
24+
"database:",
25+
" image: postgres:${POSTGRES_VERSION:-16}-alpine",
26+
" environment:",
27+
" POSTGRES_DB: ${POSTGRES_DB:-app}",
28+
" # You should definitely change the password in production",
29+
" POSTGRES_PASSWORD: ${POSTGRES_PASSWORD:-!ChangeMe!}",
30+
" POSTGRES_USER: ${POSTGRES_USER:-app}",
31+
" healthcheck:",
32+
" test: [\"CMD\", \"pg_isready\", \"-d\", \"${POSTGRES_DB:-app}\", \"-U\", \"${POSTGRES_USER:-app}\"]",
33+
" timeout: 5s",
34+
" retries: 5",
35+
" start_period: 60s",
36+
" volumes:",
37+
" - database_data:/var/lib/postgresql/data:rw",
38+
" # You may use a bind-mounted host directory instead, so that it is harder to accidentally remove the volume and lose all your data!",
39+
" # - ./docker/db/data:/var/lib/postgresql/data:rw"
40+
],
41+
"volumes": ["database_data:"]
42+
},
43+
"docker-compose.override.yml": {
44+
"services": [
45+
"database:",
46+
" ports:",
47+
" - \"5432\""
48+
]
49+
}
50+
},
51+
"conflict": {
52+
"symfony/framework-bundle": "<7.1"
53+
}
54+
}
Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
* Modify your DATABASE_URL config in <fg=green>.env</>
2+
3+
* Configure the <fg=green>driver</> (postgresql) and
4+
<fg=green>server_version</> (16) in <fg=green>config/packages/doctrine.yaml</>

doctrine/doctrine-bundle/3.0/src/Entity/.gitignore

Whitespace-only changes.

doctrine/doctrine-bundle/3.0/src/Repository/.gitignore

Whitespace-only changes.

0 commit comments

Comments
 (0)