blufin 0.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (113) hide show
  1. checksums.yaml +7 -0
  2. data/bin/bf +5 -0
  3. data/bin/blufin +5 -0
  4. data/lib/blufin.rb +245 -0
  5. data/lib/core/code_scanners/common/scanner_common.rb +83 -0
  6. data/lib/core/code_scanners/common/scanner_java.rb +106 -0
  7. data/lib/core/code_scanners/scanner_java_embedded_objects.rb +386 -0
  8. data/lib/core/code_scanners/scanner_java_enums.rb +125 -0
  9. data/lib/core/code_scanners/scanner_java_source.rb +29 -0
  10. data/lib/core/code_scanners/scanner_java_tests.rb +157 -0
  11. data/lib/core/error_handling/schema_error.rb +9 -0
  12. data/lib/core/error_handling/sql_error.rb +21 -0
  13. data/lib/core/error_handling/sql_error_handler.rb +149 -0
  14. data/lib/core/error_handling/yml_error.rb +21 -0
  15. data/lib/core/error_handling/yml_error_handler.rb +437 -0
  16. data/lib/core/mysql.rb +347 -0
  17. data/lib/core/opt.rb +21 -0
  18. data/lib/core/site/site.rb +26 -0
  19. data/lib/core/site/site_auth.rb +88 -0
  20. data/lib/core/site/site_embedded.rb +27 -0
  21. data/lib/core/site/site_ports.rb +9 -0
  22. data/lib/core/site/site_resolver.rb +276 -0
  23. data/lib/core/site/site_services.rb +162 -0
  24. data/lib/core/site/site_ui.rb +16 -0
  25. data/lib/core/yml/config/yml_config_validator.rb +219 -0
  26. data/lib/core/yml/maven/yml_maven_validator.rb +1132 -0
  27. data/lib/core/yml/resource/yml_resource_validator.rb +154 -0
  28. data/lib/core/yml/schema/yml_schema_flags.rb +9 -0
  29. data/lib/core/yml/schema/yml_schema_validator.rb +1850 -0
  30. data/lib/core/yml/yml_cache_handler.rb +115 -0
  31. data/lib/core/yml/yml_common.rb +487 -0
  32. data/lib/core/yml/yml_meta_writer_base.rb +300 -0
  33. data/lib/core/yml/yml_outputter.rb +307 -0
  34. data/lib/core/yml/yml_validator_base.rb +630 -0
  35. data/lib/core/yml_writers/yml_configuration_writer.rb +40 -0
  36. data/lib/core/yml_writers/yml_java_api_resource_writer.rb +348 -0
  37. data/lib/core/yml_writers/yml_java_cron_type_writer.rb +113 -0
  38. data/lib/core/yml_writers/yml_java_css_dependency_writer.rb +59 -0
  39. data/lib/core/yml_writers/yml_java_dao_writer.rb +364 -0
  40. data/lib/core/yml_writers/yml_java_dto_writer.rb +251 -0
  41. data/lib/core/yml_writers/yml_java_embedded_object_writer.rb +968 -0
  42. data/lib/core/yml_writers/yml_java_enum_writer.rb +161 -0
  43. data/lib/core/yml_writers/yml_java_js_dependency_writer.rb +59 -0
  44. data/lib/core/yml_writers/yml_java_message_type_writer.rb +106 -0
  45. data/lib/core/yml_writers/yml_java_meta_writer.rb +173 -0
  46. data/lib/core/yml_writers/yml_java_model_writer.rb +510 -0
  47. data/lib/core/yml_writers/yml_java_pom_writer.rb +1050 -0
  48. data/lib/core/yml_writers/yml_java_resource_data_writer.rb +251 -0
  49. data/lib/core/yml_writers/yml_java_sdk_writer.rb +732 -0
  50. data/lib/core/yml_writers/yml_java_validator_writer.rb +280 -0
  51. data/lib/core/yml_writers/yml_java_worker_writer.rb +81 -0
  52. data/lib/core/yml_writers/yml_sql_structure_writer.rb +307 -0
  53. data/lib/core/yml_writers/yml_sql_template_writer.rb +243 -0
  54. data/lib/core/yml_writers/yml_vue_service_writer.rb +170 -0
  55. data/lib/core/yml_writers/yml_writer_base.rb +114 -0
  56. data/lib/routes/api_list.rb +35 -0
  57. data/lib/routes/api_meta.rb +59 -0
  58. data/lib/routes/build.rb +46 -0
  59. data/lib/routes/create/create_api.rb +35 -0
  60. data/lib/routes/create/create_ui.rb +84 -0
  61. data/lib/routes/export.rb +56 -0
  62. data/lib/routes/generate/generate_api.rb +225 -0
  63. data/lib/routes/generate/generate_img_favicon.rb +56 -0
  64. data/lib/routes/generate/generate_img_landing.rb +94 -0
  65. data/lib/routes/generate/generate_lambda.rb +43 -0
  66. data/lib/routes/lint.rb +35 -0
  67. data/lib/routes/mysql_reset.rb +43 -0
  68. data/lib/routes/release_blufin.rb +351 -0
  69. data/lib/routes/run.rb +35 -0
  70. data/lib/version.rb +1 -0
  71. data/opt/README.MD +2 -0
  72. data/opt/config/schema.yml +73 -0
  73. data/opt/config/template.yml +25 -0
  74. data/opt/sql/data/config/data-client.sql +7 -0
  75. data/opt/sql/data/config/data-db-configuration-property.sql +47 -0
  76. data/opt/sql/data/config/data-db-configuration.sql +9 -0
  77. data/opt/sql/data/config/data-db.sql +175 -0
  78. data/opt/sql/data/config/data-profile-api.sql +47 -0
  79. data/opt/sql/data/config/data-profile-cron.sql +0 -0
  80. data/opt/sql/data/config/data-profile-worker.sql +0 -0
  81. data/opt/sql/data/config/data-profile.sql +87 -0
  82. data/opt/sql/data/config/data-project.sql +95 -0
  83. data/opt/sql/structure/blufin-master-structure-fks.sql +65 -0
  84. data/opt/sql/structure/blufin-master-structure.sql +97 -0
  85. data/opt/sql/structure/blufin-mock-structure-fks.sql +38 -0
  86. data/opt/sql/structure/blufin-mock-structure.sql +98 -0
  87. data/opt/sql/templates/config/template-client.sql +7 -0
  88. data/opt/sql/templates/config/template-db-configuration-property.sql +11 -0
  89. data/opt/sql/templates/config/template-db-configuration.sql +9 -0
  90. data/opt/sql/templates/config/template-db.sql +21 -0
  91. data/opt/sql/templates/config/template-profile-api.sql +11 -0
  92. data/opt/sql/templates/config/template-profile-cron.sql +7 -0
  93. data/opt/sql/templates/config/template-profile-worker.sql +7 -0
  94. data/opt/sql/templates/config/template-profile.sql +21 -0
  95. data/opt/sql/templates/config/template-project.sql +23 -0
  96. data/opt/yml/api/schema/config/client.yml +14 -0
  97. data/opt/yml/api/schema/config/db.yml +45 -0
  98. data/opt/yml/api/schema/config/db_configuration.yml +22 -0
  99. data/opt/yml/api/schema/config/db_configuration_property.yml +22 -0
  100. data/opt/yml/api/schema/config/profile.yml +53 -0
  101. data/opt/yml/api/schema/config/profile_api.yml +22 -0
  102. data/opt/yml/api/schema/config/profile_cron.yml +14 -0
  103. data/opt/yml/api/schema/config/profile_worker.yml +14 -0
  104. data/opt/yml/api/schema/config/project.yml +48 -0
  105. data/opt/yml/api/schema/mock/mock.yml +99 -0
  106. data/opt/yml/api/schema/mock/mock_nested_if_enum.yml +16 -0
  107. data/opt/yml/api/schema/mock/mock_nested_if_enum_system.yml +16 -0
  108. data/opt/yml/api/schema/mock/mock_nested_linked.yml +43 -0
  109. data/opt/yml/api/schema/mock/mock_nested_multiple.yml +61 -0
  110. data/opt/yml/api/schema/mock/mock_nested_single.yml +67 -0
  111. data/opt/yml/api/schema/mock/mock_nested_single_super_deep.yml +32 -0
  112. data/opt/yml/api/schema/mock/mock_nested_single_super_super_deep.yml +17 -0
  113. metadata +240 -0
@@ -0,0 +1,95 @@
1
+ INSERT IGNORE INTO `blufin-master`.project (
2
+ `id`,
3
+ `client_id`, -- FK: config.client.id
4
+ `project_name`,
5
+ `project_name_pascal_case`,
6
+ `project_title`,
7
+ `domain`,
8
+ `alias`,
9
+ `port_range`,
10
+ `encryption_key`,
11
+ `encryption_iv`
12
+ ) VALUES (
13
+ 1,
14
+ 1, -- FK: config.client.id
15
+ 'skybutler',
16
+ 'SkyButler',
17
+ 'SkyButler',
18
+ 'io',
19
+ 'skb',
20
+ '6000-6019',
21
+ '2d@$''D2W~?hCvA[X',
22
+ 'M$F)BB5%+VGtZ[<8'
23
+ );
24
+
25
+ INSERT IGNORE INTO `blufin-master`.project (
26
+ `id`,
27
+ `client_id`, -- FK: config.client.id
28
+ `project_name`,
29
+ `project_name_pascal_case`,
30
+ `project_title`,
31
+ `domain`,
32
+ `alias`,
33
+ `port_range`,
34
+ `encryption_key`,
35
+ `encryption_iv`
36
+ ) VALUES (
37
+ 2,
38
+ 1, -- FK: config.client.id
39
+ 'go-eat',
40
+ 'GoEat',
41
+ 'Go-EAT',
42
+ 'app',
43
+ 'ge',
44
+ '6020-6039',
45
+ '2d@$''D2W~?hCvA[X',
46
+ 'M$F)BB5%+VGtZ[<8'
47
+ );
48
+
49
+ INSERT IGNORE INTO `blufin-master`.project (
50
+ `id`,
51
+ `client_id`, -- FK: config.client.id
52
+ `project_name`,
53
+ `project_name_pascal_case`,
54
+ `project_title`,
55
+ `domain`,
56
+ `alias`,
57
+ `port_range`,
58
+ `encryption_key`,
59
+ `encryption_iv`
60
+ ) VALUES (
61
+ 3,
62
+ 1, -- FK: config.client.id
63
+ 'taskbot',
64
+ 'TaskBot',
65
+ 'TaskBot',
66
+ 'com.rannetsperger',
67
+ 'tb',
68
+ '6040-6059',
69
+ '2d@$''D2W~?hCvA[X',
70
+ 'M$F)BB5%+VGtZ[<8'
71
+ );
72
+
73
+ INSERT IGNORE INTO `blufin-master`.project (
74
+ `id`,
75
+ `client_id`, -- FK: config.client.id
76
+ `project_name`,
77
+ `project_name_pascal_case`,
78
+ `project_title`,
79
+ `domain`,
80
+ `alias`,
81
+ `port_range`,
82
+ `encryption_key`,
83
+ `encryption_iv`
84
+ ) VALUES (
85
+ 4,
86
+ 1, -- FK: config.client.id
87
+ 'blufin-labs',
88
+ 'BlufinLabs',
89
+ 'Blufin Labs',
90
+ 'org',
91
+ 'bf',
92
+ '6060-6079',
93
+ '2d@$''D2W~?hCvA[X',
94
+ 'M$F)BB5%+VGtZ[<8'
95
+ );
@@ -0,0 +1,65 @@
1
+ -- Add db FKs
2
+ ALTER TABLE `db`
3
+ ADD CONSTRAINT `fk_1`
4
+ FOREIGN KEY (`project_id`)
5
+ REFERENCES `project` (`id`)
6
+ ON DELETE RESTRICT
7
+ ON UPDATE CASCADE;
8
+
9
+ -- Add db_configuration_property FKs
10
+ ALTER TABLE `db_configuration_property`
11
+ ADD CONSTRAINT `fk_2`
12
+ FOREIGN KEY (`db_configuration_id`)
13
+ REFERENCES `db_configuration` (`id`)
14
+ ON DELETE RESTRICT
15
+ ON UPDATE CASCADE;
16
+
17
+ -- Add profile FKs
18
+ ALTER TABLE `profile`
19
+ ADD CONSTRAINT `fk_3`
20
+ FOREIGN KEY (`project_id`)
21
+ REFERENCES `project` (`id`)
22
+ ON DELETE RESTRICT
23
+ ON UPDATE CASCADE;
24
+
25
+ -- Add profile_api FKs
26
+ ALTER TABLE `profile_api`
27
+ ADD CONSTRAINT `fk_4`
28
+ FOREIGN KEY (`profile_id`)
29
+ REFERENCES `profile` (`id`)
30
+ ON DELETE RESTRICT
31
+ ON UPDATE CASCADE,
32
+ ADD CONSTRAINT `fk_5`
33
+ FOREIGN KEY (`common_db_id`)
34
+ REFERENCES `db` (`id`)
35
+ ON DELETE RESTRICT
36
+ ON UPDATE CASCADE,
37
+ ADD CONSTRAINT `fk_6`
38
+ FOREIGN KEY (`common_db_configuration_id`)
39
+ REFERENCES `db_configuration` (`id`)
40
+ ON DELETE RESTRICT
41
+ ON UPDATE CASCADE;
42
+
43
+ -- Add profile_cron FKs
44
+ ALTER TABLE `profile_cron`
45
+ ADD CONSTRAINT `fk_7`
46
+ FOREIGN KEY (`profile_id`)
47
+ REFERENCES `profile` (`id`)
48
+ ON DELETE RESTRICT
49
+ ON UPDATE CASCADE;
50
+
51
+ -- Add profile_worker FKs
52
+ ALTER TABLE `profile_worker`
53
+ ADD CONSTRAINT `fk_8`
54
+ FOREIGN KEY (`profile_id`)
55
+ REFERENCES `profile` (`id`)
56
+ ON DELETE RESTRICT
57
+ ON UPDATE CASCADE;
58
+
59
+ -- Add project FKs
60
+ ALTER TABLE `project`
61
+ ADD CONSTRAINT `fk_9`
62
+ FOREIGN KEY (`client_id`)
63
+ REFERENCES `client` (`id`)
64
+ ON DELETE RESTRICT
65
+ ON UPDATE CASCADE;
@@ -0,0 +1,97 @@
1
+ -- Create client table
2
+ CREATE TABLE `client` (
3
+ `id` INT NOT NULL AUTO_INCREMENT,
4
+ `client_name` VARCHAR(64) NOT NULL,
5
+ PRIMARY KEY (`id`),
6
+ UNIQUE INDEX `config_client_client_name_uniq_idx` (`client_name`)
7
+ ) ENGINE = InnoDB;
8
+
9
+ -- Create db table
10
+ CREATE TABLE `db` (
11
+ `id` INT NOT NULL AUTO_INCREMENT,
12
+ `project_id` INT NULL,
13
+ `db_name` VARCHAR(32) NOT NULL COMMENT 'The name for the database as displayed by our internal systems.',
14
+ `host` VARCHAR(255) NOT NULL COMMENT 'The URL of the server (through SSH connection -- IE: username.abc123.eu-west-1.rds.amazonaws.com ).',
15
+ `user` TEXT NOT NULL COMMENT 'The username used to connect to the server.',
16
+ `password` TEXT NOT NULL COMMENT 'The password used to connect to the server.',
17
+ `environment` VARCHAR(11) NOT NULL COMMENT 'The environment for which this database will apply to.',
18
+ `schema_type` VARCHAR(6) NOT NULL COMMENT 'The schema type (IE: config, common or app).',
19
+ `jdbc_url` VARCHAR(255) NOT NULL COMMENT 'The URL of the server (through Java JDBC connection -- IE: jdbc:mysql://abc123.com:3306 ).',
20
+ PRIMARY KEY (`id`),
21
+ UNIQUE INDEX `config_db_db_name_uniq_idx` (`db_name`),
22
+ INDEX `config_db_environment_idx` (`environment`)
23
+ ) ENGINE = InnoDB;
24
+
25
+ -- Create db_configuration table
26
+ CREATE TABLE `db_configuration` (
27
+ `id` INT NOT NULL AUTO_INCREMENT,
28
+ `db_configuration_name` VARCHAR(32) NOT NULL COMMENT 'The name for this configuration.',
29
+ `pool_max_size` INT NOT NULL COMMENT 'The maximum size of the connection pool.',
30
+ PRIMARY KEY (`id`),
31
+ UNIQUE INDEX `config_db_configuration_db_configuration_name_uniq_idx` (`db_configuration_name`)
32
+ ) ENGINE = InnoDB;
33
+
34
+ -- Create db_configuration_property table
35
+ CREATE TABLE `db_configuration_property` (
36
+ `id` INT NOT NULL AUTO_INCREMENT,
37
+ `db_configuration_id` INT NOT NULL,
38
+ `key` VARCHAR(64) NOT NULL COMMENT 'Database property key (IE: charSet)',
39
+ `value` VARCHAR(128) NOT NULL COMMENT 'Database property value (IE: UTF-8)',
40
+ PRIMARY KEY (`id`)
41
+ ) ENGINE = InnoDB;
42
+
43
+ -- Create profile table
44
+ CREATE TABLE `profile` (
45
+ `id` INT NOT NULL AUTO_INCREMENT,
46
+ `project_id` INT NOT NULL,
47
+ `profile_name` VARCHAR(32) NOT NULL COMMENT 'The name of the profile (IE: localhost, us-west-1, etc.)',
48
+ `environment` VARCHAR(11) NOT NULL COMMENT 'The environment in which the application will run under this profile.',
49
+ `timezone` VARCHAR(64) NOT NULL COMMENT 'The timezone in which associated application will run.',
50
+ `message_queue_host` VARCHAR(255) NOT NULL COMMENT 'The message queue URL.',
51
+ `slack_log_url` VARCHAR(255) NOT NULL COMMENT 'The Slack Log channel webhook URL.',
52
+ `slack_error_url` VARCHAR(255) NOT NULL COMMENT 'The Slack Error channel webhook URL.',
53
+ `authorization_header` TEXT NOT NULL COMMENT 'The Authorization Header used for internal API calls.',
54
+ PRIMARY KEY (`id`),
55
+ INDEX `config_profile_profile_name_idx` (`profile_name`),
56
+ INDEX `config_profile_environment_idx` (`environment`)
57
+ ) ENGINE = InnoDB;
58
+
59
+ -- Create profile_api table
60
+ CREATE TABLE `profile_api` (
61
+ `id` INT NOT NULL AUTO_INCREMENT,
62
+ `profile_id` INT NOT NULL,
63
+ `common_db_id` INT NOT NULL,
64
+ `common_db_configuration_id` INT NOT NULL,
65
+ PRIMARY KEY (`id`)
66
+ ) ENGINE = InnoDB;
67
+
68
+ -- Create profile_cron table
69
+ CREATE TABLE `profile_cron` (
70
+ `id` INT NOT NULL AUTO_INCREMENT,
71
+ `profile_id` INT NOT NULL,
72
+ PRIMARY KEY (`id`)
73
+ ) ENGINE = InnoDB;
74
+
75
+ -- Create profile_worker table
76
+ CREATE TABLE `profile_worker` (
77
+ `id` INT NOT NULL AUTO_INCREMENT,
78
+ `profile_id` INT NOT NULL,
79
+ PRIMARY KEY (`id`)
80
+ ) ENGINE = InnoDB;
81
+
82
+ -- Create project table
83
+ CREATE TABLE `project` (
84
+ `id` INT NOT NULL AUTO_INCREMENT,
85
+ `client_id` INT NOT NULL,
86
+ `project_name` VARCHAR(64) NOT NULL COMMENT 'Must be all lowercase & hyphen separated (IE: go-eat)',
87
+ `project_name_pascal_case` VARCHAR(64) NOT NULL COMMENT 'Must be camel-cased (IE: GoEat)',
88
+ `project_title` VARCHAR(128) NOT NULL COMMENT 'The way you want the project title/name to be displayed in UIs (IE: Go-EAT)',
89
+ `domain` VARCHAR(128) NOT NULL COMMENT 'The domain where the project will be hosted (IE: com, co.uk, app). This combined with the {project:project_name:Project name} should make up the public URL.',
90
+ `alias` VARCHAR(8) NOT NULL COMMENT 'A short alias for the project, mainly for use in CLI commands (IE: ge)',
91
+ `port_range` VARCHAR(12) NOT NULL COMMENT 'Ports reserved for this project, must be in sections of 20 (IE: 6000-6019)',
92
+ `encryption_key` VARCHAR(64) NOT NULL COMMENT 'Encryption Key for encrypting/decrypting sensitive data. This can never change!',
93
+ `encryption_iv` VARCHAR(64) NOT NULL COMMENT 'Encryption IV for encrypting/decrypting sensitive data. This can never change!',
94
+ PRIMARY KEY (`id`),
95
+ UNIQUE INDEX `config_project_project_name_uniq_idx` (`project_name`),
96
+ UNIQUE INDEX `config_project_alias_uniq_idx` (`alias`)
97
+ ) ENGINE = InnoDB;
@@ -0,0 +1,38 @@
1
+ -- Add mock_nested_multiple FKs
2
+ ALTER TABLE `mock_nested_multiple`
3
+ ADD CONSTRAINT `fk_1`
4
+ FOREIGN KEY (`mock_id`)
5
+ REFERENCES `mock` (`id`)
6
+ ON DELETE RESTRICT
7
+ ON UPDATE CASCADE;
8
+
9
+ -- Add mock_nested_single FKs
10
+ ALTER TABLE `mock_nested_single`
11
+ ADD CONSTRAINT `fk_2`
12
+ FOREIGN KEY (`mock_id`)
13
+ REFERENCES `mock` (`id`)
14
+ ON DELETE RESTRICT
15
+ ON UPDATE CASCADE;
16
+
17
+ -- Add mock_nested_single_super_super_deep FKs
18
+ ALTER TABLE `mock_nested_single_super_super_deep`
19
+ ADD CONSTRAINT `fk_3`
20
+ FOREIGN KEY (`mock_nested_single_id`)
21
+ REFERENCES `mock_nested_single` (`id`)
22
+ ON DELETE RESTRICT
23
+ ON UPDATE CASCADE;
24
+
25
+ ALTER TABLE `mock_to_mock_nested_linked_link`
26
+ ADD INDEX `idx_1` (`mock_id` DESC),
27
+ ADD INDEX `idx_2` (`mock_nested_linked_id` DESC),
28
+ ADD UNIQUE INDEX `mock_to_mock_nested_linked_uniq_idx` (`mock_id` DESC, `mock_nested_linked_id` DESC),
29
+ ADD CONSTRAINT `fk_4`
30
+ FOREIGN KEY (`mock_id`)
31
+ REFERENCES `mock` (`id`)
32
+ ON DELETE RESTRICT
33
+ ON UPDATE RESTRICT,
34
+ ADD CONSTRAINT `fk_5`
35
+ FOREIGN KEY (`mock_nested_linked_id`)
36
+ REFERENCES `mock_nested_linked` (`id`)
37
+ ON DELETE RESTRICT
38
+ ON UPDATE RESTRICT;
@@ -0,0 +1,98 @@
1
+ -- Create mock table
2
+ CREATE TABLE `mock` (
3
+ `id` INT NOT NULL AUTO_INCREMENT,
4
+ `bool` TINYINT(1) NOT NULL DEFAULT '1',
5
+ `mock_date` DATE NOT NULL DEFAULT '0000-01-01',
6
+ `mock_datetime` DATETIME(3) NOT NULL DEFAULT '0000-01-01 00:00:00',
7
+ `decimal` DECIMAL(13,2) NOT NULL,
8
+ `enumeration` VARCHAR(9) NOT NULL COMMENT '[VALUE_ONE|VALUE_TWO]',
9
+ `integer` INT NOT NULL,
10
+ `integer_tiny` TINYINT NOT NULL,
11
+ `integer_small` SMALLINT NOT NULL,
12
+ `integer_big` BIGINT NOT NULL,
13
+ `text` TEXT NOT NULL COMMENT 'This is a text field.',
14
+ `text_long` LONGTEXT NOT NULL,
15
+ `text_encrypted` TEXT NOT NULL,
16
+ `varchar` VARCHAR(10) NULL,
17
+ PRIMARY KEY (`id`),
18
+ FULLTEXT `mock_mock_text_idx_fulltext` (`text`),
19
+ FULLTEXT `mock_mock_text_long_idx_fulltext` (`text_long`),
20
+ FULLTEXT `mock_mock_text_encrypted_idx_fulltext` (`text_encrypted`),
21
+ INDEX `mock_mock_enumeration_idx` (`enumeration`),
22
+ INDEX `mock_mock_integer_idx` (`integer`)
23
+ ) ENGINE = InnoDB;
24
+
25
+ -- Create mock_nested_linked table
26
+ CREATE TABLE `mock_nested_linked` (
27
+ `id` INT NOT NULL AUTO_INCREMENT,
28
+ `bool` TINYINT(1) NOT NULL DEFAULT '1',
29
+ `mock_date` DATE NOT NULL DEFAULT '0000-01-01',
30
+ `mock_datetime` DATETIME(3) NOT NULL DEFAULT '0000-01-01 00:00:00',
31
+ `decimal` DECIMAL(13,2) NOT NULL,
32
+ `integer` INT NOT NULL,
33
+ `integer_tiny` TINYINT NOT NULL,
34
+ `integer_small` SMALLINT NOT NULL,
35
+ `integer_big` BIGINT NOT NULL,
36
+ `text` TEXT NOT NULL,
37
+ `text_long` LONGTEXT NOT NULL,
38
+ `varchar` VARCHAR(10) NOT NULL,
39
+ PRIMARY KEY (`id`),
40
+ FULLTEXT `mock_mock_nested_linked_text_idx_fulltext` (`text`),
41
+ FULLTEXT `mock_mock_nested_linked_text_long_idx_fulltext` (`text_long`)
42
+ ) ENGINE = InnoDB;
43
+
44
+ -- Create mock_nested_multiple table
45
+ CREATE TABLE `mock_nested_multiple` (
46
+ `id` INT NOT NULL AUTO_INCREMENT,
47
+ `bool` TINYINT(1) NOT NULL DEFAULT '1',
48
+ `mock_id` INT NULL,
49
+ `mock_date` DATE NOT NULL DEFAULT '0000-01-01',
50
+ `mock_datetime` DATETIME(3) NOT NULL DEFAULT '0000-01-01 00:00:00',
51
+ `decimal` DECIMAL(13,2) NOT NULL,
52
+ `integer` INT NOT NULL,
53
+ `integer_tiny` TINYINT NOT NULL,
54
+ `integer_small` SMALLINT NOT NULL,
55
+ `integer_big` BIGINT NOT NULL,
56
+ `text` TEXT NOT NULL,
57
+ `text_long` LONGTEXT NOT NULL,
58
+ `varchar` VARCHAR(10) NOT NULL,
59
+ PRIMARY KEY (`id`),
60
+ FULLTEXT `mock_mock_nested_multiple_text_idx_fulltext` (`text`),
61
+ FULLTEXT `mock_mock_nested_multiple_text_long_idx_fulltext` (`text_long`)
62
+ ) ENGINE = InnoDB;
63
+
64
+ -- Create mock_nested_single table
65
+ CREATE TABLE `mock_nested_single` (
66
+ `id` INT NOT NULL AUTO_INCREMENT,
67
+ `bool` TINYINT(1) NOT NULL DEFAULT '1',
68
+ `mock_id` INT NULL,
69
+ `mock_date` DATE NOT NULL DEFAULT '0000-01-01',
70
+ `mock_datetime` DATETIME(3) NOT NULL DEFAULT '0000-01-01 00:00:00',
71
+ `decimal` DECIMAL(13,2) NOT NULL,
72
+ `integer` INT NOT NULL,
73
+ `integer_tiny` TINYINT NOT NULL,
74
+ `integer_small` SMALLINT NOT NULL,
75
+ `integer_big` BIGINT NOT NULL,
76
+ `text` TEXT NOT NULL,
77
+ `text_long` LONGTEXT NOT NULL,
78
+ `text_encrypted` TEXT NOT NULL,
79
+ `varchar` VARCHAR(10) NOT NULL,
80
+ `unique_field` VARCHAR(64) NOT NULL,
81
+ PRIMARY KEY (`id`),
82
+ FULLTEXT `mock_mock_nested_single_text_idx_fulltext` (`text`),
83
+ FULLTEXT `mock_mock_nested_single_text_long_idx_fulltext` (`text_long`),
84
+ FULLTEXT `mock_mock_nested_single_text_encrypted_idx_fulltext` (`text_encrypted`)
85
+ ) ENGINE = InnoDB;
86
+
87
+ -- Create mock_nested_single_super_super_deep table
88
+ CREATE TABLE `mock_nested_single_super_super_deep` (
89
+ `id` INT NOT NULL AUTO_INCREMENT,
90
+ `bool` TINYINT(1) NOT NULL DEFAULT '1',
91
+ `mock_nested_single_id` INT NULL,
92
+ PRIMARY KEY (`id`)
93
+ ) ENGINE = InnoDB;
94
+ -- Add table to link 'mock' with 'mock_nested_linked'
95
+ CREATE TABLE `mock_to_mock_nested_linked_link` (
96
+ `mock_id` INT NOT NULL,
97
+ `mock_nested_linked_id` INT NOT NULL
98
+ ) ENGINE = InnoDB;
@@ -0,0 +1,7 @@
1
+ INSERT IGNORE INTO `blufin-master`.client (
2
+ `id`,
3
+ `client_name`
4
+ ) VALUES (
5
+ 0,
6
+ 'CLIENT_NAME'
7
+ );
@@ -0,0 +1,11 @@
1
+ INSERT IGNORE INTO `blufin-master`.db_configuration_property (
2
+ `id`,
3
+ `db_configuration_id`, -- FK: config.db_configuration.id
4
+ `key`,
5
+ `value`
6
+ ) VALUES (
7
+ 0,
8
+ 0, -- FK: config.db_configuration.id
9
+ 'KEY',
10
+ 'VALUE'
11
+ );
@@ -0,0 +1,9 @@
1
+ INSERT IGNORE INTO `blufin-master`.db_configuration (
2
+ `id`,
3
+ `db_configuration_name`,
4
+ `pool_max_size`
5
+ ) VALUES (
6
+ 0,
7
+ 'DB_CONFIGURATION_NAME',
8
+ 0
9
+ );
@@ -0,0 +1,21 @@
1
+ INSERT IGNORE INTO `blufin-master`.db (
2
+ `id`,
3
+ `project_id`, -- FK: config.project.id
4
+ `db_name`,
5
+ `host`,
6
+ `user`,
7
+ `password`,
8
+ `environment`,
9
+ `schema_type`,
10
+ `jdbc_url`
11
+ ) VALUES (
12
+ 0,
13
+ 0, -- FK: config.project.id
14
+ 'DB_NAME',
15
+ 'HOST',
16
+ 'USER',
17
+ 'PASSWORD',
18
+ 'LOCAL|DEVELOPMENT|SANDBOX|STAGING|PRODUCTION',
19
+ 'APP|CONFIG|COMMON',
20
+ 'JDBC_URL'
21
+ );