legion-data 0.1.1 → 0.2.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (56) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +2 -0
  3. data/legion-data.gemspec +2 -2
  4. data/lib/legion/data.rb +55 -35
  5. data/lib/legion/data/connection.rb +52 -19
  6. data/lib/legion/data/connections/base.rb +19 -3
  7. data/lib/legion/data/connections/mysql2.rb +2 -17
  8. data/lib/legion/data/connections/mysql_base.rb +1 -1
  9. data/lib/legion/data/migration.rb +7 -20
  10. data/lib/legion/data/migrations/002_add_users.rb +17 -0
  11. data/lib/legion/data/migrations/003_add_groups.rb +16 -0
  12. data/lib/legion/data/migrations/004_add_chains.rb +25 -0
  13. data/lib/legion/data/migrations/005_add_envs.rb +24 -0
  14. data/lib/legion/data/migrations/006_add_dcs.rb +24 -0
  15. data/lib/legion/data/migrations/007_add_nodes.rb +26 -0
  16. data/lib/legion/data/migrations/008_add_settings.rb +18 -0
  17. data/lib/legion/data/migrations/009_add_extensions.rb +25 -0
  18. data/lib/legion/data/migrations/010_add_runners.rb +21 -0
  19. data/lib/legion/data/migrations/011_add_functions.rb +29 -0
  20. data/lib/legion/data/migrations/012_add_tasks.rb +25 -0
  21. data/lib/legion/data/migrations/013_add_task_logs.rb +17 -0
  22. data/lib/legion/data/migrations/014_add_relationships.rb +27 -0
  23. data/lib/legion/data/model.rb +24 -26
  24. data/lib/legion/data/models/chain.rb +2 -1
  25. data/lib/legion/data/models/datacenter.rb +2 -1
  26. data/lib/legion/data/models/environment.rb +2 -1
  27. data/lib/legion/data/models/extension.rb +13 -0
  28. data/lib/legion/data/models/function.rb +7 -4
  29. data/lib/legion/data/models/group.rb +10 -0
  30. data/lib/legion/data/models/namespace.rb +3 -1
  31. data/lib/legion/data/models/node.rb +1 -1
  32. data/lib/legion/data/models/relationship.rb +3 -1
  33. data/lib/legion/data/models/runner.rb +17 -0
  34. data/lib/legion/data/models/setting.rb +10 -0
  35. data/lib/legion/data/models/task.rb +2 -1
  36. data/lib/legion/data/models/task_log.rb +0 -1
  37. data/lib/legion/data/models/user.rb +10 -0
  38. data/lib/legion/data/settings.rb +62 -0
  39. data/lib/legion/data/version.rb +1 -1
  40. metadata +29 -26
  41. data/lib/legion/data/migrations/002_add_chains_table.rb +0 -21
  42. data/lib/legion/data/migrations/003_add_datacenters_table.rb +0 -21
  43. data/lib/legion/data/migrations/004_add_envs_table.rb +0 -21
  44. data/lib/legion/data/migrations/005_add_functions_table.rb +0 -25
  45. data/lib/legion/data/migrations/006_add_namespaces_table.rb +0 -24
  46. data/lib/legion/data/migrations/007_add_nodes_table.rb +0 -22
  47. data/lib/legion/data/migrations/008_add_relationships_table.rb +0 -28
  48. data/lib/legion/data/migrations/009_add_task_logs_table.rb +0 -17
  49. data/lib/legion/data/migrations/010_add_tasks_table.rb +0 -20
  50. data/lib/legion/data/migrations/011_add_users_and_groups.rb +0 -28
  51. data/lib/legion/data/migrations/012_foreign_keys_users_and_groups.rb +0 -42
  52. data/lib/legion/data/migrations/013_function_foreign_keys.rb +0 -10
  53. data/lib/legion/data/migrations/014_nodes_foreign_keys.rb +0 -12
  54. data/lib/legion/data/migrations/015_relationships_foreign_keys.rb +0 -14
  55. data/lib/legion/data/migrations/016_tasks_foreign_keys.rb +0 -22
  56. data/lib/legion/data/migrations/017_add_relationship_to_tasks.rb +0 -14
@@ -1,42 +0,0 @@
1
- Sequel.migration do
2
- transaction
3
- up do
4
- run 'ALTER TABLE `chains` ADD CONSTRAINT `chains_user_owner` FOREIGN KEY (`user_owner`) REFERENCES `users` (`id`) ON DELETE RESTRICT ON UPDATE CASCADE;'
5
- run 'ALTER TABLE `chains` ADD CONSTRAINT `chains_group_owner` FOREIGN KEY (`group_owner`) REFERENCES `groups` (`id`) ON DELETE SET NULL ON UPDATE CASCADE;'
6
-
7
- run 'ALTER TABLE `datacenters` ADD CONSTRAINT `datacenters_user_owner` FOREIGN KEY (`user_owner`) REFERENCES `users` (`id`) ON DELETE SET NULL ON UPDATE CASCADE;'
8
- run 'ALTER TABLE `datacenters` ADD CONSTRAINT `datacenters_group_owner` FOREIGN KEY (`group_owner`) REFERENCES `groups` (`id`) ON DELETE SET NULL ON UPDATE CASCADE;'
9
-
10
- run 'ALTER TABLE `environments` ADD CONSTRAINT `environments_user_owner` FOREIGN KEY (`user_owner`) REFERENCES `users` (`id`) ON DELETE SET NULL ON UPDATE CASCADE;'
11
- run 'ALTER TABLE `environments` ADD CONSTRAINT `environments_group_owner` FOREIGN KEY (`group_owner`) REFERENCES `groups` (`id`) ON DELETE SET NULL ON UPDATE CASCADE;'
12
-
13
- run 'ALTER TABLE `functions` ADD CONSTRAINT `functions_user_owner` FOREIGN KEY (`user_owner`) REFERENCES `users` (`id`) ON DELETE SET NULL ON UPDATE CASCADE;'
14
- run 'ALTER TABLE `functions` ADD CONSTRAINT `functions_group_owner` FOREIGN KEY (`group_owner`) REFERENCES `groups` (`id`) ON DELETE SET NULL ON UPDATE CASCADE;'
15
-
16
- run 'ALTER TABLE `namespaces` ADD CONSTRAINT `namespaces_user_owner` FOREIGN KEY (`user_owner`) REFERENCES `users` (`id`) ON DELETE SET NULL ON UPDATE CASCADE;'
17
- run 'ALTER TABLE `namespaces` ADD CONSTRAINT `namespaces_group_owner` FOREIGN KEY (`group_owner`) REFERENCES `groups` (`id`) ON DELETE SET NULL ON UPDATE CASCADE;'
18
-
19
- run 'ALTER TABLE `relationships` ADD CONSTRAINT `relationships_user_owner` FOREIGN KEY (`user_owner`) REFERENCES `users` (`id`) ON DELETE RESTRICT ON UPDATE CASCADE;'
20
- run 'ALTER TABLE `relationships` ADD CONSTRAINT `relationships_group_owner` FOREIGN KEY (`group_owner`) REFERENCES `groups` (`id`) ON DELETE SET NULL ON UPDATE CASCADE;'
21
- end
22
-
23
- down do
24
- run 'ALTER TABLE `relationships` DROP FOREIGN KEY `relationships_group_owner`;'
25
- run 'ALTER TABLE `relationships` DROP FOREIGN KEY `relationships_user_owner`;'
26
-
27
- run 'ALTER TABLE `namespaces` DROP FOREIGN KEY `namespaces_group_owner`;'
28
- run 'ALTER TABLE `namespaces` DROP FOREIGN KEY `namespaces_user_owner`;'
29
-
30
- run 'ALTER TABLE `functions` DROP FOREIGN KEY `functions_group_owner`;'
31
- run 'ALTER TABLE `functions` DROP FOREIGN KEY `functions_user_owner`;'
32
-
33
- run 'ALTER TABLE `environments` DROP FOREIGN KEY `environments_group_owner`;'
34
- run 'ALTER TABLE `environments` DROP FOREIGN KEY `environments_user_owner`;'
35
-
36
- run 'ALTER TABLE `datacenters` DROP FOREIGN KEY `datacenters_group_owner`;'
37
- run 'ALTER TABLE `datacenters` DROP FOREIGN KEY `datacenters_user_owner`;'
38
-
39
- run 'ALTER TABLE `chains` DROP FOREIGN KEY `chains_group_owner`;'
40
- run 'ALTER TABLE `chains` DROP FOREIGN KEY `chains_user_owner`;'
41
- end
42
- end
@@ -1,10 +0,0 @@
1
- Sequel.migration do
2
- transaction
3
- up do
4
- run 'ALTER TABLE `functions` ADD CONSTRAINT `function_namespace_id` FOREIGN KEY (`namespace_id`) REFERENCES `namespaces` (`id`) ON DELETE RESTRICT ON UPDATE CASCADE;'
5
- end
6
-
7
- down do
8
- run 'ALTER TABLE `functions` DROP FOREIGN KEY `function_namespace_id`;'
9
- end
10
- end
@@ -1,12 +0,0 @@
1
- Sequel.migration do
2
- transaction
3
- up do
4
- run 'ALTER TABLE `nodes` ADD CONSTRAINT `node_datacenter_id` FOREIGN KEY (`datacenter_id`) REFERENCES `datacenters` (`id`) ON DELETE RESTRICT ON UPDATE CASCADE;'
5
- run 'ALTER TABLE `nodes` ADD CONSTRAINT `node_environment_id` FOREIGN KEY (`environment_id`) REFERENCES `environments` (`id`) ON DELETE RESTRICT ON UPDATE CASCADE;'
6
- end
7
-
8
- down do
9
- run 'ALTER TABLE `nodes` DROP FOREIGN KEY `node_environment_id`;'
10
- run 'ALTER TABLE `nodes` DROP FOREIGN KEY `node_datacenter_id`;'
11
- end
12
- end
@@ -1,14 +0,0 @@
1
- Sequel.migration do
2
- transaction
3
- up do
4
- run 'ALTER TABLE `relationships` ADD CONSTRAINT `relationship_chain_id` FOREIGN KEY (`chain_id`) REFERENCES `chains` (`id`) ON DELETE RESTRICT ON UPDATE CASCADE;'
5
- run 'ALTER TABLE `relationships` ADD CONSTRAINT `relationship_trigger_id` FOREIGN KEY (`trigger_id`) REFERENCES `functions` (`id`) ON DELETE RESTRICT ON UPDATE CASCADE;'
6
- run 'ALTER TABLE `relationships` ADD CONSTRAINT `relationship_action_id` FOREIGN KEY (`action_id`) REFERENCES `functions` (`id`) ON DELETE RESTRICT ON UPDATE CASCADE;'
7
- end
8
-
9
- down do
10
- run 'ALTER TABLE `relationships` DROP FOREIGN KEY `relationship_action_id`;'
11
- run 'ALTER TABLE `relationships` DROP FOREIGN KEY `relationship_trigger_id`;'
12
- run 'ALTER TABLE `relationships` DROP FOREIGN KEY `relationship_chain_id`;'
13
- end
14
- end
@@ -1,22 +0,0 @@
1
- Sequel.migration do
2
- transaction
3
- up do
4
- run 'ALTER TABLE `tasks` ADD CONSTRAINT `task_master_id` FOREIGN KEY (`master_id`) REFERENCES `tasks` (`id`) ON DELETE RESTRICT ON UPDATE CASCADE;'
5
- run 'ALTER TABLE `tasks` ADD CONSTRAINT `task_parent_id` FOREIGN KEY (`parent_id`) REFERENCES `tasks` (`id`) ON DELETE RESTRICT ON UPDATE CASCADE;'
6
-
7
- run 'ALTER TABLE `task_logs` CHANGE `node_id` `node_id` INT(11) UNSIGNED NULL;'
8
-
9
- run 'ALTER TABLE `task_logs` ADD CONSTRAINT `task_logs_task_id` FOREIGN KEY (`task_id`) REFERENCES `tasks` (`id`) ON DELETE RESTRICT ON UPDATE CASCADE;'
10
- run 'ALTER TABLE `task_logs` ADD CONSTRAINT `task_logs_node_id` FOREIGN KEY (`node_id`) REFERENCES `nodes` (`id`) ON DELETE SET NULL ON UPDATE CASCADE;'
11
- end
12
-
13
- down do
14
- run 'ALTER TABLE `task_logs` DROP FOREIGN KEY `task_logs_node_id`;'
15
- run 'ALTER TABLE `task_logs` DROP FOREIGN KEY `task_logs_task_id`;'
16
-
17
- run 'ALTER TABLE `task_logs` CHANGE `node_id` `node_id` INT(11) UNSIGNED NOT NULL;'
18
-
19
- run 'ALTER TABLE `tasks` DROP FOREIGN KEY `task_parent_id`;'
20
- run 'ALTER TABLE `tasks` DROP FOREIGN KEY `task_master_id`;'
21
- end
22
- end
@@ -1,14 +0,0 @@
1
- Sequel.migration do
2
- transaction
3
- up do
4
- run 'ALTER TABLE `tasks` ADD `relationship_id` INT(11) UNSIGNED NOT NULL AFTER `status`;'
5
- run 'ALTER TABLE `tasks` ADD CONSTRAINT `task_relationship_id` FOREIGN KEY (`relationship_id`) REFERENCES `relationships` (`id`) ON DELETE RESTRICT ON UPDATE CASCADE;'
6
- end
7
-
8
- down do
9
- run 'ALTER TABLE `task_relationship_id` DROP FOREIGN KEY `node_id`;'
10
- alter_table(:tasks) do
11
- drop_column :relationship_id
12
- end
13
- end
14
- end