mirror of
https://github.com/directus/directus.git
synced 2026-01-27 17:18:05 -05:00
* Speed query up by reusing existing aliases which reduces table joins * Use subquery in top level m2o to remove duplicates * Fix linting * Apply distinct on primary key field in subqueries * Use distinct instead as there are only primary keys * Apply subquery on top level * Try remove sub sub query * Test if working for all vendors * Add support for _none and _some * Use subquery only when field depth > 1 * Add tests * Use original table names for columns with functions (#14690) * Use original table names for columns with functions * Extract filter function path parsing as shared util * Fix filter function path when adding node * Pass the originalCollectionName into filter functions * Update unit test * Replace functions within deep GraphQL * Fix invalid operator error for _none and _some * Add filter function tests * Revert triggering for all vendors * Simplify aliasMap * Replace functions in filter within GraphQL aggregate query * Add API support for filtering of alias field * Mark schema as optional * Shift logical operators upwards * Separate recursive parseFilter * Rework shifting of logical operators * Error on invalid usage of _none and _some * Use inner join to preserve sort order * Run tests for all vendors * Reuse aliasMap for sort and filter * Sort on top level query * Remove unnecessary limit on wrapper query * Refactor applyQuery options * Remove duplicates from nested multi relational sort * Fix offset in MSSQL requiring OrderBy * Disable schema cache * Use inner query only for nested sort or multi relational filter * Fix MSSQL duplicate order column * Use inner query only for multi relational * Additional integration tests * Order within partition for multi relational sorts * Rename to directus_row_number * Fix unit test * Add base sort and filter tests * Fix Oracle uppercased rowNumber column * Fix unit test * Fix top level query sort with function * Parse functions in inner query * Increase clarity with knex.ref() * Remove sort filter for top level primary key * Fix unit test * Bypass queries with groupBy * Add collection to aliasMap to fix functions in nested sort * Fix multi relational sort with functions * Add tests for filter and sort with functions * Fix accidental deletion of brackets * Fix top level alias filter node interface * Update M2M sort tests * Add M2A tests * Cast m2a primary key as varchar2 for oracle * Enable filtering tests for M2A * Fix prototype polluting assignment in aliasMap * Remove unnecessary currentKey * Simplify code to increase readability Co-authored-by: Brainslug <br41nslug@users.noreply.github.com> * Fix linting and missing 'this' error * Revert optional chaining * Add mysql5 to tests * Fix mysql5 missing rowNumber() * Overcome indexing delays in MySQL5 * Verify MySQL5 sorting is in order as the result count varies between runs * Skip joining when sorting field already exists * Simplify variable assignment Co-authored-by: Azri Kahar <42867097+azrikahar@users.noreply.github.com> * Fix linting * Reduce duplicate logic with vars * Transform _func fields in GraphQL only for valid functions * Fix unit test * Fix unsupported date_part() in CrDB Co-authored-by: Brainslug <br41nslug@users.noreply.github.com> Co-authored-by: Roger Stringer <roger@directus.io> Co-authored-by: Azri Kahar <42867097+azrikahar@users.noreply.github.com> Co-authored-by: Rijk van Zanten <rijkvanzanten@me.com>
108 lines
2.4 KiB
YAML
108 lines
2.4 KiB
YAML
# This composer file is meant to spin up a copy of all supported database vendors and services used in tests.
|
|
#
|
|
# ONLY FOR TESTING. THIS IS NOT INTENDED FOR PRODUCTION USE.
|
|
#
|
|
# Credentials:
|
|
# Postgres:
|
|
# User: postgres
|
|
# Password: secret
|
|
#
|
|
# MySQL:
|
|
# User: root
|
|
# Password: secret
|
|
#
|
|
# MariaDB:
|
|
# User: root
|
|
# Password: secret
|
|
#
|
|
# MS SQL:
|
|
# User: sa
|
|
# Password: Test@123
|
|
#
|
|
# Oracle DB:
|
|
# User: secretsysuser
|
|
# Password: secretpassword
|
|
# Role: SYSDEFAULT
|
|
# SID: XE
|
|
#
|
|
# CockroachDB:
|
|
# User: root
|
|
|
|
version: '3.1'
|
|
services:
|
|
postgres:
|
|
image: postgis/postgis:13-3.1-alpine
|
|
environment:
|
|
POSTGRES_PASSWORD: secret
|
|
POSTGRES_DB: directus
|
|
ports:
|
|
- 6100:5432
|
|
|
|
postgres10:
|
|
image: postgis/postgis:10-3.1-alpine
|
|
environment:
|
|
POSTGRES_PASSWORD: secret
|
|
POSTGRES_DB: directus
|
|
ports:
|
|
- 6101:5432
|
|
|
|
mysql:
|
|
image: mysql:8
|
|
command: --default-authentication-plugin=mysql_native_password
|
|
environment:
|
|
MYSQL_ROOT_PASSWORD: secret
|
|
MYSQL_DATABASE: directus
|
|
ports:
|
|
- 6102:3306
|
|
cap_add:
|
|
- SYS_NICE
|
|
|
|
mysql5:
|
|
image: mysql:5
|
|
environment:
|
|
MYSQL_ROOT_PASSWORD: secret
|
|
MYSQL_DATABASE: directus
|
|
ports:
|
|
- 6103:3306
|
|
|
|
maria:
|
|
image: mariadb:10.7
|
|
environment:
|
|
MYSQL_ROOT_PASSWORD: secret
|
|
MYSQL_DATABASE: directus
|
|
ports:
|
|
- 6104:3306
|
|
|
|
mssql:
|
|
image: mcr.microsoft.com/mssql/server:2019-latest
|
|
environment:
|
|
- ACCEPT_EULA=Y
|
|
- SA_PASSWORD=Test@123
|
|
ports:
|
|
- 6105:1433
|
|
|
|
oracle:
|
|
image: quillbuilduser/oracle-18-xe-micro-sq
|
|
ports:
|
|
- 6106:1521
|
|
environment:
|
|
- OPATCH_JRE_MEMORY_OPTIONS=-Xms128m -Xmx256m -XX:PermSize=16m -XX:MaxPermSize=32m -Xss1m
|
|
- ORACLE_ALLOW_REMOTE=true
|
|
shm_size: '1gb' # more like smh-size ammirite 🥁
|
|
|
|
cockroachdb:
|
|
image: cockroachdb/cockroach:latest-v21.1
|
|
command: start-single-node --cluster-name=example-single-node --insecure
|
|
ports:
|
|
- 6107:26257
|
|
|
|
auth-saml:
|
|
image: kristophjunge/test-saml-idp
|
|
ports:
|
|
- 8880:8080
|
|
environment:
|
|
- SIMPLESAMLPHP_SP_ENTITY_ID=saml-test
|
|
- SIMPLESAMLPHP_SP_ASSERTION_CONSUMER_SERVICE=http://127.0.0.1:8080/auth/login/saml/acs
|
|
extra_hosts:
|
|
- 'host.docker.internal:host-gateway'
|