diff --git a/config/application.rb b/config/application.rb index ee6d15717..dcd309a5c 100644 --- a/config/application.rb +++ b/config/application.rb @@ -57,7 +57,10 @@ module Consul config.i18n.load_path += Dir[Rails.root.join("config", "locales", "**", "*.{rb,yml}")] config.i18n.load_path += Dir[Rails.root.join("config", "locales", "custom", "**", "*.{rb,yml}")] - config.after_initialize { Globalize.set_fallbacks_to_all_available_locales } + config.after_initialize do + Globalize.set_fallbacks_to_all_available_locales + GraphQLApi::Loader.setup + end config.assets.paths << Rails.root.join("app", "assets", "fonts") config.assets.paths << Rails.root.join("vendor", "assets", "fonts") diff --git a/config/initializers/graphql_api.rb b/config/initializers/graphql_api.rb new file mode 100644 index 000000000..c68334244 --- /dev/null +++ b/config/initializers/graphql_api.rb @@ -0,0 +1,11 @@ +module GraphQLApi + class Loader + def self.setup + if ActiveRecord::Base.connection.tables.any? + api_config = YAML.load_file("./config/api.yml") + GraphqlController.const_set "API_TYPE_DEFINITIONS", + GraphQL::ApiTypesCreator::parse_api_config_file(api_config) + end + end + end +end diff --git a/spec/lib/graphql_spec.rb b/spec/lib/graphql_spec.rb index 6493519ef..aad7624f4 100644 --- a/spec/lib/graphql_spec.rb +++ b/spec/lib/graphql_spec.rb @@ -1,6 +1,6 @@ require "rails_helper" -api_types = GraphQL::ApiTypesCreator.create(API_TYPE_DEFINITIONS) +api_types = GraphQL::ApiTypesCreator.create(GraphqlController::API_TYPE_DEFINITIONS) query_type = GraphQL::QueryTypeCreator.create(api_types) ConsulSchema = GraphQL::Schema.define do query query_type