Class: GeoblacklightSidecarImages::Install
- Inherits:
-
Rails::Generators::Base
- Object
- Rails::Generators::Base
- GeoblacklightSidecarImages::Install
- Defined in:
- lib/generators/geoblacklight_sidecar_images/install_generator.rb
Instance Method Summary collapse
- #add_settings_vars ⇒ Object
- #bundle_install ⇒ Object
- #generate_action_storage ⇒ Object
- #generate_gblsci_assets ⇒ Object
- #generate_gblsci_config ⇒ Object
- #generate_gblsci_example_docs ⇒ Object
- #generate_gblsci_jobs ⇒ Object
- #generate_gblsci_models ⇒ Object
- #generate_gblsci_views ⇒ Object
Instance Method Details
#add_settings_vars ⇒ Object
16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 |
# File 'lib/generators/geoblacklight_sidecar_images/install_generator.rb', line 16 def add_settings_vars settings_path = "config/settings.yml" unless File.exist?(settings_path) say_status :skip, "config/settings.yml not found", :yellow return end contents = File.read(settings_path) unless contents.include?("GBLSI_THUMBNAIL_FIELD") append_to_file settings_path, <<~YAML # GeoBlacklight Sidecar Images INSTITUTION_LOCAL_NAME: '' INSTITUTION_GEOSERVER_URL: '' PROXY_GEOSERVER_URL: '' PROXY_GEOSERVER_AUTH: 'Basic base64encodedusername:password' GBLSI_THUMBNAIL_FIELD: 'thumbnail_path_ss' # Optional: https://ogm.geo4lib.app/api/v1 (leave blank to harvest locally) GBLSI_OGM_API_URL: '' YAML end return if File.read(settings_path).include?("GBLSI_OGM_API_URL") append_to_file settings_path, <<~YAML # OpenGeoMetadata API thumbnails (optional). When set, views render # OGM thumbnail URLs and skip sidecar harvest / Active Storage. # Example: https://ogm.geo4lib.app/api/v1 GBLSI_OGM_API_URL: '' YAML end |
#bundle_install ⇒ Object
104 105 106 107 108 |
# File 'lib/generators/geoblacklight_sidecar_images/install_generator.rb', line 104 def bundle_install Bundler.with_unbundled_env do run "bundle install" end end |
#generate_action_storage ⇒ Object
96 97 98 |
# File 'lib/generators/geoblacklight_sidecar_images/install_generator.rb', line 96 def generate_action_storage rake "active_storage:install" end |
#generate_gblsci_assets ⇒ Object
50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 |
# File 'lib/generators/geoblacklight_sidecar_images/install_generator.rb', line 50 def generate_gblsci_assets return if [:skip_assets] stylesheet = %w[ app/assets/stylesheets/application.scss app/assets/stylesheets/application.css ].find { |path| File.exist?(path) } unless stylesheet say_status :skip, "No application stylesheet found; import geoblacklight_sidecar_images/gblsci if needed", :yellow return end contents = File.read(stylesheet) return if contents.include?("geoblacklight_sidecar_images/gblsci") if contents.include?("@import 'geoblacklight';") inject_into_file stylesheet, after: "@import 'geoblacklight';\n" do "@import 'geoblacklight_sidecar_images/gblsci';\n" end else append_to_file stylesheet, "\n@import 'geoblacklight_sidecar_images/gblsci';\n" end end |
#generate_gblsci_config ⇒ Object
100 101 102 |
# File 'lib/generators/geoblacklight_sidecar_images/install_generator.rb', line 100 def generate_gblsci_config generate "geoblacklight_sidecar_images:config" end |
#generate_gblsci_example_docs ⇒ Object
75 76 77 |
# File 'lib/generators/geoblacklight_sidecar_images/install_generator.rb', line 75 def generate_gblsci_example_docs generate "geoblacklight_sidecar_images:example_docs" end |
#generate_gblsci_jobs ⇒ Object
79 80 81 |
# File 'lib/generators/geoblacklight_sidecar_images/install_generator.rb', line 79 def generate_gblsci_jobs generate "geoblacklight_sidecar_images:jobs" end |
#generate_gblsci_models ⇒ Object
83 84 85 |
# File 'lib/generators/geoblacklight_sidecar_images/install_generator.rb', line 83 def generate_gblsci_models generate "geoblacklight_sidecar_images:models" end |
#generate_gblsci_views ⇒ Object
87 88 89 90 91 92 93 94 |
# File 'lib/generators/geoblacklight_sidecar_images/install_generator.rb', line 87 def generate_gblsci_views if [:skip_views] say_status :skip, "catalog views", :yellow return end generate "geoblacklight_sidecar_images:views" end |