From 7fa1a41db03f608065478b59bf11777a2a76d877 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jakub=20Skowro=C5=84ski?= Date: Thu, 12 Oct 2023 20:31:53 +0200 Subject: [PATCH] Replace MySQL with Postgres --- .docker/Dockerfile | 2 +- .docker/mysql/vars.env | 5 - .docker/pgsql/vars.env | 3 + .env | 2 +- .../doctrine/AbstractBlamableEntity.orm.xml | 2 +- config/doctrine/AbstractEntity.orm.xml | 2 +- docker-compose.override.yml | 10 +- docker-compose.test.yml | 14 +- migrations/Version20191230142218.php | 35 --- migrations/Version20200103010805.php | 38 ---- migrations/Version20200123221244.php | 42 ---- migrations/Version20200125110932.php | 39 ---- migrations/Version20200510172618.php | 70 ------ migrations/Version20200620141223.php | 81 ------- migrations/Version20200831200358.php | 36 --- migrations/Version20201211150846.php | 35 --- migrations/Version20201212195208.php | 51 ----- migrations/Version20201221213145.php | 57 ----- migrations/Version20201223160458.php | 39 ---- migrations/Version20210114223058.php | 37 --- migrations/Version20210131115809.php | 69 ------ migrations/Version20210611234047.php | 40 ---- migrations/Version20210625211018.php | 40 ---- migrations/Version20210627001232.php | 53 ----- migrations/Version20210827203818.php | 31 --- migrations/Version20210827225825.php | 39 ---- migrations/Version20220117223431.php | 38 ---- migrations/Version20230814124403.php | 33 --- migrations/Version20230815192821.php | 33 --- migrations/Version20230827120512.php | 31 --- migrations/Version20231012182336.php | 215 ++++++++++++++++++ .../ModList/GetModListByNameActionTest.php | 36 +-- .../ModList/GetModListsByIdActionTest.php | 36 +-- .../ModListPublic/DownloadActionTest.php | 4 +- 34 files changed, 270 insertions(+), 1028 deletions(-) delete mode 100644 .docker/mysql/vars.env create mode 100644 .docker/pgsql/vars.env delete mode 100644 migrations/Version20191230142218.php delete mode 100644 migrations/Version20200103010805.php delete mode 100644 migrations/Version20200123221244.php delete mode 100644 migrations/Version20200125110932.php delete mode 100644 migrations/Version20200510172618.php delete mode 100644 migrations/Version20200620141223.php delete mode 100644 migrations/Version20200831200358.php delete mode 100644 migrations/Version20201211150846.php delete mode 100644 migrations/Version20201212195208.php delete mode 100644 migrations/Version20201221213145.php delete mode 100644 migrations/Version20201223160458.php delete mode 100644 migrations/Version20210114223058.php delete mode 100644 migrations/Version20210131115809.php delete mode 100644 migrations/Version20210611234047.php delete mode 100644 migrations/Version20210625211018.php delete mode 100644 migrations/Version20210627001232.php delete mode 100644 migrations/Version20210827203818.php delete mode 100644 migrations/Version20210827225825.php delete mode 100644 migrations/Version20220117223431.php delete mode 100644 migrations/Version20230814124403.php delete mode 100644 migrations/Version20230815192821.php delete mode 100644 migrations/Version20230827120512.php create mode 100644 migrations/Version20231012182336.php diff --git a/.docker/Dockerfile b/.docker/Dockerfile index 593fde12..709a3c1a 100644 --- a/.docker/Dockerfile +++ b/.docker/Dockerfile @@ -44,7 +44,7 @@ RUN set -eux; \ zip \ apcu \ opcache \ - pdo_mysql \ + pdo_pgsql \ ; RUN mv "$PHP_INI_DIR/php.ini-production" "$PHP_INI_DIR/php.ini" diff --git a/.docker/mysql/vars.env b/.docker/mysql/vars.env deleted file mode 100644 index e7e28427..00000000 --- a/.docker/mysql/vars.env +++ /dev/null @@ -1,5 +0,0 @@ -MYSQL_DATABASE=af_website -MYSQL_ALLOW_EMPTY_PASSWORD=true -MYSQL_ROOT_PASSWORD= -MYSQL_USER=user -MYSQL_PASSWORD= diff --git a/.docker/pgsql/vars.env b/.docker/pgsql/vars.env new file mode 100644 index 00000000..9b67ea2c --- /dev/null +++ b/.docker/pgsql/vars.env @@ -0,0 +1,3 @@ +POSTGRES_DB=af_website +POSTGRES_USER=user +POSTGRES_PASSWORD=password diff --git a/.env b/.env index 214c402e..a579c91e 100644 --- a/.env +++ b/.env @@ -41,7 +41,7 @@ APP_SECRET=3c0e1589d36f2c28609e4ec5af60f545 ###> doctrine/doctrine-bundle ### # Format described at https://www.doctrine-project.org/projects/doctrine-dbal/en/latest/reference/configuration.html#connecting-using-a-url # IMPORTANT: You MUST configure your server version, either here or in config/packages/doctrine.yaml -DATABASE_URL=mysql://root@mysql:3306/af_website?serverVersion=5.7 +DATABASE_URL="postgresql://user:password@pgsql:5432/af_website?serverVersion=16&charset=utf8" ###< doctrine/doctrine-bundle ### ###> nelmio/cors-bundle ### diff --git a/config/doctrine/AbstractBlamableEntity.orm.xml b/config/doctrine/AbstractBlamableEntity.orm.xml index 0c452b9e..ab89b8d7 100644 --- a/config/doctrine/AbstractBlamableEntity.orm.xml +++ b/config/doctrine/AbstractBlamableEntity.orm.xml @@ -12,7 +12,7 @@ - + diff --git a/config/doctrine/AbstractEntity.orm.xml b/config/doctrine/AbstractEntity.orm.xml index d33f406e..cb4f7ff0 100644 --- a/config/doctrine/AbstractEntity.orm.xml +++ b/config/doctrine/AbstractEntity.orm.xml @@ -6,7 +6,7 @@ - + diff --git a/docker-compose.override.yml b/docker-compose.override.yml index d0d33c78..bd18ac4d 100644 --- a/docker-compose.override.yml +++ b/docker-compose.override.yml @@ -20,14 +20,12 @@ services: volumes: - './public:/www/app/public:ro' - mysql: - image: mysql:5.7 + pgsql: + image: postgres:16.0-alpine env_file: - - .docker/mysql/vars.env - healthcheck: - test: [ "CMD", "mysqladmin", "ping", "--protocol", "tcp" ] + - .docker/pgsql/vars.env ports: - - "33060:3306" + - "5432:5432" imgproxy: image: darthsim/imgproxy:v2 diff --git a/docker-compose.test.yml b/docker-compose.test.yml index 11b28ce6..4795010c 100644 --- a/docker-compose.test.yml +++ b/docker-compose.test.yml @@ -20,15 +20,13 @@ services: - './.php-cs-fixer.dist.php:/www/app/.php-cs-fixer.dist.php:ro' - './phpstan.neon.dist:/www/app/phpstan.neon.dist:ro' depends_on: - - mysql + - pgsql - mysql: - image: mysql:5.7 + pgsql: + image: postgres:16.0-alpine env_file: - - .docker/mysql/vars.env + - .docker/pgsql/vars.env environment: - MYSQL_DATABASE: 'af_website_test' - healthcheck: - test: [ "CMD", "mysqladmin", "ping", "--protocol", "tcp" ] + POSTGRES_DB: 'af_website_test' ports: - - "3306:3306" + - "5432:5432" diff --git a/migrations/Version20191230142218.php b/migrations/Version20191230142218.php deleted file mode 100644 index 05830029..00000000 --- a/migrations/Version20191230142218.php +++ /dev/null @@ -1,35 +0,0 @@ -abortIf('mysql' !== $this->connection->getDatabasePlatform()->getName(), 'Migration can only be executed safely on \'mysql\'.'); - - $this->addSql('CREATE TABLE users (id VARCHAR(36) NOT NULL, username VARCHAR(255) NOT NULL, password VARCHAR(255) DEFAULT NULL, email VARCHAR(255) NOT NULL, UNIQUE INDEX UNIQ_1483A5E9F85E0677 (username), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB'); - } - - public function down(Schema $schema): void - { - // this down() migration is auto-generated, please modify it to your needs - $this->abortIf('mysql' !== $this->connection->getDatabasePlatform()->getName(), 'Migration can only be executed safely on \'mysql\'.'); - - $this->addSql('DROP TABLE users'); - } -} diff --git a/migrations/Version20200103010805.php b/migrations/Version20200103010805.php deleted file mode 100644 index 0a9d4f62..00000000 --- a/migrations/Version20200103010805.php +++ /dev/null @@ -1,38 +0,0 @@ -abortIf('mysql' !== $this->connection->getDatabasePlatform()->getName(), 'Migration can only be executed safely on \'mysql\'.'); - - $this->addSql('DELETE FROM users'); - $this->addSql('ALTER TABLE users ADD external_id VARCHAR(64) NOT NULL, ADD avatar_hash VARCHAR(512) DEFAULT NULL'); - $this->addSql('CREATE UNIQUE INDEX UNIQ_1483A5E99F75D7B0 ON users (external_id)'); - } - - public function down(Schema $schema): void - { - // this down() migration is auto-generated, please modify it to your needs - $this->abortIf('mysql' !== $this->connection->getDatabasePlatform()->getName(), 'Migration can only be executed safely on \'mysql\'.'); - - $this->addSql('DROP INDEX UNIQ_1483A5E99F75D7B0 ON users'); - $this->addSql('ALTER TABLE users DROP external_id, DROP avatar_hash'); - } -} diff --git a/migrations/Version20200123221244.php b/migrations/Version20200123221244.php deleted file mode 100644 index 25a0ddc2..00000000 --- a/migrations/Version20200123221244.php +++ /dev/null @@ -1,42 +0,0 @@ -abortIf('mysql' !== $this->connection->getDatabasePlatform()->getName(), 'Migration can only be executed safely on \'mysql\'.'); - - $this->addSql('DELETE FROM users'); - $this->addSql('CREATE TABLE permissions (id VARCHAR(36) NOT NULL, manage_users_permissions TINYINT(1) NOT NULL, list_users TINYINT(1) NOT NULL, delete_users TINYINT(1) NOT NULL, PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB'); - $this->addSql('ALTER TABLE users ADD permissions_id VARCHAR(36) NOT NULL'); - $this->addSql('ALTER TABLE users ADD CONSTRAINT FK_1483A5E99C3E4F87 FOREIGN KEY (permissions_id) REFERENCES permissions (id)'); - $this->addSql('CREATE UNIQUE INDEX UNIQ_1483A5E99C3E4F87 ON users (permissions_id)'); - } - - public function down(Schema $schema): void - { - // this down() migration is auto-generated, please modify it to your needs - $this->abortIf('mysql' !== $this->connection->getDatabasePlatform()->getName(), 'Migration can only be executed safely on \'mysql\'.'); - - $this->addSql('ALTER TABLE users DROP FOREIGN KEY FK_1483A5E99C3E4F87'); - $this->addSql('DROP TABLE permissions'); - $this->addSql('DROP INDEX UNIQ_1483A5E99C3E4F87 ON users'); - $this->addSql('ALTER TABLE users DROP permissions_id'); - } -} diff --git a/migrations/Version20200125110932.php b/migrations/Version20200125110932.php deleted file mode 100644 index a39dcc88..00000000 --- a/migrations/Version20200125110932.php +++ /dev/null @@ -1,39 +0,0 @@ -abortIf('mysql' !== $this->connection->getDatabasePlatform()->getName(), 'Migration can only be executed safely on \'mysql\'.'); - - $this->addSql('ALTER TABLE permissions CHANGE manage_users_permissions users_manage_permissions TINYINT(1) NOT NULL'); - $this->addSql('ALTER TABLE permissions CHANGE list_users users_list TINYINT(1) NOT NULL'); - $this->addSql('ALTER TABLE permissions CHANGE delete_users users_delete TINYINT(1) NOT NULL'); - } - - public function down(Schema $schema): void - { - // this down() migration is auto-generated, please modify it to your needs - $this->abortIf('mysql' !== $this->connection->getDatabasePlatform()->getName(), 'Migration can only be executed safely on \'mysql\'.'); - - $this->addSql('ALTER TABLE permissions CHANGE users_manage_permissions manage_users_permissions TINYINT(1) NOT NULL'); - $this->addSql('ALTER TABLE permissions CHANGE user_manage_permissions users_list list_users TINYINT(1) NOT NULL'); - $this->addSql('ALTER TABLE permissions CHANGE user_manage_permissions users_delete delete_users TINYINT(1) NOT NULL'); - } -} diff --git a/migrations/Version20200510172618.php b/migrations/Version20200510172618.php deleted file mode 100644 index 5e6541e0..00000000 --- a/migrations/Version20200510172618.php +++ /dev/null @@ -1,70 +0,0 @@ -abortIf('mysql' !== $this->connection->getDatabasePlatform()->getName(), 'Migration can only be executed safely on \'mysql\'.'); - - $this->addSql('CREATE TABLE mod_lists (id VARCHAR(36) NOT NULL, created_at DATETIME NOT NULL COMMENT \'(DC2Type:datetime_immutable)\', last_updated_at DATETIME DEFAULT NULL COMMENT \'(DC2Type:datetime_immutable)\', name VARCHAR(255) NOT NULL, description VARCHAR(255) DEFAULT NULL, PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB'); - $this->addSql('CREATE TABLE mod_lists_mods (mod_list_id VARCHAR(36) NOT NULL, mod_id VARCHAR(36) NOT NULL, INDEX IDX_77414C92FD60CD19 (mod_list_id), INDEX IDX_77414C92338E21CD (mod_id), PRIMARY KEY(mod_list_id, mod_id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB'); - $this->addSql('CREATE TABLE mods (id VARCHAR(36) NOT NULL, created_at DATETIME NOT NULL COMMENT \'(DC2Type:datetime_immutable)\', last_updated_at DATETIME DEFAULT NULL COMMENT \'(DC2Type:datetime_immutable)\', name VARCHAR(255) NOT NULL, description VARCHAR(255) DEFAULT NULL, type VARCHAR(255) NOT NULL COMMENT \'(DC2Type:mod_type_enum)\', source VARCHAR(255) NOT NULL, item_id INT DEFAULT NULL, directory VARCHAR(255) DEFAULT NULL, UNIQUE INDEX UNIQ_631EF2FA126F525E (item_id), UNIQUE INDEX UNIQ_631EF2FA467844DA (directory), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB'); - $this->addSql('ALTER TABLE mod_lists_mods ADD CONSTRAINT FK_77414C92FD60CD19 FOREIGN KEY (mod_list_id) REFERENCES mod_lists (id)'); - $this->addSql('ALTER TABLE mod_lists_mods ADD CONSTRAINT FK_77414C92338E21CD FOREIGN KEY (mod_id) REFERENCES mods (id)'); - $this->addSql('ALTER TABLE permissions CHANGE users_manage_permissions user_manage_permissions TINYINT(1) NOT NULL'); - $this->addSql('ALTER TABLE permissions CHANGE users_list user_list TINYINT(1) NOT NULL'); - $this->addSql('ALTER TABLE permissions CHANGE users_delete user_delete TINYINT(1) NOT NULL'); - $this->addSql('ALTER TABLE permissions ADD created_at DATETIME NOT NULL COMMENT \'(DC2Type:datetime_immutable)\', ADD last_updated_at DATETIME DEFAULT NULL COMMENT \'(DC2Type:datetime_immutable)\', ADD mod_list TINYINT(1) NOT NULL, ADD mod_create TINYINT(1) NOT NULL, ADD mod_update TINYINT(1) NOT NULL, ADD mod_delete TINYINT(1) NOT NULL, ADD mod_list_list TINYINT(1) NOT NULL, ADD mod_list_create TINYINT(1) NOT NULL, ADD mod_list_update TINYINT(1) NOT NULL, ADD mod_list_delete TINYINT(1) NOT NULL, ADD mod_list_copy TINYINT(1) NOT NULL'); - $this->addSql('ALTER TABLE users ADD created_at DATETIME NOT NULL COMMENT \'(DC2Type:datetime_immutable)\', ADD last_updated_at DATETIME DEFAULT NULL COMMENT \'(DC2Type:datetime_immutable)\''); - $this->addSql('CREATE INDEX IDX_ECB7A268B8E8428 ON mod_lists (created_at)'); - $this->addSql('CREATE INDEX IDX_ECB7A26AA163775 ON mod_lists (last_updated_at)'); - $this->addSql('CREATE INDEX IDX_631EF2FA8B8E8428 ON mods (created_at)'); - $this->addSql('CREATE INDEX IDX_631EF2FAAA163775 ON mods (last_updated_at)'); - $this->addSql('CREATE INDEX IDX_2DEDCC6F8B8E8428 ON permissions (created_at)'); - $this->addSql('CREATE INDEX IDX_2DEDCC6FAA163775 ON permissions (last_updated_at)'); - $this->addSql('CREATE INDEX IDX_1483A5E99F75D7B0 ON users (external_id)'); - $this->addSql('CREATE INDEX IDX_1483A5E9AA163775 ON users (last_updated_at)'); - $this->addSql('CREATE UNIQUE INDEX UNIQ_ECB7A265E237E06 ON mod_lists (name)'); - } - - public function down(Schema $schema): void - { - // this down() migration is auto-generated, please modify it to your needs - $this->abortIf('mysql' !== $this->connection->getDatabasePlatform()->getName(), 'Migration can only be executed safely on \'mysql\'.'); - - $this->addSql('DROP INDEX IDX_ECB7A268B8E8428 ON mod_lists'); - $this->addSql('DROP INDEX IDX_ECB7A26AA163775 ON mod_lists'); - $this->addSql('DROP INDEX IDX_631EF2FA8B8E8428 ON mods'); - $this->addSql('DROP INDEX IDX_631EF2FAAA163775 ON mods'); - $this->addSql('DROP INDEX IDX_2DEDCC6F8B8E8428 ON permissions'); - $this->addSql('DROP INDEX IDX_2DEDCC6FAA163775 ON permissions'); - $this->addSql('DROP INDEX IDX_1483A5E99F75D7B0 ON users'); - $this->addSql('DROP INDEX IDX_1483A5E9AA163775 ON users'); - $this->addSql('ALTER TABLE mod_lists_mods DROP FOREIGN KEY FK_77414C92FD60CD19'); - $this->addSql('ALTER TABLE mod_lists_mods DROP FOREIGN KEY FK_77414C92338E21CD'); - $this->addSql('DROP TABLE mod_lists'); - $this->addSql('DROP TABLE mod_lists_mods'); - $this->addSql('DROP TABLE mods'); - $this->addSql('ALTER TABLE permissions CHANGE user_manage_permissions users_manage_permissions TINYINT(1) NOT NULL'); - $this->addSql('ALTER TABLE permissions CHANGE user_list users_list TINYINT(1) NOT NULL'); - $this->addSql('ALTER TABLE permissions CHANGE user_delete users_delete TINYINT(1) NOT NULL'); - $this->addSql('ALTER TABLE permissions DROP created_at, DROP last_updated_at, DROP mod_list, DROP mod_create, DROP mod_update, DROP mod_delete, DROP mod_list_list, DROP mod_list_create, DROP mod_list_update, DROP mod_list_delete, DROP mod_list_copy'); - $this->addSql('ALTER TABLE users DROP created_at, DROP last_updated_at'); - } -} diff --git a/migrations/Version20200620141223.php b/migrations/Version20200620141223.php deleted file mode 100644 index 8b9e3651..00000000 --- a/migrations/Version20200620141223.php +++ /dev/null @@ -1,81 +0,0 @@ -abortIf('mysql' !== $this->connection->getDatabasePlatform()->getName(), 'Migration can only be executed safely on \'mysql\'.'); - - $this->addSql('ALTER TABLE mod_lists ADD created_by VARCHAR(36) DEFAULT NULL, ADD last_updated_by VARCHAR(36) DEFAULT NULL, ADD owner_id VARCHAR(36) DEFAULT NULL'); - $this->addSql('ALTER TABLE mod_lists ADD CONSTRAINT FK_ECB7A26DE12AB56 FOREIGN KEY (created_by) REFERENCES users (id)'); - $this->addSql('ALTER TABLE mod_lists ADD CONSTRAINT FK_ECB7A26FF8A180B FOREIGN KEY (last_updated_by) REFERENCES users (id)'); - $this->addSql('ALTER TABLE mod_lists ADD CONSTRAINT FK_ECB7A267E3C61F9 FOREIGN KEY (owner_id) REFERENCES users (id)'); - $this->addSql('CREATE INDEX IDX_ECB7A26DE12AB56 ON mod_lists (created_by)'); - $this->addSql('CREATE INDEX IDX_ECB7A26FF8A180B ON mod_lists (last_updated_by)'); - $this->addSql('CREATE INDEX IDX_ECB7A267E3C61F9 ON mod_lists (owner_id)'); - $this->addSql('ALTER TABLE mods ADD created_by VARCHAR(36) DEFAULT NULL, ADD last_updated_by VARCHAR(36) DEFAULT NULL'); - $this->addSql('ALTER TABLE mods ADD CONSTRAINT FK_631EF2FADE12AB56 FOREIGN KEY (created_by) REFERENCES users (id)'); - $this->addSql('ALTER TABLE mods ADD CONSTRAINT FK_631EF2FAFF8A180B FOREIGN KEY (last_updated_by) REFERENCES users (id)'); - $this->addSql('CREATE INDEX IDX_631EF2FADE12AB56 ON mods (created_by)'); - $this->addSql('CREATE INDEX IDX_631EF2FAFF8A180B ON mods (last_updated_by)'); - $this->addSql('ALTER TABLE permissions ADD created_by VARCHAR(36) DEFAULT NULL, ADD last_updated_by VARCHAR(36) DEFAULT NULL'); - $this->addSql('ALTER TABLE permissions ADD CONSTRAINT FK_2DEDCC6FDE12AB56 FOREIGN KEY (created_by) REFERENCES users (id)'); - $this->addSql('ALTER TABLE permissions ADD CONSTRAINT FK_2DEDCC6FFF8A180B FOREIGN KEY (last_updated_by) REFERENCES users (id)'); - $this->addSql('CREATE INDEX IDX_2DEDCC6FDE12AB56 ON permissions (created_by)'); - $this->addSql('CREATE INDEX IDX_2DEDCC6FFF8A180B ON permissions (last_updated_by)'); - $this->addSql('ALTER TABLE users ADD created_by VARCHAR(36) DEFAULT NULL, ADD last_updated_by VARCHAR(36) DEFAULT NULL, DROP password'); - $this->addSql('ALTER TABLE users ADD CONSTRAINT FK_1483A5E9DE12AB56 FOREIGN KEY (created_by) REFERENCES users (id)'); - $this->addSql('ALTER TABLE users ADD CONSTRAINT FK_1483A5E9FF8A180B FOREIGN KEY (last_updated_by) REFERENCES users (id)'); - $this->addSql('CREATE INDEX IDX_1483A5E9DE12AB56 ON users (created_by)'); - $this->addSql('CREATE INDEX IDX_1483A5E9FF8A180B ON users (last_updated_by)'); - $this->addSql('CREATE INDEX IDX_1483A5E98B8E8428 ON users (created_at)'); - $this->addSql('CREATE INDEX IDX_1483A5E9F85E0677 ON users (username)'); - } - - public function down(Schema $schema): void - { - // this down() migration is auto-generated, please modify it to your needs - $this->abortIf('mysql' !== $this->connection->getDatabasePlatform()->getName(), 'Migration can only be executed safely on \'mysql\'.'); - - $this->addSql('ALTER TABLE mod_lists DROP FOREIGN KEY FK_ECB7A26DE12AB56'); - $this->addSql('ALTER TABLE mod_lists DROP FOREIGN KEY FK_ECB7A26FF8A180B'); - $this->addSql('ALTER TABLE mod_lists DROP FOREIGN KEY FK_ECB7A267E3C61F9'); - $this->addSql('DROP INDEX IDX_ECB7A26DE12AB56 ON mod_lists'); - $this->addSql('DROP INDEX IDX_ECB7A26FF8A180B ON mod_lists'); - $this->addSql('DROP INDEX IDX_ECB7A267E3C61F9 ON mod_lists'); - $this->addSql('ALTER TABLE mod_lists DROP created_by, DROP last_updated_by, DROP owner_id'); - $this->addSql('ALTER TABLE mods DROP FOREIGN KEY FK_631EF2FADE12AB56'); - $this->addSql('ALTER TABLE mods DROP FOREIGN KEY FK_631EF2FAFF8A180B'); - $this->addSql('DROP INDEX IDX_631EF2FADE12AB56 ON mods'); - $this->addSql('DROP INDEX IDX_631EF2FAFF8A180B ON mods'); - $this->addSql('ALTER TABLE mods DROP created_by, DROP last_updated_by'); - $this->addSql('ALTER TABLE permissions DROP FOREIGN KEY FK_2DEDCC6FDE12AB56'); - $this->addSql('ALTER TABLE permissions DROP FOREIGN KEY FK_2DEDCC6FFF8A180B'); - $this->addSql('DROP INDEX IDX_2DEDCC6FDE12AB56 ON permissions'); - $this->addSql('DROP INDEX IDX_2DEDCC6FFF8A180B ON permissions'); - $this->addSql('ALTER TABLE permissions DROP created_by, DROP last_updated_by'); - $this->addSql('ALTER TABLE users DROP FOREIGN KEY FK_1483A5E9DE12AB56'); - $this->addSql('ALTER TABLE users DROP FOREIGN KEY FK_1483A5E9FF8A180B'); - $this->addSql('DROP INDEX IDX_1483A5E9DE12AB56 ON users'); - $this->addSql('DROP INDEX IDX_1483A5E9FF8A180B ON users'); - $this->addSql('DROP INDEX IDX_1483A5E98B8E8428 ON users'); - $this->addSql('DROP INDEX IDX_1483A5E9F85E0677 ON users'); - $this->addSql('ALTER TABLE users ADD password VARCHAR(255) CHARACTER SET utf8mb4 DEFAULT NULL COLLATE `utf8mb4_unicode_ci`, DROP created_by, DROP last_updated_by'); - } -} diff --git a/migrations/Version20200831200358.php b/migrations/Version20200831200358.php deleted file mode 100644 index 3f99412d..00000000 --- a/migrations/Version20200831200358.php +++ /dev/null @@ -1,36 +0,0 @@ -abortIf('mysql' !== $this->connection->getDatabasePlatform()->getName(), 'Migration can only be executed safely on \'mysql\'.'); - - $this->addSql('ALTER TABLE mod_lists ADD active TINYINT(1) DEFAULT 1 NULL'); - $this->addSql('ALTER TABLE mod_lists MODIFY active TINYINT(1) NOT NULL'); - } - - public function down(Schema $schema): void - { - // this down() migration is auto-generated, please modify it to your needs - $this->abortIf('mysql' !== $this->connection->getDatabasePlatform()->getName(), 'Migration can only be executed safely on \'mysql\'.'); - - $this->addSql('ALTER TABLE mod_lists DROP active'); - } -} diff --git a/migrations/Version20201211150846.php b/migrations/Version20201211150846.php deleted file mode 100644 index 6095c82a..00000000 --- a/migrations/Version20201211150846.php +++ /dev/null @@ -1,35 +0,0 @@ -abortIf('mysql' !== $this->connection->getDatabasePlatform()->getName(), 'Migration can only be executed safely on \'mysql\'.'); - - $this->addSql('ALTER TABLE mods CHANGE item_id item_id BIGINT DEFAULT NULL'); - } - - public function down(Schema $schema): void - { - // this down() migration is auto-generated, please modify it to your needs - $this->abortIf('mysql' !== $this->connection->getDatabasePlatform()->getName(), 'Migration can only be executed safely on \'mysql\'.'); - - $this->addSql('ALTER TABLE mods CHANGE item_id item_id INT DEFAULT NULL'); - } -} diff --git a/migrations/Version20201212195208.php b/migrations/Version20201212195208.php deleted file mode 100644 index 0b83fc5f..00000000 --- a/migrations/Version20201212195208.php +++ /dev/null @@ -1,51 +0,0 @@ -abortIf('mysql' !== $this->connection->getDatabasePlatform()->getName(), 'Migration can only be executed safely on \'mysql\'.'); - - $this->addSql('CREATE TABLE mod_groups (id VARCHAR(36) NOT NULL, created_by VARCHAR(36) DEFAULT NULL, last_updated_by VARCHAR(36) DEFAULT NULL, created_at DATETIME NOT NULL COMMENT \'(DC2Type:datetime_immutable)\', last_updated_at DATETIME DEFAULT NULL COMMENT \'(DC2Type:datetime_immutable)\', name VARCHAR(255) NOT NULL, description VARCHAR(255) DEFAULT NULL, INDEX IDX_84DA060FDE12AB56 (created_by), INDEX IDX_84DA060FFF8A180B (last_updated_by), INDEX IDX_84DA060F8B8E8428 (created_at), INDEX IDX_84DA060FAA163775 (last_updated_at), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB'); - $this->addSql('CREATE TABLE mod_group_mods (mod_group_id VARCHAR(36) NOT NULL, mod_id VARCHAR(36) NOT NULL, INDEX IDX_AAC336B7E095E5F4 (mod_group_id), INDEX IDX_AAC336B7338E21CD (mod_id), PRIMARY KEY(mod_group_id, mod_id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB'); - $this->addSql('CREATE TABLE mod_lists_mod_groups (mod_list_id VARCHAR(36) NOT NULL, mod_group_id VARCHAR(36) NOT NULL, INDEX IDX_47CB2915FD60CD19 (mod_list_id), INDEX IDX_47CB2915E095E5F4 (mod_group_id), PRIMARY KEY(mod_list_id, mod_group_id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB'); - $this->addSql('ALTER TABLE mod_groups ADD CONSTRAINT FK_84DA060FDE12AB56 FOREIGN KEY (created_by) REFERENCES users (id)'); - $this->addSql('ALTER TABLE mod_groups ADD CONSTRAINT FK_84DA060FFF8A180B FOREIGN KEY (last_updated_by) REFERENCES users (id)'); - $this->addSql('ALTER TABLE mod_group_mods ADD CONSTRAINT FK_AAC336B7E095E5F4 FOREIGN KEY (mod_group_id) REFERENCES mod_groups (id)'); - $this->addSql('ALTER TABLE mod_group_mods ADD CONSTRAINT FK_AAC336B7338E21CD FOREIGN KEY (mod_id) REFERENCES mods (id)'); - $this->addSql('ALTER TABLE mod_lists_mod_groups ADD CONSTRAINT FK_47CB2915FD60CD19 FOREIGN KEY (mod_list_id) REFERENCES mod_lists (id)'); - $this->addSql('ALTER TABLE mod_lists_mod_groups ADD CONSTRAINT FK_47CB2915E095E5F4 FOREIGN KEY (mod_group_id) REFERENCES mod_groups (id)'); - $this->addSql('ALTER TABLE permissions ADD mod_group_list TINYINT(1) NOT NULL, ADD mod_group_create TINYINT(1) NOT NULL, ADD mod_group_update TINYINT(1) NOT NULL, ADD mod_group_delete TINYINT(1) NOT NULL'); - $this->addSql('CREATE UNIQUE INDEX UNIQ_84DA060F5E237E06 ON mod_groups (name)'); - } - - public function down(Schema $schema): void - { - // this down() migration is auto-generated, please modify it to your needs - $this->abortIf('mysql' !== $this->connection->getDatabasePlatform()->getName(), 'Migration can only be executed safely on \'mysql\'.'); - - $this->addSql('ALTER TABLE mod_group_mods DROP FOREIGN KEY FK_AAC336B7E095E5F4'); - $this->addSql('ALTER TABLE mod_lists_mod_groups DROP FOREIGN KEY FK_47CB2915E095E5F4'); - $this->addSql('DROP TABLE mod_groups'); - $this->addSql('DROP TABLE mod_group_mods'); - $this->addSql('DROP TABLE mod_lists_mod_groups'); - $this->addSql('ALTER TABLE permissions DROP mod_group_list, DROP mod_group_create, DROP mod_group_update, DROP mod_group_delete'); - $this->addSql('DROP INDEX UNIQ_84DA060F5E237E06 ON mod_groups'); - } -} diff --git a/migrations/Version20201221213145.php b/migrations/Version20201221213145.php deleted file mode 100644 index 4a38ba1a..00000000 --- a/migrations/Version20201221213145.php +++ /dev/null @@ -1,57 +0,0 @@ -abortIf('mysql' !== $this->connection->getDatabasePlatform()->getName(), 'Migration can only be executed safely on \'mysql\'.'); - - $this->addSql('SET FOREIGN_KEY_CHECKS=0'); - - $this->addSql('ALTER TABLE users CHANGE id id CHAR(36) NOT NULL COMMENT \'(DC2Type:uuid)\', CHANGE permissions_id permissions_id CHAR(36) NOT NULL COMMENT \'(DC2Type:uuid)\', CHANGE created_by created_by CHAR(36) DEFAULT NULL COMMENT \'(DC2Type:uuid)\', CHANGE last_updated_by last_updated_by CHAR(36) DEFAULT NULL COMMENT \'(DC2Type:uuid)\''); - $this->addSql('ALTER TABLE mod_groups CHANGE id id CHAR(36) NOT NULL COMMENT \'(DC2Type:uuid)\', CHANGE created_by created_by CHAR(36) DEFAULT NULL COMMENT \'(DC2Type:uuid)\', CHANGE last_updated_by last_updated_by CHAR(36) DEFAULT NULL COMMENT \'(DC2Type:uuid)\''); - $this->addSql('ALTER TABLE mod_group_mods CHANGE mod_group_id mod_group_id CHAR(36) NOT NULL COMMENT \'(DC2Type:uuid)\', CHANGE mod_id mod_id CHAR(36) NOT NULL COMMENT \'(DC2Type:uuid)\''); - $this->addSql('ALTER TABLE mod_lists CHANGE id id CHAR(36) NOT NULL COMMENT \'(DC2Type:uuid)\', CHANGE created_by created_by CHAR(36) DEFAULT NULL COMMENT \'(DC2Type:uuid)\', CHANGE last_updated_by last_updated_by CHAR(36) DEFAULT NULL COMMENT \'(DC2Type:uuid)\', CHANGE owner_id owner_id CHAR(36) DEFAULT NULL COMMENT \'(DC2Type:uuid)\''); - $this->addSql('ALTER TABLE mod_lists_mods CHANGE mod_list_id mod_list_id CHAR(36) NOT NULL COMMENT \'(DC2Type:uuid)\', CHANGE mod_id mod_id CHAR(36) NOT NULL COMMENT \'(DC2Type:uuid)\''); - $this->addSql('ALTER TABLE mod_lists_mod_groups CHANGE mod_list_id mod_list_id CHAR(36) NOT NULL COMMENT \'(DC2Type:uuid)\', CHANGE mod_group_id mod_group_id CHAR(36) NOT NULL COMMENT \'(DC2Type:uuid)\''); - $this->addSql('ALTER TABLE permissions CHANGE id id CHAR(36) NOT NULL COMMENT \'(DC2Type:uuid)\', CHANGE created_by created_by CHAR(36) DEFAULT NULL COMMENT \'(DC2Type:uuid)\', CHANGE last_updated_by last_updated_by CHAR(36) DEFAULT NULL COMMENT \'(DC2Type:uuid)\''); - $this->addSql('ALTER TABLE mods CHANGE id id CHAR(36) NOT NULL COMMENT \'(DC2Type:uuid)\', CHANGE created_by created_by CHAR(36) DEFAULT NULL COMMENT \'(DC2Type:uuid)\', CHANGE last_updated_by last_updated_by CHAR(36) DEFAULT NULL COMMENT \'(DC2Type:uuid)\''); - - $this->addSql('SET FOREIGN_KEY_CHECKS=1'); - } - - public function down(Schema $schema): void - { - // this down() migration is auto-generated, please modify it to your needs - $this->abortIf('mysql' !== $this->connection->getDatabasePlatform()->getName(), 'Migration can only be executed safely on \'mysql\'.'); - - $this->addSql('SET FOREIGN_KEY_CHECKS=0'); - - $this->addSql('ALTER TABLE mod_group_mods CHANGE mod_group_id mod_group_id VARCHAR(36) CHARACTER SET utf8mb4 NOT NULL COLLATE `utf8mb4_unicode_ci`, CHANGE mod_id mod_id VARCHAR(36) CHARACTER SET utf8mb4 NOT NULL COLLATE `utf8mb4_unicode_ci`'); - $this->addSql('ALTER TABLE mod_groups CHANGE id id VARCHAR(36) CHARACTER SET utf8mb4 NOT NULL COLLATE `utf8mb4_unicode_ci`, CHANGE created_by created_by VARCHAR(36) CHARACTER SET utf8mb4 DEFAULT NULL COLLATE `utf8mb4_unicode_ci`, CHANGE last_updated_by last_updated_by VARCHAR(36) CHARACTER SET utf8mb4 DEFAULT NULL COLLATE `utf8mb4_unicode_ci`'); - $this->addSql('ALTER TABLE mod_lists CHANGE id id VARCHAR(36) CHARACTER SET utf8mb4 NOT NULL COLLATE `utf8mb4_unicode_ci`, CHANGE created_by created_by VARCHAR(36) CHARACTER SET utf8mb4 DEFAULT NULL COLLATE `utf8mb4_unicode_ci`, CHANGE last_updated_by last_updated_by VARCHAR(36) CHARACTER SET utf8mb4 DEFAULT NULL COLLATE `utf8mb4_unicode_ci`, CHANGE owner_id owner_id VARCHAR(36) CHARACTER SET utf8mb4 DEFAULT NULL COLLATE `utf8mb4_unicode_ci`'); - $this->addSql('ALTER TABLE mod_lists_mod_groups CHANGE mod_list_id mod_list_id VARCHAR(36) CHARACTER SET utf8mb4 NOT NULL COLLATE `utf8mb4_unicode_ci`, CHANGE mod_group_id mod_group_id VARCHAR(36) CHARACTER SET utf8mb4 NOT NULL COLLATE `utf8mb4_unicode_ci`'); - $this->addSql('ALTER TABLE mod_lists_mods CHANGE mod_list_id mod_list_id VARCHAR(36) CHARACTER SET utf8mb4 NOT NULL COLLATE `utf8mb4_unicode_ci`, CHANGE mod_id mod_id VARCHAR(36) CHARACTER SET utf8mb4 NOT NULL COLLATE `utf8mb4_unicode_ci`'); - $this->addSql('ALTER TABLE mods CHANGE id id VARCHAR(36) CHARACTER SET utf8mb4 NOT NULL COLLATE `utf8mb4_unicode_ci`, CHANGE created_by created_by VARCHAR(36) CHARACTER SET utf8mb4 DEFAULT NULL COLLATE `utf8mb4_unicode_ci`, CHANGE last_updated_by last_updated_by VARCHAR(36) CHARACTER SET utf8mb4 DEFAULT NULL COLLATE `utf8mb4_unicode_ci`'); - $this->addSql('ALTER TABLE permissions CHANGE id id VARCHAR(36) CHARACTER SET utf8mb4 NOT NULL COLLATE `utf8mb4_unicode_ci`, CHANGE created_by created_by VARCHAR(36) CHARACTER SET utf8mb4 DEFAULT NULL COLLATE `utf8mb4_unicode_ci`, CHANGE last_updated_by last_updated_by VARCHAR(36) CHARACTER SET utf8mb4 DEFAULT NULL COLLATE `utf8mb4_unicode_ci`'); - $this->addSql('ALTER TABLE users CHANGE id id VARCHAR(36) CHARACTER SET utf8mb4 NOT NULL COLLATE `utf8mb4_unicode_ci`, CHANGE created_by created_by VARCHAR(36) CHARACTER SET utf8mb4 DEFAULT NULL COLLATE `utf8mb4_unicode_ci`, CHANGE last_updated_by last_updated_by VARCHAR(36) CHARACTER SET utf8mb4 DEFAULT NULL COLLATE `utf8mb4_unicode_ci`, CHANGE permissions_id permissions_id VARCHAR(36) CHARACTER SET utf8mb4 NOT NULL COLLATE `utf8mb4_unicode_ci`'); - - $this->addSql('SET FOREIGN_KEY_CHECKS=1'); - } -} diff --git a/migrations/Version20201223160458.php b/migrations/Version20201223160458.php deleted file mode 100644 index 15942220..00000000 --- a/migrations/Version20201223160458.php +++ /dev/null @@ -1,39 +0,0 @@ -abortIf('mysql' !== $this->connection->getDatabasePlatform()->getName(), 'Migration can only be executed safely on \'mysql\'.'); - - $this->addSql('ALTER TABLE mod_lists ADD approved TINYINT(1) NOT NULL'); - $this->addSql('ALTER TABLE permissions ADD mod_list_approve TINYINT(1) NOT NULL'); - $this->addSql('CREATE INDEX IDX_ECB7A267C57D81D ON mod_lists (approved)'); - } - - public function down(Schema $schema): void - { - // this down() migration is auto-generated, please modify it to your needs - $this->abortIf('mysql' !== $this->connection->getDatabasePlatform()->getName(), 'Migration can only be executed safely on \'mysql\'.'); - - $this->addSql('ALTER TABLE mod_lists DROP approved'); - $this->addSql('ALTER TABLE permissions DROP mod_list_approve'); - $this->addSql('DROP INDEX IDX_ECB7A267C57D81D ON mod_lists'); - } -} diff --git a/migrations/Version20210114223058.php b/migrations/Version20210114223058.php deleted file mode 100644 index b9ae83c1..00000000 --- a/migrations/Version20210114223058.php +++ /dev/null @@ -1,37 +0,0 @@ -abortIf('mysql' !== $this->connection->getDatabasePlatform()->getName(), 'Migration can only be executed safely on \'mysql\'.'); - - $this->addSql('ALTER TABLE permissions ADD mod_change_status TINYINT(1) NOT NULL'); - $this->addSql('ALTER TABLE mods ADD status VARCHAR(255) DEFAULT NULL COMMENT \'(DC2Type:mod_status_enum)\''); - } - - public function down(Schema $schema): void - { - // this down() migration is auto-generated, please modify it to your needs - $this->abortIf('mysql' !== $this->connection->getDatabasePlatform()->getName(), 'Migration can only be executed safely on \'mysql\'.'); - - $this->addSql('ALTER TABLE mods DROP status'); - $this->addSql('ALTER TABLE permissions DROP mod_change_status'); - } -} diff --git a/migrations/Version20210131115809.php b/migrations/Version20210131115809.php deleted file mode 100644 index ce4a64f3..00000000 --- a/migrations/Version20210131115809.php +++ /dev/null @@ -1,69 +0,0 @@ -abortIf('mysql' !== $this->connection->getDatabasePlatform()->getName(), 'Migration can only be executed safely on \'mysql\'.'); - - $this->addSql('RENAME TABLE mod_group_mods TO mod_group_to_mods;'); - $this->addSql('RENAME TABLE mod_lists_mod_groups TO mod_lists_to_mod_groups;'); - $this->addSql('RENAME TABLE mod_lists_mods TO mod_lists_to_mods;'); - - $this->addSql('ALTER TABLE mod_group_to_mods RENAME INDEX idx_aac336b7e095e5f4 TO IDX_AB46414CE095E5F4'); - $this->addSql('ALTER TABLE mod_group_to_mods RENAME INDEX idx_aac336b7338e21cd TO IDX_AB46414C338E21CD'); - $this->addSql('ALTER TABLE mod_lists_to_mods RENAME INDEX idx_77414c92fd60cd19 TO IDX_43A6B6EAFD60CD19'); - $this->addSql('ALTER TABLE mod_lists_to_mods RENAME INDEX idx_77414c92338e21cd TO IDX_43A6B6EA338E21CD'); - $this->addSql('ALTER TABLE mod_lists_to_mod_groups RENAME INDEX idx_47cb2915fd60cd19 TO IDX_CAF4DA88FD60CD19'); - $this->addSql('ALTER TABLE mod_lists_to_mod_groups RENAME INDEX idx_47cb2915e095e5f4 TO IDX_CAF4DA88E095E5F4'); - - $this->addSql('CREATE TABLE user_group (id CHAR(36) NOT NULL COMMENT \'(DC2Type:uuid)\', created_by CHAR(36) DEFAULT NULL COMMENT \'(DC2Type:uuid)\', last_updated_by CHAR(36) DEFAULT NULL COMMENT \'(DC2Type:uuid)\', permissions_id CHAR(36) NOT NULL COMMENT \'(DC2Type:uuid)\', created_at DATETIME NOT NULL COMMENT \'(DC2Type:datetime_immutable)\', last_updated_at DATETIME DEFAULT NULL COMMENT \'(DC2Type:datetime_immutable)\', name VARCHAR(255) NOT NULL, description VARCHAR(255) DEFAULT NULL, INDEX IDX_8F02BF9DDE12AB56 (created_by), INDEX IDX_8F02BF9DFF8A180B (last_updated_by), UNIQUE INDEX UNIQ_8F02BF9D9C3E4F87 (permissions_id), INDEX IDX_8F02BF9D8B8E8428 (created_at), INDEX IDX_8F02BF9DAA163775 (last_updated_at), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB'); - $this->addSql('CREATE TABLE user_groups_to_users (user_group_id CHAR(36) NOT NULL COMMENT \'(DC2Type:uuid)\', user_id CHAR(36) NOT NULL COMMENT \'(DC2Type:uuid)\', INDEX IDX_B67102891ED93D47 (user_group_id), INDEX IDX_B6710289A76ED395 (user_id), PRIMARY KEY(user_group_id, user_id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB'); - $this->addSql('ALTER TABLE user_group ADD CONSTRAINT FK_8F02BF9DDE12AB56 FOREIGN KEY (created_by) REFERENCES users (id)'); - $this->addSql('ALTER TABLE user_group ADD CONSTRAINT FK_8F02BF9DFF8A180B FOREIGN KEY (last_updated_by) REFERENCES users (id)'); - $this->addSql('ALTER TABLE user_group ADD CONSTRAINT FK_8F02BF9D9C3E4F87 FOREIGN KEY (permissions_id) REFERENCES permissions (id)'); - $this->addSql('ALTER TABLE user_groups_to_users ADD CONSTRAINT FK_B67102891ED93D47 FOREIGN KEY (user_group_id) REFERENCES user_group (id)'); - $this->addSql('ALTER TABLE user_groups_to_users ADD CONSTRAINT FK_B6710289A76ED395 FOREIGN KEY (user_id) REFERENCES users (id)'); - $this->addSql('ALTER TABLE permissions ADD user_group_list TINYINT(1) NOT NULL, ADD user_group_create TINYINT(1) NOT NULL, ADD user_group_update TINYINT(1) NOT NULL, ADD user_group_delete TINYINT(1) NOT NULL, ADD type VARCHAR(255) NOT NULL'); - - $this->addSql("UPDATE permissions SET type = 'user'"); - } - - public function down(Schema $schema): void - { - // this down() migration is auto-generated, please modify it to your needs - $this->abortIf('mysql' !== $this->connection->getDatabasePlatform()->getName(), 'Migration can only be executed safely on \'mysql\'.'); - - $this->addSql('RENAME TABLE mod_group_to_mods TO mod_group_mods;'); - $this->addSql('RENAME TABLE mod_lists_to_mod_groups TO mod_lists_mod_groups;'); - $this->addSql('RENAME TABLE mod_lists_to_mods TO mod_lists_mods;'); - - $this->addSql('ALTER TABLE mod_group_mods RENAME INDEX idx_ab46414ce095e5f4 TO IDX_AAC336B7E095E5F4'); - $this->addSql('ALTER TABLE mod_group_mods RENAME INDEX idx_ab46414c338e21cd TO IDX_AAC336B7338E21CD'); - $this->addSql('ALTER TABLE mod_lists_mod_groups RENAME INDEX idx_caf4da88fd60cd19 TO IDX_47CB2915FD60CD19'); - $this->addSql('ALTER TABLE mod_lists_mod_groups RENAME INDEX idx_caf4da88e095e5f4 TO IDX_47CB2915E095E5F4'); - $this->addSql('ALTER TABLE mod_lists_mods RENAME INDEX idx_43a6b6eafd60cd19 TO IDX_77414C92FD60CD19'); - $this->addSql('ALTER TABLE mod_lists_mods RENAME INDEX idx_43a6b6ea338e21cd TO IDX_77414C92338E21CD'); - - $this->addSql('ALTER TABLE user_groups_to_users DROP FOREIGN KEY FK_B67102891ED93D47'); - $this->addSql('DROP TABLE user_group'); - $this->addSql('DROP TABLE user_groups_to_users'); - $this->addSql('ALTER TABLE permissions DROP user_group_list, DROP user_group_create, DROP user_group_update, DROP user_group_delete, DROP type'); - } -} diff --git a/migrations/Version20210611234047.php b/migrations/Version20210611234047.php deleted file mode 100644 index 55459179..00000000 --- a/migrations/Version20210611234047.php +++ /dev/null @@ -1,40 +0,0 @@ -addSql('CREATE TABLE dlc (id CHAR(36) NOT NULL COMMENT \'(DC2Type:uuid)\', created_by CHAR(36) DEFAULT NULL COMMENT \'(DC2Type:uuid)\', last_updated_by CHAR(36) DEFAULT NULL COMMENT \'(DC2Type:uuid)\', created_at DATETIME NOT NULL COMMENT \'(DC2Type:datetime_immutable)\', last_updated_at DATETIME DEFAULT NULL COMMENT \'(DC2Type:datetime_immutable)\', name VARCHAR(255) NOT NULL, description VARCHAR(255) DEFAULT NULL, app_id BIGINT NOT NULL, UNIQUE INDEX UNIQ_AD6CAEA77987212D (app_id), INDEX IDX_AD6CAEA7DE12AB56 (created_by), INDEX IDX_AD6CAEA7FF8A180B (last_updated_by), INDEX IDX_AD6CAEA78B8E8428 (created_at), INDEX IDX_AD6CAEA7AA163775 (last_updated_at), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB'); - $this->addSql('CREATE TABLE mod_lists_to_dlcs (mod_list_id CHAR(36) NOT NULL COMMENT \'(DC2Type:uuid)\', dlc_id CHAR(36) NOT NULL COMMENT \'(DC2Type:uuid)\', INDEX IDX_73A9D1FEFD60CD19 (mod_list_id), INDEX IDX_73A9D1FECEF6326C (dlc_id), PRIMARY KEY(mod_list_id, dlc_id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB'); - $this->addSql('ALTER TABLE dlc ADD CONSTRAINT FK_AD6CAEA7DE12AB56 FOREIGN KEY (created_by) REFERENCES users (id)'); - $this->addSql('ALTER TABLE dlc ADD CONSTRAINT FK_AD6CAEA7FF8A180B FOREIGN KEY (last_updated_by) REFERENCES users (id)'); - $this->addSql('ALTER TABLE mod_lists_to_dlcs ADD CONSTRAINT FK_73A9D1FEFD60CD19 FOREIGN KEY (mod_list_id) REFERENCES mod_lists (id) ON DELETE CASCADE'); - $this->addSql('ALTER TABLE mod_lists_to_dlcs ADD CONSTRAINT FK_73A9D1FECEF6326C FOREIGN KEY (dlc_id) REFERENCES dlc (id) ON DELETE CASCADE'); - $this->addSql('ALTER TABLE permissions ADD dlc_list TINYINT(1) NOT NULL, ADD dlc_create TINYINT(1) NOT NULL, ADD dlc_update TINYINT(1) NOT NULL, ADD dlc_delete TINYINT(1) NOT NULL'); - } - - public function down(Schema $schema): void - { - // this down() migration is auto-generated, please modify it to your needs - $this->addSql('ALTER TABLE mod_lists_to_dlcs DROP FOREIGN KEY FK_73A9D1FECEF6326C'); - $this->addSql('DROP TABLE dlc'); - $this->addSql('DROP TABLE mod_lists_to_dlcs'); - $this->addSql('ALTER TABLE permissions DROP dlc_list, DROP dlc_create, DROP dlc_update, DROP dlc_delete'); - } -} diff --git a/migrations/Version20210625211018.php b/migrations/Version20210625211018.php deleted file mode 100644 index 5d677296..00000000 --- a/migrations/Version20210625211018.php +++ /dev/null @@ -1,40 +0,0 @@ -addSql('ALTER TABLE dlc ADD directory VARCHAR(255)'); - $this->addSql('CREATE UNIQUE INDEX UNIQ_AD6CAEA7467844DA ON dlc (directory)'); - - // Update existing DLCs - $this->addSql("UPDATE dlc SET directory = 'vn' WHERE app_id = 1227700"); - $this->addSql("UPDATE dlc SET directory = 'csla' WHERE app_id = 1294440"); - $this->addSql("UPDATE dlc SET directory = 'gm' WHERE app_id = 1042220"); - - $this->addSql('ALTER TABLE dlc MODIFY directory VARCHAR(255) NOT NULL'); - } - - public function down(Schema $schema): void - { - // this down() migration is auto-generated, please modify it to your needs - $this->addSql('DROP INDEX UNIQ_AD6CAEA7467844DA ON dlc'); - $this->addSql('ALTER TABLE dlc DROP directory'); - } -} diff --git a/migrations/Version20210627001232.php b/migrations/Version20210627001232.php deleted file mode 100644 index dd7300c0..00000000 --- a/migrations/Version20210627001232.php +++ /dev/null @@ -1,53 +0,0 @@ -addSql('ALTER TABLE mod_group_to_mods DROP FOREIGN KEY FK_AAC336B7338E21CD'); - $this->addSql('ALTER TABLE mod_group_to_mods DROP FOREIGN KEY FK_AAC336B7E095E5F4'); - $this->addSql('ALTER TABLE mod_group_to_mods ADD CONSTRAINT FK_AB46414CE095E5F4 FOREIGN KEY (mod_group_id) REFERENCES mod_groups (id) ON DELETE CASCADE'); - $this->addSql('ALTER TABLE mod_group_to_mods ADD CONSTRAINT FK_AB46414C338E21CD FOREIGN KEY (mod_id) REFERENCES mods (id) ON DELETE CASCADE'); - $this->addSql('ALTER TABLE mod_lists_to_mods DROP FOREIGN KEY FK_77414C92338E21CD'); - $this->addSql('ALTER TABLE mod_lists_to_mods DROP FOREIGN KEY FK_77414C92FD60CD19'); - $this->addSql('ALTER TABLE mod_lists_to_mods ADD CONSTRAINT FK_43A6B6EAFD60CD19 FOREIGN KEY (mod_list_id) REFERENCES mod_lists (id) ON DELETE CASCADE'); - $this->addSql('ALTER TABLE mod_lists_to_mods ADD CONSTRAINT FK_43A6B6EA338E21CD FOREIGN KEY (mod_id) REFERENCES mods (id) ON DELETE CASCADE'); - $this->addSql('ALTER TABLE mod_lists_to_mod_groups DROP FOREIGN KEY FK_47CB2915E095E5F4'); - $this->addSql('ALTER TABLE mod_lists_to_mod_groups DROP FOREIGN KEY FK_47CB2915FD60CD19'); - $this->addSql('ALTER TABLE mod_lists_to_mod_groups ADD CONSTRAINT FK_CAF4DA88FD60CD19 FOREIGN KEY (mod_list_id) REFERENCES mod_lists (id) ON DELETE CASCADE'); - $this->addSql('ALTER TABLE mod_lists_to_mod_groups ADD CONSTRAINT FK_CAF4DA88E095E5F4 FOREIGN KEY (mod_group_id) REFERENCES mod_groups (id) ON DELETE CASCADE'); - } - - public function down(Schema $schema): void - { - // this down() migration is auto-generated, please modify it to your needs - $this->addSql('ALTER TABLE mod_group_to_mods DROP FOREIGN KEY FK_AB46414CE095E5F4'); - $this->addSql('ALTER TABLE mod_group_to_mods DROP FOREIGN KEY FK_AB46414C338E21CD'); - $this->addSql('ALTER TABLE mod_group_to_mods ADD CONSTRAINT FK_AAC336B7338E21CD FOREIGN KEY (mod_id) REFERENCES mods (id)'); - $this->addSql('ALTER TABLE mod_group_to_mods ADD CONSTRAINT FK_AAC336B7E095E5F4 FOREIGN KEY (mod_group_id) REFERENCES mod_groups (id)'); - $this->addSql('ALTER TABLE mod_lists_to_mod_groups DROP FOREIGN KEY FK_CAF4DA88FD60CD19'); - $this->addSql('ALTER TABLE mod_lists_to_mod_groups DROP FOREIGN KEY FK_CAF4DA88E095E5F4'); - $this->addSql('ALTER TABLE mod_lists_to_mod_groups ADD CONSTRAINT FK_47CB2915E095E5F4 FOREIGN KEY (mod_group_id) REFERENCES mod_groups (id)'); - $this->addSql('ALTER TABLE mod_lists_to_mod_groups ADD CONSTRAINT FK_47CB2915FD60CD19 FOREIGN KEY (mod_list_id) REFERENCES mod_lists (id)'); - $this->addSql('ALTER TABLE mod_lists_to_mods DROP FOREIGN KEY FK_43A6B6EAFD60CD19'); - $this->addSql('ALTER TABLE mod_lists_to_mods DROP FOREIGN KEY FK_43A6B6EA338E21CD'); - $this->addSql('ALTER TABLE mod_lists_to_mods ADD CONSTRAINT FK_77414C92338E21CD FOREIGN KEY (mod_id) REFERENCES mods (id)'); - $this->addSql('ALTER TABLE mod_lists_to_mods ADD CONSTRAINT FK_77414C92FD60CD19 FOREIGN KEY (mod_list_id) REFERENCES mod_lists (id)'); - } -} diff --git a/migrations/Version20210827203818.php b/migrations/Version20210827203818.php deleted file mode 100644 index 9f4af52a..00000000 --- a/migrations/Version20210827203818.php +++ /dev/null @@ -1,31 +0,0 @@ -addSql('CREATE TABLE attendances (id CHAR(36) NOT NULL COMMENT \'(DC2Type:uuid)\', created_at DATETIME NOT NULL COMMENT \'(DC2Type:datetime_immutable)\', mission_id VARCHAR(255) NOT NULL, player_id BIGINT NOT NULL, INDEX IDX_9C6B8FD48B8E8428 (created_at), UNIQUE INDEX UNIQ_9C6B8FD4BE6CAE9099E6F5DF (mission_id, player_id), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB'); - } - - public function down(Schema $schema): void - { - // this down() migration is auto-generated, please modify it to your needs - $this->addSql('DROP TABLE attendances'); - } -} diff --git a/migrations/Version20210827225825.php b/migrations/Version20210827225825.php deleted file mode 100644 index 574deb75..00000000 --- a/migrations/Version20210827225825.php +++ /dev/null @@ -1,39 +0,0 @@ -addSql('ALTER TABLE permissions CHANGE user_manage_permissions user_update TINYINT(1) NOT NULL'); - $this->addSql('DROP INDEX IDX_1483A5E9F85E0677 ON users'); - $this->addSql('DROP INDEX IDX_1483A5E99F75D7B0 ON users'); - $this->addSql('ALTER TABLE users ADD steam_id BIGINT DEFAULT NULL'); - $this->addSql('CREATE UNIQUE INDEX UNIQ_1483A5E9F3FD4ECA ON users (steam_id)'); - } - - public function down(Schema $schema): void - { - // this down() migration is auto-generated, please modify it to your needs - $this->addSql('ALTER TABLE permissions CHANGE user_update user_manage_permissions TINYINT(1) NOT NULL'); - $this->addSql('DROP INDEX UNIQ_1483A5E9F3FD4ECA ON users'); - $this->addSql('ALTER TABLE users DROP steam_id'); - $this->addSql('CREATE INDEX IDX_1483A5E9F85E0677 ON users (username)'); - $this->addSql('CREATE INDEX IDX_1483A5E99F75D7B0 ON users (external_id)'); - } -} diff --git a/migrations/Version20220117223431.php b/migrations/Version20220117223431.php deleted file mode 100644 index b6b9179b..00000000 --- a/migrations/Version20220117223431.php +++ /dev/null @@ -1,38 +0,0 @@ -addSql(' - CREATE TABLE `sessions` ( - `sess_id` VARBINARY(128) NOT NULL PRIMARY KEY, - `sess_data` BLOB NOT NULL, - `sess_lifetime` INTEGER UNSIGNED NOT NULL, - `sess_time` INTEGER UNSIGNED NOT NULL, - INDEX `sessions_sess_lifetime_idx` (`sess_lifetime`) - ) COLLATE utf8mb4_bin, ENGINE = InnoDB; - '); - } - - public function down(Schema $schema): void - { - $this->addSql('DROP TABLE `sessions`'); - } -} diff --git a/migrations/Version20230814124403.php b/migrations/Version20230814124403.php deleted file mode 100644 index 941b2721..00000000 --- a/migrations/Version20230814124403.php +++ /dev/null @@ -1,33 +0,0 @@ -addSql('ALTER TABLE mods CHANGE type type VARCHAR(255) DEFAULT NULL COMMENT \'(DC2Type:mod_type_enum)\''); - $this->addSql("UPDATE mods SET type = NULL WHERE source = 'directory'"); - } - - public function down(Schema $schema): void - { - // this down() migration is auto-generated, please modify it to your needs - $this->addSql("UPDATE mods SET type = 'server_side' WHERE source = 'directory'"); - $this->addSql('ALTER TABLE mods CHANGE type type VARCHAR(255) CHARACTER SET utf8mb4 NOT NULL COLLATE `utf8mb4_unicode_ci` COMMENT \'(DC2Type:mod_type_enum)\''); - } -} diff --git a/migrations/Version20230815192821.php b/migrations/Version20230815192821.php deleted file mode 100644 index b32833f9..00000000 --- a/migrations/Version20230815192821.php +++ /dev/null @@ -1,33 +0,0 @@ -addSql('ALTER TABLE sessions CHANGE sess_data sess_data LONGBLOB NOT NULL'); - $this->addSql('ALTER TABLE sessions RENAME INDEX sessions_sess_lifetime_idx TO sess_lifetime_idx'); - } - - public function down(Schema $schema): void - { - // this down() migration is auto-generated, please modify it to your needs - $this->addSql('ALTER TABLE sessions CHANGE sess_data sess_data BLOB NOT NULL'); - $this->addSql('ALTER TABLE sessions RENAME INDEX sess_lifetime_idx TO sessions_sess_lifetime_idx'); - } -} diff --git a/migrations/Version20230827120512.php b/migrations/Version20230827120512.php deleted file mode 100644 index 2a2a0472..00000000 --- a/migrations/Version20230827120512.php +++ /dev/null @@ -1,31 +0,0 @@ -addSql('ALTER TABLE mods CHANGE status status VARCHAR(255) DEFAULT NULL, CHANGE type type VARCHAR(255) DEFAULT NULL'); - } - - public function down(Schema $schema): void - { - // this down() migration is auto-generated, please modify it to your needs - $this->addSql('ALTER TABLE mods CHANGE type type VARCHAR(255) DEFAULT NULL COMMENT \'(DC2Type:mod_type_enum)\', CHANGE status status VARCHAR(255) DEFAULT NULL COMMENT \'(DC2Type:mod_status_enum)\''); - } -} diff --git a/migrations/Version20231012182336.php b/migrations/Version20231012182336.php new file mode 100644 index 00000000..1507d24e --- /dev/null +++ b/migrations/Version20231012182336.php @@ -0,0 +1,215 @@ +addSql('CREATE TABLE attendances (id UUID NOT NULL, created_at TIMESTAMP(0) WITH TIME ZONE NOT NULL, mission_id VARCHAR(255) NOT NULL, player_id BIGINT NOT NULL, PRIMARY KEY(id))'); + $this->addSql('CREATE INDEX IDX_9C6B8FD48B8E8428 ON attendances (created_at)'); + $this->addSql('CREATE UNIQUE INDEX UNIQ_9C6B8FD4BE6CAE9099E6F5DF ON attendances (mission_id, player_id)'); + $this->addSql('COMMENT ON COLUMN attendances.id IS \'(DC2Type:uuid)\''); + $this->addSql('COMMENT ON COLUMN attendances.created_at IS \'(DC2Type:datetimetz_immutable)\''); + $this->addSql('CREATE TABLE dlc (id UUID NOT NULL, created_by UUID DEFAULT NULL, last_updated_by UUID DEFAULT NULL, created_at TIMESTAMP(0) WITH TIME ZONE NOT NULL, last_updated_at TIMESTAMP(0) WITH TIME ZONE DEFAULT NULL, name VARCHAR(255) NOT NULL, description VARCHAR(255) DEFAULT NULL, app_id BIGINT NOT NULL, directory VARCHAR(255) NOT NULL, PRIMARY KEY(id))'); + $this->addSql('CREATE UNIQUE INDEX UNIQ_AD6CAEA77987212D ON dlc (app_id)'); + $this->addSql('CREATE UNIQUE INDEX UNIQ_AD6CAEA7467844DA ON dlc (directory)'); + $this->addSql('CREATE INDEX IDX_AD6CAEA7DE12AB56 ON dlc (created_by)'); + $this->addSql('CREATE INDEX IDX_AD6CAEA7FF8A180B ON dlc (last_updated_by)'); + $this->addSql('CREATE INDEX IDX_AD6CAEA78B8E8428 ON dlc (created_at)'); + $this->addSql('CREATE INDEX IDX_AD6CAEA7AA163775 ON dlc (last_updated_at)'); + $this->addSql('COMMENT ON COLUMN dlc.id IS \'(DC2Type:uuid)\''); + $this->addSql('COMMENT ON COLUMN dlc.created_by IS \'(DC2Type:uuid)\''); + $this->addSql('COMMENT ON COLUMN dlc.last_updated_by IS \'(DC2Type:uuid)\''); + $this->addSql('COMMENT ON COLUMN dlc.created_at IS \'(DC2Type:datetimetz_immutable)\''); + $this->addSql('COMMENT ON COLUMN dlc.last_updated_at IS \'(DC2Type:datetimetz_immutable)\''); + $this->addSql('CREATE TABLE mod_groups (id UUID NOT NULL, created_by UUID DEFAULT NULL, last_updated_by UUID DEFAULT NULL, created_at TIMESTAMP(0) WITH TIME ZONE NOT NULL, last_updated_at TIMESTAMP(0) WITH TIME ZONE DEFAULT NULL, name VARCHAR(255) NOT NULL, description VARCHAR(255) DEFAULT NULL, PRIMARY KEY(id))'); + $this->addSql('CREATE INDEX IDX_84DA060FDE12AB56 ON mod_groups (created_by)'); + $this->addSql('CREATE INDEX IDX_84DA060FFF8A180B ON mod_groups (last_updated_by)'); + $this->addSql('CREATE INDEX IDX_84DA060F8B8E8428 ON mod_groups (created_at)'); + $this->addSql('CREATE INDEX IDX_84DA060FAA163775 ON mod_groups (last_updated_at)'); + $this->addSql('CREATE UNIQUE INDEX UNIQ_84DA060F5E237E06 ON mod_groups (name)'); + $this->addSql('COMMENT ON COLUMN mod_groups.id IS \'(DC2Type:uuid)\''); + $this->addSql('COMMENT ON COLUMN mod_groups.created_by IS \'(DC2Type:uuid)\''); + $this->addSql('COMMENT ON COLUMN mod_groups.last_updated_by IS \'(DC2Type:uuid)\''); + $this->addSql('COMMENT ON COLUMN mod_groups.created_at IS \'(DC2Type:datetimetz_immutable)\''); + $this->addSql('COMMENT ON COLUMN mod_groups.last_updated_at IS \'(DC2Type:datetimetz_immutable)\''); + $this->addSql('CREATE TABLE mod_group_to_mods (mod_group_id UUID NOT NULL, mod_id UUID NOT NULL, PRIMARY KEY(mod_group_id, mod_id))'); + $this->addSql('CREATE INDEX IDX_AB46414CE095E5F4 ON mod_group_to_mods (mod_group_id)'); + $this->addSql('CREATE INDEX IDX_AB46414C338E21CD ON mod_group_to_mods (mod_id)'); + $this->addSql('COMMENT ON COLUMN mod_group_to_mods.mod_group_id IS \'(DC2Type:uuid)\''); + $this->addSql('COMMENT ON COLUMN mod_group_to_mods.mod_id IS \'(DC2Type:uuid)\''); + $this->addSql('CREATE TABLE mod_lists (id UUID NOT NULL, created_by UUID DEFAULT NULL, last_updated_by UUID DEFAULT NULL, owner_id UUID DEFAULT NULL, created_at TIMESTAMP(0) WITH TIME ZONE NOT NULL, last_updated_at TIMESTAMP(0) WITH TIME ZONE DEFAULT NULL, name VARCHAR(255) NOT NULL, description VARCHAR(255) DEFAULT NULL, active BOOLEAN NOT NULL, approved BOOLEAN NOT NULL, PRIMARY KEY(id))'); + $this->addSql('CREATE INDEX IDX_ECB7A26DE12AB56 ON mod_lists (created_by)'); + $this->addSql('CREATE INDEX IDX_ECB7A26FF8A180B ON mod_lists (last_updated_by)'); + $this->addSql('CREATE INDEX IDX_ECB7A267E3C61F9 ON mod_lists (owner_id)'); + $this->addSql('CREATE INDEX IDX_ECB7A268B8E8428 ON mod_lists (created_at)'); + $this->addSql('CREATE INDEX IDX_ECB7A26AA163775 ON mod_lists (last_updated_at)'); + $this->addSql('CREATE INDEX IDX_ECB7A267C57D81D ON mod_lists (approved)'); + $this->addSql('CREATE UNIQUE INDEX UNIQ_ECB7A265E237E06 ON mod_lists (name)'); + $this->addSql('COMMENT ON COLUMN mod_lists.id IS \'(DC2Type:uuid)\''); + $this->addSql('COMMENT ON COLUMN mod_lists.created_by IS \'(DC2Type:uuid)\''); + $this->addSql('COMMENT ON COLUMN mod_lists.last_updated_by IS \'(DC2Type:uuid)\''); + $this->addSql('COMMENT ON COLUMN mod_lists.owner_id IS \'(DC2Type:uuid)\''); + $this->addSql('COMMENT ON COLUMN mod_lists.created_at IS \'(DC2Type:datetimetz_immutable)\''); + $this->addSql('COMMENT ON COLUMN mod_lists.last_updated_at IS \'(DC2Type:datetimetz_immutable)\''); + $this->addSql('CREATE TABLE mod_lists_to_mods (mod_list_id UUID NOT NULL, mod_id UUID NOT NULL, PRIMARY KEY(mod_list_id, mod_id))'); + $this->addSql('CREATE INDEX IDX_43A6B6EAFD60CD19 ON mod_lists_to_mods (mod_list_id)'); + $this->addSql('CREATE INDEX IDX_43A6B6EA338E21CD ON mod_lists_to_mods (mod_id)'); + $this->addSql('COMMENT ON COLUMN mod_lists_to_mods.mod_list_id IS \'(DC2Type:uuid)\''); + $this->addSql('COMMENT ON COLUMN mod_lists_to_mods.mod_id IS \'(DC2Type:uuid)\''); + $this->addSql('CREATE TABLE mod_lists_to_mod_groups (mod_list_id UUID NOT NULL, mod_group_id UUID NOT NULL, PRIMARY KEY(mod_list_id, mod_group_id))'); + $this->addSql('CREATE INDEX IDX_CAF4DA88FD60CD19 ON mod_lists_to_mod_groups (mod_list_id)'); + $this->addSql('CREATE INDEX IDX_CAF4DA88E095E5F4 ON mod_lists_to_mod_groups (mod_group_id)'); + $this->addSql('COMMENT ON COLUMN mod_lists_to_mod_groups.mod_list_id IS \'(DC2Type:uuid)\''); + $this->addSql('COMMENT ON COLUMN mod_lists_to_mod_groups.mod_group_id IS \'(DC2Type:uuid)\''); + $this->addSql('CREATE TABLE mod_lists_to_dlcs (mod_list_id UUID NOT NULL, dlc_id UUID NOT NULL, PRIMARY KEY(mod_list_id, dlc_id))'); + $this->addSql('CREATE INDEX IDX_73A9D1FEFD60CD19 ON mod_lists_to_dlcs (mod_list_id)'); + $this->addSql('CREATE INDEX IDX_73A9D1FECEF6326C ON mod_lists_to_dlcs (dlc_id)'); + $this->addSql('COMMENT ON COLUMN mod_lists_to_dlcs.mod_list_id IS \'(DC2Type:uuid)\''); + $this->addSql('COMMENT ON COLUMN mod_lists_to_dlcs.dlc_id IS \'(DC2Type:uuid)\''); + $this->addSql('CREATE TABLE mods (id UUID NOT NULL, created_by UUID DEFAULT NULL, last_updated_by UUID DEFAULT NULL, created_at TIMESTAMP(0) WITH TIME ZONE NOT NULL, last_updated_at TIMESTAMP(0) WITH TIME ZONE DEFAULT NULL, name VARCHAR(255) NOT NULL, description VARCHAR(255) DEFAULT NULL, status VARCHAR(255) DEFAULT NULL, source VARCHAR(255) NOT NULL, type VARCHAR(255) DEFAULT NULL, item_id BIGINT DEFAULT NULL, directory VARCHAR(255) DEFAULT NULL, PRIMARY KEY(id))'); + $this->addSql('CREATE INDEX IDX_631EF2FADE12AB56 ON mods (created_by)'); + $this->addSql('CREATE INDEX IDX_631EF2FAFF8A180B ON mods (last_updated_by)'); + $this->addSql('CREATE UNIQUE INDEX UNIQ_631EF2FA126F525E ON mods (item_id)'); + $this->addSql('CREATE UNIQUE INDEX UNIQ_631EF2FA467844DA ON mods (directory)'); + $this->addSql('CREATE INDEX IDX_631EF2FA8B8E8428 ON mods (created_at)'); + $this->addSql('CREATE INDEX IDX_631EF2FAAA163775 ON mods (last_updated_at)'); + $this->addSql('COMMENT ON COLUMN mods.id IS \'(DC2Type:uuid)\''); + $this->addSql('COMMENT ON COLUMN mods.created_by IS \'(DC2Type:uuid)\''); + $this->addSql('COMMENT ON COLUMN mods.last_updated_by IS \'(DC2Type:uuid)\''); + $this->addSql('COMMENT ON COLUMN mods.created_at IS \'(DC2Type:datetimetz_immutable)\''); + $this->addSql('COMMENT ON COLUMN mods.last_updated_at IS \'(DC2Type:datetimetz_immutable)\''); + $this->addSql('CREATE TABLE permissions (id UUID NOT NULL, created_by UUID DEFAULT NULL, last_updated_by UUID DEFAULT NULL, created_at TIMESTAMP(0) WITH TIME ZONE NOT NULL, last_updated_at TIMESTAMP(0) WITH TIME ZONE DEFAULT NULL, user_list BOOLEAN NOT NULL, user_update BOOLEAN NOT NULL, user_delete BOOLEAN NOT NULL, user_group_list BOOLEAN NOT NULL, user_group_create BOOLEAN NOT NULL, user_group_update BOOLEAN NOT NULL, user_group_delete BOOLEAN NOT NULL, mod_list BOOLEAN NOT NULL, mod_create BOOLEAN NOT NULL, mod_update BOOLEAN NOT NULL, mod_delete BOOLEAN NOT NULL, mod_change_status BOOLEAN NOT NULL, mod_group_list BOOLEAN NOT NULL, mod_group_create BOOLEAN NOT NULL, mod_group_update BOOLEAN NOT NULL, mod_group_delete BOOLEAN NOT NULL, dlc_list BOOLEAN NOT NULL, dlc_create BOOLEAN NOT NULL, dlc_update BOOLEAN NOT NULL, dlc_delete BOOLEAN NOT NULL, mod_list_list BOOLEAN NOT NULL, mod_list_create BOOLEAN NOT NULL, mod_list_update BOOLEAN NOT NULL, mod_list_delete BOOLEAN NOT NULL, mod_list_copy BOOLEAN NOT NULL, mod_list_approve BOOLEAN NOT NULL, type VARCHAR(255) NOT NULL, PRIMARY KEY(id))'); + $this->addSql('CREATE INDEX IDX_2DEDCC6FDE12AB56 ON permissions (created_by)'); + $this->addSql('CREATE INDEX IDX_2DEDCC6FFF8A180B ON permissions (last_updated_by)'); + $this->addSql('CREATE INDEX IDX_2DEDCC6F8B8E8428 ON permissions (created_at)'); + $this->addSql('CREATE INDEX IDX_2DEDCC6FAA163775 ON permissions (last_updated_at)'); + $this->addSql('COMMENT ON COLUMN permissions.id IS \'(DC2Type:uuid)\''); + $this->addSql('COMMENT ON COLUMN permissions.created_by IS \'(DC2Type:uuid)\''); + $this->addSql('COMMENT ON COLUMN permissions.last_updated_by IS \'(DC2Type:uuid)\''); + $this->addSql('COMMENT ON COLUMN permissions.created_at IS \'(DC2Type:datetimetz_immutable)\''); + $this->addSql('COMMENT ON COLUMN permissions.last_updated_at IS \'(DC2Type:datetimetz_immutable)\''); + $this->addSql('CREATE TABLE user_group (id UUID NOT NULL, created_by UUID DEFAULT NULL, last_updated_by UUID DEFAULT NULL, permissions_id UUID NOT NULL, created_at TIMESTAMP(0) WITH TIME ZONE NOT NULL, last_updated_at TIMESTAMP(0) WITH TIME ZONE DEFAULT NULL, name VARCHAR(255) NOT NULL, description VARCHAR(255) DEFAULT NULL, PRIMARY KEY(id))'); + $this->addSql('CREATE INDEX IDX_8F02BF9DDE12AB56 ON user_group (created_by)'); + $this->addSql('CREATE INDEX IDX_8F02BF9DFF8A180B ON user_group (last_updated_by)'); + $this->addSql('CREATE UNIQUE INDEX UNIQ_8F02BF9D9C3E4F87 ON user_group (permissions_id)'); + $this->addSql('CREATE INDEX IDX_8F02BF9D8B8E8428 ON user_group (created_at)'); + $this->addSql('CREATE INDEX IDX_8F02BF9DAA163775 ON user_group (last_updated_at)'); + $this->addSql('COMMENT ON COLUMN user_group.id IS \'(DC2Type:uuid)\''); + $this->addSql('COMMENT ON COLUMN user_group.created_by IS \'(DC2Type:uuid)\''); + $this->addSql('COMMENT ON COLUMN user_group.last_updated_by IS \'(DC2Type:uuid)\''); + $this->addSql('COMMENT ON COLUMN user_group.permissions_id IS \'(DC2Type:uuid)\''); + $this->addSql('COMMENT ON COLUMN user_group.created_at IS \'(DC2Type:datetimetz_immutable)\''); + $this->addSql('COMMENT ON COLUMN user_group.last_updated_at IS \'(DC2Type:datetimetz_immutable)\''); + $this->addSql('CREATE TABLE user_groups_to_users (user_group_id UUID NOT NULL, user_id UUID NOT NULL, PRIMARY KEY(user_group_id, user_id))'); + $this->addSql('CREATE INDEX IDX_B67102891ED93D47 ON user_groups_to_users (user_group_id)'); + $this->addSql('CREATE INDEX IDX_B6710289A76ED395 ON user_groups_to_users (user_id)'); + $this->addSql('COMMENT ON COLUMN user_groups_to_users.user_group_id IS \'(DC2Type:uuid)\''); + $this->addSql('COMMENT ON COLUMN user_groups_to_users.user_id IS \'(DC2Type:uuid)\''); + $this->addSql('CREATE TABLE users (id UUID NOT NULL, created_by UUID DEFAULT NULL, last_updated_by UUID DEFAULT NULL, permissions_id UUID NOT NULL, created_at TIMESTAMP(0) WITH TIME ZONE NOT NULL, last_updated_at TIMESTAMP(0) WITH TIME ZONE DEFAULT NULL, username VARCHAR(255) NOT NULL, email VARCHAR(255) NOT NULL, external_id VARCHAR(64) NOT NULL, avatar_hash VARCHAR(512) DEFAULT NULL, steam_id BIGINT DEFAULT NULL, PRIMARY KEY(id))'); + $this->addSql('CREATE UNIQUE INDEX UNIQ_1483A5E9F85E0677 ON users (username)'); + $this->addSql('CREATE UNIQUE INDEX UNIQ_1483A5E99F75D7B0 ON users (external_id)'); + $this->addSql('CREATE UNIQUE INDEX UNIQ_1483A5E9F3FD4ECA ON users (steam_id)'); + $this->addSql('CREATE INDEX IDX_1483A5E9DE12AB56 ON users (created_by)'); + $this->addSql('CREATE INDEX IDX_1483A5E9FF8A180B ON users (last_updated_by)'); + $this->addSql('CREATE UNIQUE INDEX UNIQ_1483A5E99C3E4F87 ON users (permissions_id)'); + $this->addSql('CREATE INDEX IDX_1483A5E98B8E8428 ON users (created_at)'); + $this->addSql('CREATE INDEX IDX_1483A5E9AA163775 ON users (last_updated_at)'); + $this->addSql('COMMENT ON COLUMN users.id IS \'(DC2Type:uuid)\''); + $this->addSql('COMMENT ON COLUMN users.created_by IS \'(DC2Type:uuid)\''); + $this->addSql('COMMENT ON COLUMN users.last_updated_by IS \'(DC2Type:uuid)\''); + $this->addSql('COMMENT ON COLUMN users.permissions_id IS \'(DC2Type:uuid)\''); + $this->addSql('COMMENT ON COLUMN users.created_at IS \'(DC2Type:datetimetz_immutable)\''); + $this->addSql('COMMENT ON COLUMN users.last_updated_at IS \'(DC2Type:datetimetz_immutable)\''); + $this->addSql('CREATE TABLE sessions (sess_id VARCHAR(128) NOT NULL, sess_data BYTEA NOT NULL, sess_lifetime INT NOT NULL, sess_time INT NOT NULL, PRIMARY KEY(sess_id))'); + $this->addSql('CREATE INDEX sess_lifetime_idx ON sessions (sess_lifetime)'); + $this->addSql('ALTER TABLE dlc ADD CONSTRAINT FK_AD6CAEA7DE12AB56 FOREIGN KEY (created_by) REFERENCES users (id) NOT DEFERRABLE INITIALLY IMMEDIATE'); + $this->addSql('ALTER TABLE dlc ADD CONSTRAINT FK_AD6CAEA7FF8A180B FOREIGN KEY (last_updated_by) REFERENCES users (id) NOT DEFERRABLE INITIALLY IMMEDIATE'); + $this->addSql('ALTER TABLE mod_groups ADD CONSTRAINT FK_84DA060FDE12AB56 FOREIGN KEY (created_by) REFERENCES users (id) NOT DEFERRABLE INITIALLY IMMEDIATE'); + $this->addSql('ALTER TABLE mod_groups ADD CONSTRAINT FK_84DA060FFF8A180B FOREIGN KEY (last_updated_by) REFERENCES users (id) NOT DEFERRABLE INITIALLY IMMEDIATE'); + $this->addSql('ALTER TABLE mod_group_to_mods ADD CONSTRAINT FK_AB46414CE095E5F4 FOREIGN KEY (mod_group_id) REFERENCES mod_groups (id) ON DELETE CASCADE NOT DEFERRABLE INITIALLY IMMEDIATE'); + $this->addSql('ALTER TABLE mod_group_to_mods ADD CONSTRAINT FK_AB46414C338E21CD FOREIGN KEY (mod_id) REFERENCES mods (id) ON DELETE CASCADE NOT DEFERRABLE INITIALLY IMMEDIATE'); + $this->addSql('ALTER TABLE mod_lists ADD CONSTRAINT FK_ECB7A26DE12AB56 FOREIGN KEY (created_by) REFERENCES users (id) NOT DEFERRABLE INITIALLY IMMEDIATE'); + $this->addSql('ALTER TABLE mod_lists ADD CONSTRAINT FK_ECB7A26FF8A180B FOREIGN KEY (last_updated_by) REFERENCES users (id) NOT DEFERRABLE INITIALLY IMMEDIATE'); + $this->addSql('ALTER TABLE mod_lists ADD CONSTRAINT FK_ECB7A267E3C61F9 FOREIGN KEY (owner_id) REFERENCES users (id) NOT DEFERRABLE INITIALLY IMMEDIATE'); + $this->addSql('ALTER TABLE mod_lists_to_mods ADD CONSTRAINT FK_43A6B6EAFD60CD19 FOREIGN KEY (mod_list_id) REFERENCES mod_lists (id) ON DELETE CASCADE NOT DEFERRABLE INITIALLY IMMEDIATE'); + $this->addSql('ALTER TABLE mod_lists_to_mods ADD CONSTRAINT FK_43A6B6EA338E21CD FOREIGN KEY (mod_id) REFERENCES mods (id) ON DELETE CASCADE NOT DEFERRABLE INITIALLY IMMEDIATE'); + $this->addSql('ALTER TABLE mod_lists_to_mod_groups ADD CONSTRAINT FK_CAF4DA88FD60CD19 FOREIGN KEY (mod_list_id) REFERENCES mod_lists (id) ON DELETE CASCADE NOT DEFERRABLE INITIALLY IMMEDIATE'); + $this->addSql('ALTER TABLE mod_lists_to_mod_groups ADD CONSTRAINT FK_CAF4DA88E095E5F4 FOREIGN KEY (mod_group_id) REFERENCES mod_groups (id) ON DELETE CASCADE NOT DEFERRABLE INITIALLY IMMEDIATE'); + $this->addSql('ALTER TABLE mod_lists_to_dlcs ADD CONSTRAINT FK_73A9D1FEFD60CD19 FOREIGN KEY (mod_list_id) REFERENCES mod_lists (id) ON DELETE CASCADE NOT DEFERRABLE INITIALLY IMMEDIATE'); + $this->addSql('ALTER TABLE mod_lists_to_dlcs ADD CONSTRAINT FK_73A9D1FECEF6326C FOREIGN KEY (dlc_id) REFERENCES dlc (id) ON DELETE CASCADE NOT DEFERRABLE INITIALLY IMMEDIATE'); + $this->addSql('ALTER TABLE mods ADD CONSTRAINT FK_631EF2FADE12AB56 FOREIGN KEY (created_by) REFERENCES users (id) NOT DEFERRABLE INITIALLY IMMEDIATE'); + $this->addSql('ALTER TABLE mods ADD CONSTRAINT FK_631EF2FAFF8A180B FOREIGN KEY (last_updated_by) REFERENCES users (id) NOT DEFERRABLE INITIALLY IMMEDIATE'); + $this->addSql('ALTER TABLE permissions ADD CONSTRAINT FK_2DEDCC6FDE12AB56 FOREIGN KEY (created_by) REFERENCES users (id) NOT DEFERRABLE INITIALLY IMMEDIATE'); + $this->addSql('ALTER TABLE permissions ADD CONSTRAINT FK_2DEDCC6FFF8A180B FOREIGN KEY (last_updated_by) REFERENCES users (id) NOT DEFERRABLE INITIALLY IMMEDIATE'); + $this->addSql('ALTER TABLE user_group ADD CONSTRAINT FK_8F02BF9DDE12AB56 FOREIGN KEY (created_by) REFERENCES users (id) NOT DEFERRABLE INITIALLY IMMEDIATE'); + $this->addSql('ALTER TABLE user_group ADD CONSTRAINT FK_8F02BF9DFF8A180B FOREIGN KEY (last_updated_by) REFERENCES users (id) NOT DEFERRABLE INITIALLY IMMEDIATE'); + $this->addSql('ALTER TABLE user_group ADD CONSTRAINT FK_8F02BF9D9C3E4F87 FOREIGN KEY (permissions_id) REFERENCES permissions (id) NOT DEFERRABLE INITIALLY IMMEDIATE'); + $this->addSql('ALTER TABLE user_groups_to_users ADD CONSTRAINT FK_B67102891ED93D47 FOREIGN KEY (user_group_id) REFERENCES user_group (id) NOT DEFERRABLE INITIALLY IMMEDIATE'); + $this->addSql('ALTER TABLE user_groups_to_users ADD CONSTRAINT FK_B6710289A76ED395 FOREIGN KEY (user_id) REFERENCES users (id) NOT DEFERRABLE INITIALLY IMMEDIATE'); + $this->addSql('ALTER TABLE users ADD CONSTRAINT FK_1483A5E9DE12AB56 FOREIGN KEY (created_by) REFERENCES users (id) NOT DEFERRABLE INITIALLY IMMEDIATE'); + $this->addSql('ALTER TABLE users ADD CONSTRAINT FK_1483A5E9FF8A180B FOREIGN KEY (last_updated_by) REFERENCES users (id) NOT DEFERRABLE INITIALLY IMMEDIATE'); + $this->addSql('ALTER TABLE users ADD CONSTRAINT FK_1483A5E99C3E4F87 FOREIGN KEY (permissions_id) REFERENCES permissions (id) NOT DEFERRABLE INITIALLY IMMEDIATE'); + } + + public function down(Schema $schema): void + { + // this down() migration is auto-generated, please modify it to your needs + $this->addSql('ALTER TABLE dlc DROP CONSTRAINT FK_AD6CAEA7DE12AB56'); + $this->addSql('ALTER TABLE dlc DROP CONSTRAINT FK_AD6CAEA7FF8A180B'); + $this->addSql('ALTER TABLE mod_groups DROP CONSTRAINT FK_84DA060FDE12AB56'); + $this->addSql('ALTER TABLE mod_groups DROP CONSTRAINT FK_84DA060FFF8A180B'); + $this->addSql('ALTER TABLE mod_group_to_mods DROP CONSTRAINT FK_AB46414CE095E5F4'); + $this->addSql('ALTER TABLE mod_group_to_mods DROP CONSTRAINT FK_AB46414C338E21CD'); + $this->addSql('ALTER TABLE mod_lists DROP CONSTRAINT FK_ECB7A26DE12AB56'); + $this->addSql('ALTER TABLE mod_lists DROP CONSTRAINT FK_ECB7A26FF8A180B'); + $this->addSql('ALTER TABLE mod_lists DROP CONSTRAINT FK_ECB7A267E3C61F9'); + $this->addSql('ALTER TABLE mod_lists_to_mods DROP CONSTRAINT FK_43A6B6EAFD60CD19'); + $this->addSql('ALTER TABLE mod_lists_to_mods DROP CONSTRAINT FK_43A6B6EA338E21CD'); + $this->addSql('ALTER TABLE mod_lists_to_mod_groups DROP CONSTRAINT FK_CAF4DA88FD60CD19'); + $this->addSql('ALTER TABLE mod_lists_to_mod_groups DROP CONSTRAINT FK_CAF4DA88E095E5F4'); + $this->addSql('ALTER TABLE mod_lists_to_dlcs DROP CONSTRAINT FK_73A9D1FEFD60CD19'); + $this->addSql('ALTER TABLE mod_lists_to_dlcs DROP CONSTRAINT FK_73A9D1FECEF6326C'); + $this->addSql('ALTER TABLE mods DROP CONSTRAINT FK_631EF2FADE12AB56'); + $this->addSql('ALTER TABLE mods DROP CONSTRAINT FK_631EF2FAFF8A180B'); + $this->addSql('ALTER TABLE permissions DROP CONSTRAINT FK_2DEDCC6FDE12AB56'); + $this->addSql('ALTER TABLE permissions DROP CONSTRAINT FK_2DEDCC6FFF8A180B'); + $this->addSql('ALTER TABLE user_group DROP CONSTRAINT FK_8F02BF9DDE12AB56'); + $this->addSql('ALTER TABLE user_group DROP CONSTRAINT FK_8F02BF9DFF8A180B'); + $this->addSql('ALTER TABLE user_group DROP CONSTRAINT FK_8F02BF9D9C3E4F87'); + $this->addSql('ALTER TABLE user_groups_to_users DROP CONSTRAINT FK_B67102891ED93D47'); + $this->addSql('ALTER TABLE user_groups_to_users DROP CONSTRAINT FK_B6710289A76ED395'); + $this->addSql('ALTER TABLE users DROP CONSTRAINT FK_1483A5E9DE12AB56'); + $this->addSql('ALTER TABLE users DROP CONSTRAINT FK_1483A5E9FF8A180B'); + $this->addSql('ALTER TABLE users DROP CONSTRAINT FK_1483A5E99C3E4F87'); + $this->addSql('DROP TABLE attendances'); + $this->addSql('DROP TABLE dlc'); + $this->addSql('DROP TABLE mod_groups'); + $this->addSql('DROP TABLE mod_group_to_mods'); + $this->addSql('DROP TABLE mod_lists'); + $this->addSql('DROP TABLE mod_lists_to_mods'); + $this->addSql('DROP TABLE mod_lists_to_mod_groups'); + $this->addSql('DROP TABLE mod_lists_to_dlcs'); + $this->addSql('DROP TABLE mods'); + $this->addSql('DROP TABLE permissions'); + $this->addSql('DROP TABLE user_group'); + $this->addSql('DROP TABLE user_groups_to_users'); + $this->addSql('DROP TABLE users'); + $this->addSql('DROP TABLE sessions'); + } +} diff --git a/tests/functional/Api/Controller/ModList/GetModListByNameActionTest.php b/tests/functional/Api/Controller/ModList/GetModListByNameActionTest.php index 24a9c3b3..2a64f87a 100644 --- a/tests/functional/Api/Controller/ModList/GetModListByNameActionTest.php +++ b/tests/functional/Api/Controller/ModList/GetModListByNameActionTest.php @@ -54,24 +54,6 @@ public function getModListByNameAction_authorizedUser_returnsSuccessfulResponse( 'active' => true, 'approved' => false, 'mods' => [ - [ - 'id' => '7e11c37e-930e-49e8-a87d-8f942d98edb0', - 'name' => '[legacy] ArmaForces - Mods', - 'source' => 'steam_workshop', - 'status' => 'deprecated', - 'type' => 'required', - 'itemId' => 1639399387, - 'directory' => null, - ], - [ - 'id' => 'b8e88103-69d2-438b-8d89-933ccfdb3a5a', - 'name' => '[OBSOLETE] ArmaForces - JBAD Building Fix', - 'source' => 'steam_workshop', - 'status' => 'disabled', - 'type' => 'required', - 'itemId' => 1781106281, - 'directory' => null, - ], [ 'id' => '37f58e30-5194-4594-89af-4a82c7fc02be', 'name' => 'ACE Interaction Menu Expansion', @@ -99,6 +81,24 @@ public function getModListByNameAction_authorizedUser_returnsSuccessfulResponse( 'itemId' => 1934142795, 'directory' => null, ], + [ + 'id' => 'b8e88103-69d2-438b-8d89-933ccfdb3a5a', + 'name' => '[OBSOLETE] ArmaForces - JBAD Building Fix', + 'source' => 'steam_workshop', + 'status' => 'disabled', + 'type' => 'required', + 'itemId' => 1781106281, + 'directory' => null, + ], + [ + 'id' => '7e11c37e-930e-49e8-a87d-8f942d98edb0', + 'name' => '[legacy] ArmaForces - Mods', + 'source' => 'steam_workshop', + 'status' => 'deprecated', + 'type' => 'required', + 'itemId' => 1639399387, + 'directory' => null, + ], ], ]); } diff --git a/tests/functional/Api/Controller/ModList/GetModListsByIdActionTest.php b/tests/functional/Api/Controller/ModList/GetModListsByIdActionTest.php index 91c2a3d1..54bf0b3d 100644 --- a/tests/functional/Api/Controller/ModList/GetModListsByIdActionTest.php +++ b/tests/functional/Api/Controller/ModList/GetModListsByIdActionTest.php @@ -55,24 +55,6 @@ public function getModListByIdAction_authorizedUser_returnsSuccessfulResponse(st 'active' => true, 'approved' => false, 'mods' => [ - [ - 'id' => '7e11c37e-930e-49e8-a87d-8f942d98edb0', - 'name' => '[legacy] ArmaForces - Mods', - 'source' => 'steam_workshop', - 'status' => 'deprecated', - 'type' => 'required', - 'itemId' => 1639399387, - 'directory' => null, - ], - [ - 'id' => 'b8e88103-69d2-438b-8d89-933ccfdb3a5a', - 'name' => '[OBSOLETE] ArmaForces - JBAD Building Fix', - 'source' => 'steam_workshop', - 'status' => 'disabled', - 'type' => 'required', - 'itemId' => 1781106281, - 'directory' => null, - ], [ 'id' => '37f58e30-5194-4594-89af-4a82c7fc02be', 'name' => 'ACE Interaction Menu Expansion', @@ -100,6 +82,24 @@ public function getModListByIdAction_authorizedUser_returnsSuccessfulResponse(st 'itemId' => 1934142795, 'directory' => null, ], + [ + 'id' => 'b8e88103-69d2-438b-8d89-933ccfdb3a5a', + 'name' => '[OBSOLETE] ArmaForces - JBAD Building Fix', + 'source' => 'steam_workshop', + 'status' => 'disabled', + 'type' => 'required', + 'itemId' => 1781106281, + 'directory' => null, + ], + [ + 'id' => '7e11c37e-930e-49e8-a87d-8f942d98edb0', + 'name' => '[legacy] ArmaForces - Mods', + 'source' => 'steam_workshop', + 'status' => 'deprecated', + 'type' => 'required', + 'itemId' => 1639399387, + 'directory' => null, + ], ], ]); } diff --git a/tests/functional/Controller/ModListPublic/DownloadActionTest.php b/tests/functional/Controller/ModListPublic/DownloadActionTest.php index 45555554..1d40e437 100644 --- a/tests/functional/Controller/ModListPublic/DownloadActionTest.php +++ b/tests/functional/Controller/ModListPublic/DownloadActionTest.php @@ -61,10 +61,10 @@ public function downloadAction_optionalMods_returnsFileResponse(string $userId): $this::assertResponseStatusCodeSame(Response::HTTP_OK); $this::assertResponseContainsModListAttachmentHeader($this->client->getResponse(), $subjectModList); $this::assertLauncherPresetContainsMods($crawler, [ - $this->steamWorkshopModRepository->find(Required\Deprecated\LegacyArmaForcesModsModFixture::ID), $this->steamWorkshopModRepository->find(Optional\AceInteractionMenuExpansionModFixture::ID), $this->steamWorkshopModRepository->find(Required\Broken\ArmaForcesAceMedicalModFixture::ID), $this->steamWorkshopModRepository->find(Required\ArmaForcesModsModFixture::ID), + $this->steamWorkshopModRepository->find(Required\Deprecated\LegacyArmaForcesModsModFixture::ID), ]); } @@ -83,9 +83,9 @@ public function downloadAction_requiredMods_returnsFileResponse(string $userId): $this::assertResponseStatusCodeSame(Response::HTTP_OK); $this::assertResponseContainsModListAttachmentHeader($this->client->getResponse(), $subjectModList); $this::assertLauncherPresetContainsMods($crawler, [ - $this->steamWorkshopModRepository->find(Required\Deprecated\LegacyArmaForcesModsModFixture::ID), $this->steamWorkshopModRepository->find(Required\Broken\ArmaForcesAceMedicalModFixture::ID), $this->steamWorkshopModRepository->find(Required\ArmaForcesModsModFixture::ID), + $this->steamWorkshopModRepository->find(Required\Deprecated\LegacyArmaForcesModsModFixture::ID), ]); }