topological_inventory-core 1.0.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +7 -0
- data/LICENSE.txt +202 -0
- data/README.md +36 -0
- data/Rakefile +47 -0
- data/app/assets/config/topological_inventory_manifest.js +2 -0
- data/app/assets/javascripts/topological_inventory/application.js +13 -0
- data/app/assets/stylesheets/topological_inventory/application.css +15 -0
- data/app/controllers/topological_inventory/application_controller.rb +5 -0
- data/app/helpers/topological_inventory/application_helper.rb +4 -0
- data/app/jobs/topological_inventory/application_job.rb +4 -0
- data/app/mailers/topological_inventory/application_mailer.rb +6 -0
- data/app/models/application_record.rb +15 -0
- data/app/models/availability.rb +3 -0
- data/app/models/cluster.rb +14 -0
- data/app/models/cluster_tag.rb +7 -0
- data/app/models/concerns/act_as_taggable_on.rb +75 -0
- data/app/models/concerns/archived_concern.rb +16 -0
- data/app/models/container.rb +12 -0
- data/app/models/container_group.rb +16 -0
- data/app/models/container_group_tag.rb +7 -0
- data/app/models/container_image.rb +14 -0
- data/app/models/container_image_tag.rb +7 -0
- data/app/models/container_node.rb +14 -0
- data/app/models/container_node_tag.rb +7 -0
- data/app/models/container_project.rb +15 -0
- data/app/models/container_project_tag.rb +7 -0
- data/app/models/container_resource_quota.rb +14 -0
- data/app/models/container_template.rb +13 -0
- data/app/models/container_template_tag.rb +7 -0
- data/app/models/datastore.rb +15 -0
- data/app/models/datastore_mount.rb +6 -0
- data/app/models/datastore_tag.rb +7 -0
- data/app/models/flavor.rb +14 -0
- data/app/models/host.rb +20 -0
- data/app/models/host_tag.rb +7 -0
- data/app/models/ipaddress.rb +18 -0
- data/app/models/ipaddress_tag.rb +7 -0
- data/app/models/network.rb +18 -0
- data/app/models/network_adapter.rb +19 -0
- data/app/models/network_adapter_tag.rb +7 -0
- data/app/models/network_tag.rb +7 -0
- data/app/models/orchestration_stack.rb +24 -0
- data/app/models/refresh_state.rb +7 -0
- data/app/models/refresh_state_part.rb +63 -0
- data/app/models/reservation.rb +15 -0
- data/app/models/reservation_tag.rb +7 -0
- data/app/models/security_group.rb +19 -0
- data/app/models/security_group_tag.rb +7 -0
- data/app/models/service_credential.rb +13 -0
- data/app/models/service_credential_type.rb +13 -0
- data/app/models/service_instance.rb +23 -0
- data/app/models/service_instance_node.rb +17 -0
- data/app/models/service_instance_node_service_credential.rb +8 -0
- data/app/models/service_instance_service_credential.rb +8 -0
- data/app/models/service_inventory.rb +18 -0
- data/app/models/service_inventory_tag.rb +7 -0
- data/app/models/service_offering.rb +25 -0
- data/app/models/service_offering_icon.rb +9 -0
- data/app/models/service_offering_node.rb +17 -0
- data/app/models/service_offering_node_service_credential.rb +8 -0
- data/app/models/service_offering_service_credential.rb +8 -0
- data/app/models/service_offering_tag.rb +7 -0
- data/app/models/service_plan.rb +16 -0
- data/app/models/source.rb +82 -0
- data/app/models/source_region.rb +24 -0
- data/app/models/subnet.rb +21 -0
- data/app/models/subnet_tag.rb +7 -0
- data/app/models/subscription.rb +25 -0
- data/app/models/tag.rb +67 -0
- data/app/models/task.rb +8 -0
- data/app/models/tenant.rb +47 -0
- data/app/models/vm.rb +27 -0
- data/app/models/vm_security_group.rb +8 -0
- data/app/models/vm_tag.rb +7 -0
- data/app/models/volume.rb +18 -0
- data/app/models/volume_attachment.rb +8 -0
- data/app/models/volume_type.rb +13 -0
- data/app/views/layouts/topological_inventory/application.html.erb +14 -0
- data/config/database.dev.yml +22 -0
- data/db/migrate/20180919170553_add_sources_and_endpoints.rb +19 -0
- data/db/migrate/20180927171624_add_container_models.rb +36 -0
- data/db/migrate/20180927205317_add_service_catalog_models.rb +38 -0
- data/db/migrate/20180928122710_add_authentications.rb +13 -0
- data/db/migrate/20180928130326_add_default_to_endpoints.rb +5 -0
- data/db/migrate/20181002195506_update_endpoints_uri_parts.rb +10 -0
- data/db/migrate/20181005182645_add_tenant_and_tenant_id_to_all_tables.rb +20 -0
- data/db/migrate/20181011164429_add_container_nodes.rb +18 -0
- data/db/migrate/20181011172858_add_source_created_and_deleted_at_timestamps.rb +19 -0
- data/db/migrate/20181015150921_add_missing_name_to_container_template.rb +5 -0
- data/db/migrate/20181016141948_add_json_spec_to_parameters_sets.rb +6 -0
- data/db/migrate/20181018082155_add_archived_on_timestamp_to_all_models.rb +19 -0
- data/db/migrate/20181018141423_rename_service_parameters_sets_to_service_plans.rb +6 -0
- data/db/migrate/20181018235055_add_foreign_keys_to_all_models.rb +37 -0
- data/db/migrate/20181023094055_add_not_null_constraints_to_all_models.rb +43 -0
- data/db/migrate/20181023102858_add_timestamps_for_parallel_saving.rb +27 -0
- data/db/migrate/20181023213355_add_tags_and_taggings.rb +28 -0
- data/db/migrate/20181023215716_change_column_defaults.rb +5 -0
- data/db/migrate/20181024163850_add_source_type.rb +13 -0
- data/db/migrate/20181026182144_add_tasks_table.rb +13 -0
- data/db/migrate/20181102141329_add_ssl_options_to_endpoints.rb +6 -0
- data/db/migrate/20181102145252_add_regions_and_subscriptions.rb +31 -0
- data/db/migrate/20181107211649_add_containers.rb +24 -0
- data/db/migrate/20181108113645_add_tenant_id_to_regions_and_subscriptions.rb +6 -0
- data/db/migrate/20181109170334_add_not_null_constraints_to_source_type.rb +7 -0
- data/db/migrate/20181113145803_add_indexes_on_name_column_to_node_and_namespace.rb +6 -0
- data/db/migrate/20181113182615_add_vms_table.rb +32 -0
- data/db/migrate/20181113190507_add_orchestration_stacks.rb +26 -0
- data/db/migrate/20181114094606_add_last_seen_at_to_all_tables.rb +36 -0
- data/db/migrate/20181114115416_add_refresh_states_and_refresh_state_parts.rb +26 -0
- data/db/migrate/20181119173228_add_lives_on_to_container_nodes.rb +5 -0
- data/db/migrate/20181127191451_add_container_images.rb +28 -0
- data/db/migrate/20181128101451_add_flavors.rb +25 -0
- data/db/migrate/20181128141221_add_json_schema_to_source_types.rb +5 -0
- data/db/migrate/20181129150215_rename_archived_on.rb +18 -0
- data/db/migrate/20181130111723_add_volumes.rb +57 -0
- data/db/migrate/20181205142648_add_unique_constraint_to_source_uid.rb +6 -0
- data/db/migrate/20181210164829_add_hardware_attributes_to_flavors.rb +8 -0
- data/db/migrate/20190102161242_remove_tags_and_taggings.rb +33 -0
- data/db/migrate/20190102161442_add_taggings_for_all_taggable_tables.rb +86 -0
- data/db/migrate/20190104213045_rename_authentication_userid_to_username.rb +5 -0
- data/db/migrate/20190111083026_change_sources_source_type_to_not_null.rb +5 -0
- data/db/migrate/20190111163026_change_sources_name_to_not_null.rb +5 -0
- data/db/migrate/20190116164905_add_extra_metadata_and_tags_for_service_offerings.rb +21 -0
- data/db/migrate/20190118110059_add_service_offering_icons.rb +16 -0
- data/db/migrate/20190122131958_add_missing_foreign_key_constraint_to_tasks.rb +5 -0
- data/db/migrate/20190122133424_index_foreign_keys_in_authentications.rb +5 -0
- data/db/migrate/20190122133425_index_foreign_keys_in_container_groups.rb +5 -0
- data/db/migrate/20190122133426_index_foreign_keys_in_container_projects.rb +5 -0
- data/db/migrate/20190122133427_index_foreign_keys_in_container_templates.rb +5 -0
- data/db/migrate/20190122133428_index_foreign_keys_in_endpoints.rb +5 -0
- data/db/migrate/20190122133429_index_foreign_keys_in_service_instances.rb +5 -0
- data/db/migrate/20190122133430_index_foreign_keys_in_service_offerings.rb +5 -0
- data/db/migrate/20190122133431_index_foreign_keys_in_service_plans.rb +5 -0
- data/db/migrate/20190122133432_index_foreign_keys_in_sources.rb +5 -0
- data/db/migrate/20190122153645_remove_extraneous_indexes.rb +17 -0
- data/db/migrate/20190124140942_add_missing_indexes_for_last_seen_at.rb +8 -0
- data/db/migrate/20190124154742_add_missing_not_null_constraints_to_source_ref.rb +21 -0
- data/db/migrate/20190205174227_add_version_to_sources.rb +5 -0
- data/db/migrate/20190208143909_add_availabilities_table.rb +15 -0
- data/db/migrate/20190213155142_add_resource_version_to_service_plans.rb +5 -0
- data/db/migrate/20190218180413_move_tag_value_to_tags.rb +40 -0
- data/db/migrate/20190218203848_remove_extra_columns_from_tagging_join_tables.rb +33 -0
- data/db/migrate/20190222171042_add_mac_addresses_and_host_inventory_id_to_vms.rb +8 -0
- data/db/migrate/20190228103842_add_unique_indexes_to_tag_mapping_tables.rb +21 -0
- data/db/migrate/20190308144237_add_application_types.rb +9 -0
- data/db/migrate/20190308145549_add_applications.rb +10 -0
- data/db/migrate/20190313191654_add_application_type_display_name.rb +5 -0
- data/db/migrate/20190314123842_add_containers_resource_quotas_table.rb +30 -0
- data/db/migrate/20190314133842_add_columns_for_containers_capacity_planning_analytics.rb +13 -0
- data/db/migrate/20190314153151_extract_sources_to_new_service.rb +84 -0
- data/db/migrate/20190322122542_add_external_url_to_service_instances.rb +5 -0
- data/db/migrate/20190325115642_external_tenant_must_be_unique_and_not_null.rb +6 -0
- data/db/migrate/20190401134142_add_last_seen_at_to_all_ingress_exposed_tables.rb +36 -0
- data/db/migrate/20190514164916_add_clusters.rb +39 -0
- data/db/migrate/20190514165841_add_hosts.rb +45 -0
- data/db/migrate/20190522170940_add_datastores.rb +38 -0
- data/db/migrate/20190522172440_add_datastore_mounts.rb +17 -0
- data/db/migrate/20190724194551_add_network_adapters.rb +39 -0
- data/db/migrate/20190729194551_change_network_adapters.rb +27 -0
- data/db/migrate/20190729214242_add_ipaddresses_subnets_and_networks.rb +186 -0
- data/db/migrate/20190806112121_add_missing_relation_to_subscription_region_and_stack.rb +14 -0
- data/db/migrate/20190807102142_add_missing_relation_to_subscription_and_region_to_network_adapter.rb +6 -0
- data/db/migrate/20190807183701_add_source_collector_status.rb +5 -0
- data/db/migrate/20190815194221_add_reservations_table.rb +43 -0
- data/db/migrate/20190926144242_add_service_inventories_table.rb +39 -0
- data/db/migrate/20190930112142_add_service_offering_and_instance_nodes_tables.rb +67 -0
- data/db/migrate/20190930162142_add_inventory_relation_to_service_offerings_and_instances.rb +6 -0
- data/db/migrate/20191002132112_add_root_service_instance_to_service_instances.rb +6 -0
- data/db/migrate/20191108135108_add_service_credential_tables.rb +33 -0
- data/db/migrate/20191118181501_add_host_to_vm.rb +5 -0
- data/db/migrate/20200122181811_add_tenant_to_join_tables.rb +134 -0
- data/db/migrate/20200213135429_remove_service_credential_references.rb +8 -0
- data/db/migrate/20200213150314_create_service_credential_types.rb +30 -0
- data/db/migrate/20200213173958_add_service_credential_type_to_service_credentials.rb +5 -0
- data/db/migrate/20200214183108_create_join_table_service_offering_service_credentials.rb +18 -0
- data/db/migrate/20200214183117_create_join_table_service_instance_service_credentials.rb +19 -0
- data/db/migrate/20200218182928_create_join_table_service_offering_node_service_credentials.rb +18 -0
- data/db/migrate/20200218183046_create_join_table_service_instance_node_service_credentials.rb +18 -0
- data/db/migrate/20200313124806_remove_extraneous_index_from_service_credential_join_tables.rb +15 -0
- data/db/migrate/20200313141215_add_refresh_state_part_to_persisted_models.rb +66 -0
- data/db/migrate/20200317082640_add_tracking_timestamps_to_refresh_state.rb +6 -0
- data/db/schema.rb +1594 -0
- data/db/seeds.rb +0 -0
- data/lib/tasks/topological_inventory_tasks.rake +4 -0
- data/lib/topological_inventory-core.rb +7 -0
- data/lib/topological_inventory/core/ar_helper.rb +50 -0
- data/lib/topological_inventory/core/engine.rb +17 -0
- data/lib/topological_inventory/core/logging.rb +19 -0
- data/lib/topological_inventory/core/seed_loader.rb +9 -0
- data/lib/topological_inventory/core/version.rb +5 -0
- data/lib/topological_inventory/schema.rb +6 -0
- data/lib/topological_inventory/schema/base.rb +26 -0
- data/lib/topological_inventory/schema/default.rb +187 -0
- metadata +389 -0
data/db/seeds.rb
ADDED
File without changes
|
@@ -0,0 +1,50 @@
|
|
1
|
+
module TopologicalInventory
|
2
|
+
module Core
|
3
|
+
module ArHelper
|
4
|
+
def self.database_yaml_path
|
5
|
+
@database_yaml_path ||= root.join("config", "database.yml")
|
6
|
+
end
|
7
|
+
|
8
|
+
def self.database_yaml_path=(path)
|
9
|
+
@database_yaml_path = path
|
10
|
+
end
|
11
|
+
|
12
|
+
def self.load_environment!
|
13
|
+
ENV["RAILS_ENV"] ||= "development"
|
14
|
+
|
15
|
+
require "yaml"
|
16
|
+
database_yaml = YAML.load_file(database_yaml_path) if database_yaml_path.exist?
|
17
|
+
|
18
|
+
require "active_record"
|
19
|
+
ActiveRecord::Tasks::DatabaseTasks.env = ENV["RAILS_ENV"]
|
20
|
+
ActiveRecord::Tasks::DatabaseTasks.database_configuration = database_yaml || {}
|
21
|
+
ActiveRecord::Tasks::DatabaseTasks.db_dir = root.join("db")
|
22
|
+
ActiveRecord::Tasks::DatabaseTasks.migrations_paths = [root.join("db/migrate")]
|
23
|
+
|
24
|
+
autoload_models
|
25
|
+
|
26
|
+
require "topological_inventory/core/seed_loader"
|
27
|
+
ActiveRecord::Tasks::DatabaseTasks.seed_loader = TopologicalInventory::Core::SeedLoader
|
28
|
+
ActiveRecord::Tasks::DatabaseTasks.root = root
|
29
|
+
ActiveRecord::Base.configurations = ActiveRecord::Tasks::DatabaseTasks.database_configuration
|
30
|
+
|
31
|
+
ActiveRecord::Base.establish_connection(ENV["RAILS_ENV"].to_sym)
|
32
|
+
end
|
33
|
+
|
34
|
+
def self.root
|
35
|
+
@root ||= begin
|
36
|
+
require 'pathname'
|
37
|
+
Pathname.new(__dir__).join("../../..").expand_path
|
38
|
+
end
|
39
|
+
end
|
40
|
+
|
41
|
+
private_class_method def self.autoload_models
|
42
|
+
$LOAD_PATH << root.join("app", "models")
|
43
|
+
$LOAD_PATH << root.join("app", "models", "concerns")
|
44
|
+
|
45
|
+
ActiveSupport::Dependencies.autoload_paths << root.join("app", "models")
|
46
|
+
ActiveSupport::Dependencies.autoload_paths << root.join("app", "models", "concerns")
|
47
|
+
end
|
48
|
+
end
|
49
|
+
end
|
50
|
+
end
|
@@ -0,0 +1,17 @@
|
|
1
|
+
module TopologicalInventory
|
2
|
+
module Core
|
3
|
+
class Engine < ::Rails::Engine
|
4
|
+
isolate_namespace TopologicalInventory
|
5
|
+
|
6
|
+
initializer :append_migrations do |app|
|
7
|
+
unless app.root.to_s == root.to_s
|
8
|
+
config.paths["db/migrate"].expanded.each do |expanded_path|
|
9
|
+
app.config.paths["db/migrate"] << expanded_path
|
10
|
+
end
|
11
|
+
ActiveRecord::Migrator.migrations_paths = app.config.paths["db/migrate"]
|
12
|
+
ActiveRecord::Tasks::DatabaseTasks.migrations_paths = app.config.paths["db/migrate"].to_a
|
13
|
+
end
|
14
|
+
end
|
15
|
+
end
|
16
|
+
end
|
17
|
+
end
|
@@ -0,0 +1,19 @@
|
|
1
|
+
require "manageiq/loggers"
|
2
|
+
|
3
|
+
module TopologicalInventory
|
4
|
+
module Core
|
5
|
+
class << self
|
6
|
+
attr_writer :logger
|
7
|
+
end
|
8
|
+
|
9
|
+
def self.logger
|
10
|
+
@logger ||= ManageIQ::Loggers::Container.new
|
11
|
+
end
|
12
|
+
|
13
|
+
module Logging
|
14
|
+
def logger
|
15
|
+
TopologicalInventory::Core.logger
|
16
|
+
end
|
17
|
+
end
|
18
|
+
end
|
19
|
+
end
|
@@ -0,0 +1,26 @@
|
|
1
|
+
require "inventory_refresh"
|
2
|
+
require "inventory_refresh/persister"
|
3
|
+
|
4
|
+
module TopologicalInventory
|
5
|
+
module Schema
|
6
|
+
class Base < InventoryRefresh::Persister
|
7
|
+
def to_hash
|
8
|
+
{
|
9
|
+
"schema": {
|
10
|
+
"name": self.class.name.split("::").last # schema name
|
11
|
+
},
|
12
|
+
"source": manager.uid,
|
13
|
+
}.merge(super)
|
14
|
+
end
|
15
|
+
|
16
|
+
def self.klass_for(name)
|
17
|
+
klass_name = "TopologicalInventory::Schema::#{name}"
|
18
|
+
klass = klass_name.safe_constantize
|
19
|
+
|
20
|
+
# sometimes autoloader is confused and loads class with another namespace
|
21
|
+
# checks whether it loads what we want
|
22
|
+
klass if klass.to_s == klass_name
|
23
|
+
end
|
24
|
+
end
|
25
|
+
end
|
26
|
+
end
|
@@ -0,0 +1,187 @@
|
|
1
|
+
require "topological_inventory/schema/base"
|
2
|
+
|
3
|
+
module TopologicalInventory
|
4
|
+
module Schema
|
5
|
+
class Default < TopologicalInventory::Schema::Base
|
6
|
+
def initialize_inventory_collections
|
7
|
+
add_default_collection(:clusters)
|
8
|
+
add_containers
|
9
|
+
add_default_collection(:container_groups)
|
10
|
+
add_default_collection(:container_images)
|
11
|
+
add_default_collection(:container_nodes) { |b| add_secondary_refs_name(b) }
|
12
|
+
add_default_collection(:container_projects) { |b| add_secondary_refs_name(b) }
|
13
|
+
add_default_collection(:container_resource_quotas)
|
14
|
+
add_default_collection(:container_templates)
|
15
|
+
add_default_collection(:datastores)
|
16
|
+
add_default_collection(:flavors)
|
17
|
+
add_default_collection(:ipaddresses)
|
18
|
+
add_default_collection(:hosts)
|
19
|
+
add_default_collection(:network_adapters)
|
20
|
+
add_default_collection(:networks)
|
21
|
+
add_default_collection(:orchestration_stacks)
|
22
|
+
add_default_collection(:reservations)
|
23
|
+
add_default_collection(:service_instances)
|
24
|
+
add_default_collection(:service_instance_nodes)
|
25
|
+
add_default_collection(:service_inventories)
|
26
|
+
add_default_collection(:security_groups)
|
27
|
+
add_default_collection(:service_offering_icons)
|
28
|
+
add_default_collection(:service_offerings)
|
29
|
+
add_default_collection(:service_offering_nodes)
|
30
|
+
add_default_collection(:service_credentials)
|
31
|
+
add_default_collection(:service_credential_types)
|
32
|
+
add_default_collection(:service_plans)
|
33
|
+
add_default_collection(:source_regions)
|
34
|
+
add_default_collection(:subnets)
|
35
|
+
add_default_collection(:subscriptions)
|
36
|
+
add_default_collection(:vms)
|
37
|
+
add_default_collection(:volumes)
|
38
|
+
add_default_collection(:volume_types)
|
39
|
+
|
40
|
+
add_collection_for_join_table(:service_offering_service_credentials, :manager_ref => %i[service_offering service_credential])
|
41
|
+
add_collection_for_join_table(:service_instance_service_credentials, :manager_ref => %i[service_instance service_credential])
|
42
|
+
add_collection_for_join_table(:service_offering_node_service_credentials, :manager_ref => %i[service_offering_node service_credential])
|
43
|
+
add_collection_for_join_table(:service_instance_node_service_credentials, :manager_ref => %i[service_instance_node service_credential])
|
44
|
+
|
45
|
+
add_tagging_collection(:cluster_tags, :manager_ref => %i[cluster tag])
|
46
|
+
add_tagging_collection(:container_group_tags, :manager_ref => [:container_group, :tag])
|
47
|
+
add_tagging_collection(:container_image_tags, :manager_ref => [:container_image, :tag])
|
48
|
+
add_tagging_collection(:container_node_tags, :manager_ref => [:container_node, :tag])
|
49
|
+
add_tagging_collection(:container_project_tags, :manager_ref => [:container_project, :tag])
|
50
|
+
add_tagging_collection(:container_template_tags, :manager_ref => [:container_template, :tag])
|
51
|
+
add_tagging_collection(:datastore_tags, :manager_ref => [:datastore, :tag])
|
52
|
+
add_tagging_collection(:ipaddress_tags, :manager_ref => [:ipaddress, :tag])
|
53
|
+
add_tagging_collection(:host_tags, :manager_ref => %i[host tag])
|
54
|
+
add_tagging_collection(:network_adapter_tags, :manager_ref => [:network_adapter, :tag])
|
55
|
+
add_tagging_collection(:network_tags, :manager_ref => [:network, :tag])
|
56
|
+
add_tagging_collection(:reservation_tags, :manager_ref => [:reservation, :tag])
|
57
|
+
add_tagging_collection(:security_group_tags, :manager_ref => [:security_group, :tag])
|
58
|
+
add_tagging_collection(:service_inventory_tags, :manager_ref => [:service_inventory, :tag])
|
59
|
+
add_tagging_collection(:service_offering_tags, :manager_ref => [:service_offering, :tag])
|
60
|
+
add_tagging_collection(:subnet_tags, :manager_ref => [:subnet, :tag])
|
61
|
+
add_tagging_collection(:vm_tags, :manager_ref => [:vm, :tag])
|
62
|
+
add_tags
|
63
|
+
|
64
|
+
add_datastore_mounts
|
65
|
+
add_volume_attachments
|
66
|
+
add_cross_link_vms
|
67
|
+
add_vm_security_groups
|
68
|
+
end
|
69
|
+
|
70
|
+
def targeted?
|
71
|
+
true
|
72
|
+
end
|
73
|
+
|
74
|
+
private
|
75
|
+
|
76
|
+
def add_default_collection(model)
|
77
|
+
add_collection(model) do |builder|
|
78
|
+
add_default_properties(builder)
|
79
|
+
add_default_values(builder)
|
80
|
+
yield builder if block_given?
|
81
|
+
end
|
82
|
+
end
|
83
|
+
|
84
|
+
def add_default_properties(builder, manager_ref: [:source_ref])
|
85
|
+
builder.add_properties(
|
86
|
+
:manager_ref => manager_ref,
|
87
|
+
:strategy => :local_db_find_missing_references,
|
88
|
+
:retention_strategy => :archive
|
89
|
+
)
|
90
|
+
end
|
91
|
+
|
92
|
+
def add_default_values(builder)
|
93
|
+
builder.add_default_values(
|
94
|
+
:source_id => ->(persister) { persister.manager.id },
|
95
|
+
:tenant_id => ->(persister) { persister.manager.tenant_id },
|
96
|
+
)
|
97
|
+
end
|
98
|
+
|
99
|
+
def add_secondary_refs_name(builder)
|
100
|
+
builder.add_properties(:secondary_refs => {:by_name => [:name]})
|
101
|
+
end
|
102
|
+
|
103
|
+
def add_collection_for_join_table(model, manager_ref: [:source_ref])
|
104
|
+
add_collection(model) do |builder|
|
105
|
+
builder.add_default_values(:tenant_id => ->(persister) { persister.manager.tenant_id })
|
106
|
+
builder.add_properties(
|
107
|
+
:manager_ref => manager_ref,
|
108
|
+
:strategy => :local_db_find_missing_references,
|
109
|
+
:retention_strategy => :destroy
|
110
|
+
)
|
111
|
+
end
|
112
|
+
end
|
113
|
+
|
114
|
+
def add_tagging_collection(model, manager_ref: [:source_ref])
|
115
|
+
# TODO generate the manager_ref automatically?
|
116
|
+
add_collection(model) do |builder|
|
117
|
+
builder.add_default_values(:tenant_id => ->(persister) { persister.manager.tenant_id })
|
118
|
+
builder.add_properties(
|
119
|
+
:manager_ref => manager_ref,
|
120
|
+
:strategy => :local_db_find_missing_references,
|
121
|
+
:retention_strategy => :destroy,
|
122
|
+
)
|
123
|
+
end
|
124
|
+
end
|
125
|
+
|
126
|
+
def add_vm_security_groups
|
127
|
+
add_collection(:vm_security_groups) do |builder|
|
128
|
+
add_default_properties(builder, manager_ref: [:vm, :security_group])
|
129
|
+
builder.add_properties(:retention_strategy => :destroy)
|
130
|
+
end
|
131
|
+
end
|
132
|
+
|
133
|
+
def add_containers
|
134
|
+
add_collection(:containers) do |builder|
|
135
|
+
add_default_properties(builder, manager_ref: [:container_group, :name])
|
136
|
+
builder.add_default_values(:tenant_id => ->(persister) { persister.manager.tenant_id })
|
137
|
+
end
|
138
|
+
end
|
139
|
+
|
140
|
+
def add_volume_attachments
|
141
|
+
add_collection(:volume_attachments) do |builder|
|
142
|
+
add_default_properties(builder, manager_ref: [:volume, :vm])
|
143
|
+
builder.add_properties(:retention_strategy => :destroy)
|
144
|
+
builder.add_default_values(:tenant_id => ->(persister) { persister.manager.tenant_id })
|
145
|
+
end
|
146
|
+
end
|
147
|
+
|
148
|
+
def add_datastore_mounts
|
149
|
+
add_collection(:datastore_mounts) do |builder|
|
150
|
+
add_default_properties(builder, manager_ref: [:datastore, :host])
|
151
|
+
builder.add_properties(:retention_strategy => :destroy)
|
152
|
+
end
|
153
|
+
end
|
154
|
+
|
155
|
+
def add_cross_link_vms
|
156
|
+
add_collection(:cross_link_vms) do |builder|
|
157
|
+
builder.add_properties(
|
158
|
+
:arel => Vm.where(:tenant => manager.tenant),
|
159
|
+
:association => nil,
|
160
|
+
:model_class => Vm,
|
161
|
+
:name => :cross_link_vms,
|
162
|
+
:manager_ref => [:uid_ems],
|
163
|
+
:strategy => :local_db_find_references,
|
164
|
+
)
|
165
|
+
end
|
166
|
+
end
|
167
|
+
|
168
|
+
def add_tags
|
169
|
+
add_collection(:tags) do |builder|
|
170
|
+
builder.add_properties(
|
171
|
+
:arel => Tag.where(:tenant => manager.tenant),
|
172
|
+
:association => nil,
|
173
|
+
:model_class => Tag,
|
174
|
+
:name => :tags,
|
175
|
+
:manager_ref => [:name, :value, :namespace],
|
176
|
+
:create_only => true,
|
177
|
+
:strategy => :local_db_find_missing_references,
|
178
|
+
)
|
179
|
+
|
180
|
+
builder.add_default_values(
|
181
|
+
:tenant_id => ->(persister) { persister.manager.tenant_id },
|
182
|
+
)
|
183
|
+
end
|
184
|
+
end
|
185
|
+
end
|
186
|
+
end
|
187
|
+
end
|
metadata
ADDED
@@ -0,0 +1,389 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
name: topological_inventory-core
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 1.0.0
|
5
|
+
platform: ruby
|
6
|
+
authors:
|
7
|
+
- Adam Grare
|
8
|
+
autorequire:
|
9
|
+
bindir: bin
|
10
|
+
cert_chain: []
|
11
|
+
date: 2020-04-16 00:00:00.000000000 Z
|
12
|
+
dependencies:
|
13
|
+
- !ruby/object:Gem::Dependency
|
14
|
+
name: acts_as_tenant
|
15
|
+
requirement: !ruby/object:Gem::Requirement
|
16
|
+
requirements:
|
17
|
+
- - "~>"
|
18
|
+
- !ruby/object:Gem::Version
|
19
|
+
version: 0.4.4
|
20
|
+
type: :runtime
|
21
|
+
prerelease: false
|
22
|
+
version_requirements: !ruby/object:Gem::Requirement
|
23
|
+
requirements:
|
24
|
+
- - "~>"
|
25
|
+
- !ruby/object:Gem::Version
|
26
|
+
version: 0.4.4
|
27
|
+
- !ruby/object:Gem::Dependency
|
28
|
+
name: inventory_refresh
|
29
|
+
requirement: !ruby/object:Gem::Requirement
|
30
|
+
requirements:
|
31
|
+
- - "~>"
|
32
|
+
- !ruby/object:Gem::Version
|
33
|
+
version: 0.3.4
|
34
|
+
type: :runtime
|
35
|
+
prerelease: false
|
36
|
+
version_requirements: !ruby/object:Gem::Requirement
|
37
|
+
requirements:
|
38
|
+
- - "~>"
|
39
|
+
- !ruby/object:Gem::Version
|
40
|
+
version: 0.3.4
|
41
|
+
- !ruby/object:Gem::Dependency
|
42
|
+
name: manageiq-messaging
|
43
|
+
requirement: !ruby/object:Gem::Requirement
|
44
|
+
requirements:
|
45
|
+
- - "~>"
|
46
|
+
- !ruby/object:Gem::Version
|
47
|
+
version: 0.1.0
|
48
|
+
type: :runtime
|
49
|
+
prerelease: false
|
50
|
+
version_requirements: !ruby/object:Gem::Requirement
|
51
|
+
requirements:
|
52
|
+
- - "~>"
|
53
|
+
- !ruby/object:Gem::Version
|
54
|
+
version: 0.1.0
|
55
|
+
- !ruby/object:Gem::Dependency
|
56
|
+
name: manageiq-password
|
57
|
+
requirement: !ruby/object:Gem::Requirement
|
58
|
+
requirements:
|
59
|
+
- - "~>"
|
60
|
+
- !ruby/object:Gem::Version
|
61
|
+
version: '0.3'
|
62
|
+
type: :runtime
|
63
|
+
prerelease: false
|
64
|
+
version_requirements: !ruby/object:Gem::Requirement
|
65
|
+
requirements:
|
66
|
+
- - "~>"
|
67
|
+
- !ruby/object:Gem::Version
|
68
|
+
version: '0.3'
|
69
|
+
- !ruby/object:Gem::Dependency
|
70
|
+
name: pg
|
71
|
+
requirement: !ruby/object:Gem::Requirement
|
72
|
+
requirements:
|
73
|
+
- - ">"
|
74
|
+
- !ruby/object:Gem::Version
|
75
|
+
version: '0'
|
76
|
+
type: :runtime
|
77
|
+
prerelease: false
|
78
|
+
version_requirements: !ruby/object:Gem::Requirement
|
79
|
+
requirements:
|
80
|
+
- - ">"
|
81
|
+
- !ruby/object:Gem::Version
|
82
|
+
version: '0'
|
83
|
+
- !ruby/object:Gem::Dependency
|
84
|
+
name: rails
|
85
|
+
requirement: !ruby/object:Gem::Requirement
|
86
|
+
requirements:
|
87
|
+
- - "~>"
|
88
|
+
- !ruby/object:Gem::Version
|
89
|
+
version: 5.2.2
|
90
|
+
type: :runtime
|
91
|
+
prerelease: false
|
92
|
+
version_requirements: !ruby/object:Gem::Requirement
|
93
|
+
requirements:
|
94
|
+
- - "~>"
|
95
|
+
- !ruby/object:Gem::Version
|
96
|
+
version: 5.2.2
|
97
|
+
- !ruby/object:Gem::Dependency
|
98
|
+
name: rest-client
|
99
|
+
requirement: !ruby/object:Gem::Requirement
|
100
|
+
requirements:
|
101
|
+
- - ">="
|
102
|
+
- !ruby/object:Gem::Version
|
103
|
+
version: 1.8.0
|
104
|
+
type: :runtime
|
105
|
+
prerelease: false
|
106
|
+
version_requirements: !ruby/object:Gem::Requirement
|
107
|
+
requirements:
|
108
|
+
- - ">="
|
109
|
+
- !ruby/object:Gem::Version
|
110
|
+
version: 1.8.0
|
111
|
+
- !ruby/object:Gem::Dependency
|
112
|
+
name: active_record_doctor
|
113
|
+
requirement: !ruby/object:Gem::Requirement
|
114
|
+
requirements:
|
115
|
+
- - ">="
|
116
|
+
- !ruby/object:Gem::Version
|
117
|
+
version: '0'
|
118
|
+
type: :development
|
119
|
+
prerelease: false
|
120
|
+
version_requirements: !ruby/object:Gem::Requirement
|
121
|
+
requirements:
|
122
|
+
- - ">="
|
123
|
+
- !ruby/object:Gem::Version
|
124
|
+
version: '0'
|
125
|
+
- !ruby/object:Gem::Dependency
|
126
|
+
name: rspec-rails
|
127
|
+
requirement: !ruby/object:Gem::Requirement
|
128
|
+
requirements:
|
129
|
+
- - "~>"
|
130
|
+
- !ruby/object:Gem::Version
|
131
|
+
version: '3.8'
|
132
|
+
type: :development
|
133
|
+
prerelease: false
|
134
|
+
version_requirements: !ruby/object:Gem::Requirement
|
135
|
+
requirements:
|
136
|
+
- - "~>"
|
137
|
+
- !ruby/object:Gem::Version
|
138
|
+
version: '3.8'
|
139
|
+
- !ruby/object:Gem::Dependency
|
140
|
+
name: simplecov
|
141
|
+
requirement: !ruby/object:Gem::Requirement
|
142
|
+
requirements:
|
143
|
+
- - ">="
|
144
|
+
- !ruby/object:Gem::Version
|
145
|
+
version: '0'
|
146
|
+
type: :development
|
147
|
+
prerelease: false
|
148
|
+
version_requirements: !ruby/object:Gem::Requirement
|
149
|
+
requirements:
|
150
|
+
- - ">="
|
151
|
+
- !ruby/object:Gem::Version
|
152
|
+
version: '0'
|
153
|
+
- !ruby/object:Gem::Dependency
|
154
|
+
name: webmock
|
155
|
+
requirement: !ruby/object:Gem::Requirement
|
156
|
+
requirements:
|
157
|
+
- - ">="
|
158
|
+
- !ruby/object:Gem::Version
|
159
|
+
version: '0'
|
160
|
+
type: :development
|
161
|
+
prerelease: false
|
162
|
+
version_requirements: !ruby/object:Gem::Requirement
|
163
|
+
requirements:
|
164
|
+
- - ">="
|
165
|
+
- !ruby/object:Gem::Version
|
166
|
+
version: '0'
|
167
|
+
description: Core Models and Schema for the Topological Inventory Service..
|
168
|
+
email:
|
169
|
+
- agrare@redhat.com
|
170
|
+
executables: []
|
171
|
+
extensions: []
|
172
|
+
extra_rdoc_files: []
|
173
|
+
files:
|
174
|
+
- LICENSE.txt
|
175
|
+
- README.md
|
176
|
+
- Rakefile
|
177
|
+
- app/assets/config/topological_inventory_manifest.js
|
178
|
+
- app/assets/javascripts/topological_inventory/application.js
|
179
|
+
- app/assets/stylesheets/topological_inventory/application.css
|
180
|
+
- app/controllers/topological_inventory/application_controller.rb
|
181
|
+
- app/helpers/topological_inventory/application_helper.rb
|
182
|
+
- app/jobs/topological_inventory/application_job.rb
|
183
|
+
- app/mailers/topological_inventory/application_mailer.rb
|
184
|
+
- app/models/application_record.rb
|
185
|
+
- app/models/availability.rb
|
186
|
+
- app/models/cluster.rb
|
187
|
+
- app/models/cluster_tag.rb
|
188
|
+
- app/models/concerns/act_as_taggable_on.rb
|
189
|
+
- app/models/concerns/archived_concern.rb
|
190
|
+
- app/models/container.rb
|
191
|
+
- app/models/container_group.rb
|
192
|
+
- app/models/container_group_tag.rb
|
193
|
+
- app/models/container_image.rb
|
194
|
+
- app/models/container_image_tag.rb
|
195
|
+
- app/models/container_node.rb
|
196
|
+
- app/models/container_node_tag.rb
|
197
|
+
- app/models/container_project.rb
|
198
|
+
- app/models/container_project_tag.rb
|
199
|
+
- app/models/container_resource_quota.rb
|
200
|
+
- app/models/container_template.rb
|
201
|
+
- app/models/container_template_tag.rb
|
202
|
+
- app/models/datastore.rb
|
203
|
+
- app/models/datastore_mount.rb
|
204
|
+
- app/models/datastore_tag.rb
|
205
|
+
- app/models/flavor.rb
|
206
|
+
- app/models/host.rb
|
207
|
+
- app/models/host_tag.rb
|
208
|
+
- app/models/ipaddress.rb
|
209
|
+
- app/models/ipaddress_tag.rb
|
210
|
+
- app/models/network.rb
|
211
|
+
- app/models/network_adapter.rb
|
212
|
+
- app/models/network_adapter_tag.rb
|
213
|
+
- app/models/network_tag.rb
|
214
|
+
- app/models/orchestration_stack.rb
|
215
|
+
- app/models/refresh_state.rb
|
216
|
+
- app/models/refresh_state_part.rb
|
217
|
+
- app/models/reservation.rb
|
218
|
+
- app/models/reservation_tag.rb
|
219
|
+
- app/models/security_group.rb
|
220
|
+
- app/models/security_group_tag.rb
|
221
|
+
- app/models/service_credential.rb
|
222
|
+
- app/models/service_credential_type.rb
|
223
|
+
- app/models/service_instance.rb
|
224
|
+
- app/models/service_instance_node.rb
|
225
|
+
- app/models/service_instance_node_service_credential.rb
|
226
|
+
- app/models/service_instance_service_credential.rb
|
227
|
+
- app/models/service_inventory.rb
|
228
|
+
- app/models/service_inventory_tag.rb
|
229
|
+
- app/models/service_offering.rb
|
230
|
+
- app/models/service_offering_icon.rb
|
231
|
+
- app/models/service_offering_node.rb
|
232
|
+
- app/models/service_offering_node_service_credential.rb
|
233
|
+
- app/models/service_offering_service_credential.rb
|
234
|
+
- app/models/service_offering_tag.rb
|
235
|
+
- app/models/service_plan.rb
|
236
|
+
- app/models/source.rb
|
237
|
+
- app/models/source_region.rb
|
238
|
+
- app/models/subnet.rb
|
239
|
+
- app/models/subnet_tag.rb
|
240
|
+
- app/models/subscription.rb
|
241
|
+
- app/models/tag.rb
|
242
|
+
- app/models/task.rb
|
243
|
+
- app/models/tenant.rb
|
244
|
+
- app/models/vm.rb
|
245
|
+
- app/models/vm_security_group.rb
|
246
|
+
- app/models/vm_tag.rb
|
247
|
+
- app/models/volume.rb
|
248
|
+
- app/models/volume_attachment.rb
|
249
|
+
- app/models/volume_type.rb
|
250
|
+
- app/views/layouts/topological_inventory/application.html.erb
|
251
|
+
- config/database.dev.yml
|
252
|
+
- db/migrate/20180919170553_add_sources_and_endpoints.rb
|
253
|
+
- db/migrate/20180927171624_add_container_models.rb
|
254
|
+
- db/migrate/20180927205317_add_service_catalog_models.rb
|
255
|
+
- db/migrate/20180928122710_add_authentications.rb
|
256
|
+
- db/migrate/20180928130326_add_default_to_endpoints.rb
|
257
|
+
- db/migrate/20181002195506_update_endpoints_uri_parts.rb
|
258
|
+
- db/migrate/20181005182645_add_tenant_and_tenant_id_to_all_tables.rb
|
259
|
+
- db/migrate/20181011164429_add_container_nodes.rb
|
260
|
+
- db/migrate/20181011172858_add_source_created_and_deleted_at_timestamps.rb
|
261
|
+
- db/migrate/20181015150921_add_missing_name_to_container_template.rb
|
262
|
+
- db/migrate/20181016141948_add_json_spec_to_parameters_sets.rb
|
263
|
+
- db/migrate/20181018082155_add_archived_on_timestamp_to_all_models.rb
|
264
|
+
- db/migrate/20181018141423_rename_service_parameters_sets_to_service_plans.rb
|
265
|
+
- db/migrate/20181018235055_add_foreign_keys_to_all_models.rb
|
266
|
+
- db/migrate/20181023094055_add_not_null_constraints_to_all_models.rb
|
267
|
+
- db/migrate/20181023102858_add_timestamps_for_parallel_saving.rb
|
268
|
+
- db/migrate/20181023213355_add_tags_and_taggings.rb
|
269
|
+
- db/migrate/20181023215716_change_column_defaults.rb
|
270
|
+
- db/migrate/20181024163850_add_source_type.rb
|
271
|
+
- db/migrate/20181026182144_add_tasks_table.rb
|
272
|
+
- db/migrate/20181102141329_add_ssl_options_to_endpoints.rb
|
273
|
+
- db/migrate/20181102145252_add_regions_and_subscriptions.rb
|
274
|
+
- db/migrate/20181107211649_add_containers.rb
|
275
|
+
- db/migrate/20181108113645_add_tenant_id_to_regions_and_subscriptions.rb
|
276
|
+
- db/migrate/20181109170334_add_not_null_constraints_to_source_type.rb
|
277
|
+
- db/migrate/20181113145803_add_indexes_on_name_column_to_node_and_namespace.rb
|
278
|
+
- db/migrate/20181113182615_add_vms_table.rb
|
279
|
+
- db/migrate/20181113190507_add_orchestration_stacks.rb
|
280
|
+
- db/migrate/20181114094606_add_last_seen_at_to_all_tables.rb
|
281
|
+
- db/migrate/20181114115416_add_refresh_states_and_refresh_state_parts.rb
|
282
|
+
- db/migrate/20181119173228_add_lives_on_to_container_nodes.rb
|
283
|
+
- db/migrate/20181127191451_add_container_images.rb
|
284
|
+
- db/migrate/20181128101451_add_flavors.rb
|
285
|
+
- db/migrate/20181128141221_add_json_schema_to_source_types.rb
|
286
|
+
- db/migrate/20181129150215_rename_archived_on.rb
|
287
|
+
- db/migrate/20181130111723_add_volumes.rb
|
288
|
+
- db/migrate/20181205142648_add_unique_constraint_to_source_uid.rb
|
289
|
+
- db/migrate/20181210164829_add_hardware_attributes_to_flavors.rb
|
290
|
+
- db/migrate/20190102161242_remove_tags_and_taggings.rb
|
291
|
+
- db/migrate/20190102161442_add_taggings_for_all_taggable_tables.rb
|
292
|
+
- db/migrate/20190104213045_rename_authentication_userid_to_username.rb
|
293
|
+
- db/migrate/20190111083026_change_sources_source_type_to_not_null.rb
|
294
|
+
- db/migrate/20190111163026_change_sources_name_to_not_null.rb
|
295
|
+
- db/migrate/20190116164905_add_extra_metadata_and_tags_for_service_offerings.rb
|
296
|
+
- db/migrate/20190118110059_add_service_offering_icons.rb
|
297
|
+
- db/migrate/20190122131958_add_missing_foreign_key_constraint_to_tasks.rb
|
298
|
+
- db/migrate/20190122133424_index_foreign_keys_in_authentications.rb
|
299
|
+
- db/migrate/20190122133425_index_foreign_keys_in_container_groups.rb
|
300
|
+
- db/migrate/20190122133426_index_foreign_keys_in_container_projects.rb
|
301
|
+
- db/migrate/20190122133427_index_foreign_keys_in_container_templates.rb
|
302
|
+
- db/migrate/20190122133428_index_foreign_keys_in_endpoints.rb
|
303
|
+
- db/migrate/20190122133429_index_foreign_keys_in_service_instances.rb
|
304
|
+
- db/migrate/20190122133430_index_foreign_keys_in_service_offerings.rb
|
305
|
+
- db/migrate/20190122133431_index_foreign_keys_in_service_plans.rb
|
306
|
+
- db/migrate/20190122133432_index_foreign_keys_in_sources.rb
|
307
|
+
- db/migrate/20190122153645_remove_extraneous_indexes.rb
|
308
|
+
- db/migrate/20190124140942_add_missing_indexes_for_last_seen_at.rb
|
309
|
+
- db/migrate/20190124154742_add_missing_not_null_constraints_to_source_ref.rb
|
310
|
+
- db/migrate/20190205174227_add_version_to_sources.rb
|
311
|
+
- db/migrate/20190208143909_add_availabilities_table.rb
|
312
|
+
- db/migrate/20190213155142_add_resource_version_to_service_plans.rb
|
313
|
+
- db/migrate/20190218180413_move_tag_value_to_tags.rb
|
314
|
+
- db/migrate/20190218203848_remove_extra_columns_from_tagging_join_tables.rb
|
315
|
+
- db/migrate/20190222171042_add_mac_addresses_and_host_inventory_id_to_vms.rb
|
316
|
+
- db/migrate/20190228103842_add_unique_indexes_to_tag_mapping_tables.rb
|
317
|
+
- db/migrate/20190308144237_add_application_types.rb
|
318
|
+
- db/migrate/20190308145549_add_applications.rb
|
319
|
+
- db/migrate/20190313191654_add_application_type_display_name.rb
|
320
|
+
- db/migrate/20190314123842_add_containers_resource_quotas_table.rb
|
321
|
+
- db/migrate/20190314133842_add_columns_for_containers_capacity_planning_analytics.rb
|
322
|
+
- db/migrate/20190314153151_extract_sources_to_new_service.rb
|
323
|
+
- db/migrate/20190322122542_add_external_url_to_service_instances.rb
|
324
|
+
- db/migrate/20190325115642_external_tenant_must_be_unique_and_not_null.rb
|
325
|
+
- db/migrate/20190401134142_add_last_seen_at_to_all_ingress_exposed_tables.rb
|
326
|
+
- db/migrate/20190514164916_add_clusters.rb
|
327
|
+
- db/migrate/20190514165841_add_hosts.rb
|
328
|
+
- db/migrate/20190522170940_add_datastores.rb
|
329
|
+
- db/migrate/20190522172440_add_datastore_mounts.rb
|
330
|
+
- db/migrate/20190724194551_add_network_adapters.rb
|
331
|
+
- db/migrate/20190729194551_change_network_adapters.rb
|
332
|
+
- db/migrate/20190729214242_add_ipaddresses_subnets_and_networks.rb
|
333
|
+
- db/migrate/20190806112121_add_missing_relation_to_subscription_region_and_stack.rb
|
334
|
+
- db/migrate/20190807102142_add_missing_relation_to_subscription_and_region_to_network_adapter.rb
|
335
|
+
- db/migrate/20190807183701_add_source_collector_status.rb
|
336
|
+
- db/migrate/20190815194221_add_reservations_table.rb
|
337
|
+
- db/migrate/20190926144242_add_service_inventories_table.rb
|
338
|
+
- db/migrate/20190930112142_add_service_offering_and_instance_nodes_tables.rb
|
339
|
+
- db/migrate/20190930162142_add_inventory_relation_to_service_offerings_and_instances.rb
|
340
|
+
- db/migrate/20191002132112_add_root_service_instance_to_service_instances.rb
|
341
|
+
- db/migrate/20191108135108_add_service_credential_tables.rb
|
342
|
+
- db/migrate/20191118181501_add_host_to_vm.rb
|
343
|
+
- db/migrate/20200122181811_add_tenant_to_join_tables.rb
|
344
|
+
- db/migrate/20200213135429_remove_service_credential_references.rb
|
345
|
+
- db/migrate/20200213150314_create_service_credential_types.rb
|
346
|
+
- db/migrate/20200213173958_add_service_credential_type_to_service_credentials.rb
|
347
|
+
- db/migrate/20200214183108_create_join_table_service_offering_service_credentials.rb
|
348
|
+
- db/migrate/20200214183117_create_join_table_service_instance_service_credentials.rb
|
349
|
+
- db/migrate/20200218182928_create_join_table_service_offering_node_service_credentials.rb
|
350
|
+
- db/migrate/20200218183046_create_join_table_service_instance_node_service_credentials.rb
|
351
|
+
- db/migrate/20200313124806_remove_extraneous_index_from_service_credential_join_tables.rb
|
352
|
+
- db/migrate/20200313141215_add_refresh_state_part_to_persisted_models.rb
|
353
|
+
- db/migrate/20200317082640_add_tracking_timestamps_to_refresh_state.rb
|
354
|
+
- db/schema.rb
|
355
|
+
- db/seeds.rb
|
356
|
+
- lib/tasks/topological_inventory_tasks.rake
|
357
|
+
- lib/topological_inventory-core.rb
|
358
|
+
- lib/topological_inventory/core/ar_helper.rb
|
359
|
+
- lib/topological_inventory/core/engine.rb
|
360
|
+
- lib/topological_inventory/core/logging.rb
|
361
|
+
- lib/topological_inventory/core/seed_loader.rb
|
362
|
+
- lib/topological_inventory/core/version.rb
|
363
|
+
- lib/topological_inventory/schema.rb
|
364
|
+
- lib/topological_inventory/schema/base.rb
|
365
|
+
- lib/topological_inventory/schema/default.rb
|
366
|
+
homepage: https://github.com/RedHatInsights/topological_inventory-core
|
367
|
+
licenses:
|
368
|
+
- Apache-2.0
|
369
|
+
metadata: {}
|
370
|
+
post_install_message:
|
371
|
+
rdoc_options: []
|
372
|
+
require_paths:
|
373
|
+
- lib
|
374
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
375
|
+
requirements:
|
376
|
+
- - ">="
|
377
|
+
- !ruby/object:Gem::Version
|
378
|
+
version: '0'
|
379
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
380
|
+
requirements:
|
381
|
+
- - ">="
|
382
|
+
- !ruby/object:Gem::Version
|
383
|
+
version: '0'
|
384
|
+
requirements: []
|
385
|
+
rubygems_version: 3.1.2
|
386
|
+
signing_key:
|
387
|
+
specification_version: 4
|
388
|
+
summary: Core Models and Schema for the Topological Inventory Service.
|
389
|
+
test_files: []
|