Sha256: d0747d501a71e5fc0f1103ea45c95bbce4f740caf5379e6f1c69539d7dfa33ce
Contents?: true
Size: 1.27 KB
Versions: 2
Compression:
Stored size: 1.27 KB
Contents
module Script module Layers module Application class ProjectDependencies def self.bootstrap(ctx:, language:, extension_point:, script_name:) dep_manager = Infrastructure::DependencyManager.for(ctx, language, extension_point, script_name) dep_manager.bootstrap end def self.install(ctx:, language:, extension_point:, script_name:) dep_manager = Infrastructure::DependencyManager.for(ctx, language, extension_point, script_name) CLI::UI::Frame.open(ctx.message('script.project_deps.checking_with_npm')) do begin if dep_manager.installed? ctx.puts(ctx.message('script.project_deps.none_required')) else UI::StrictSpinner.spin(ctx.message('script.project_deps.installing')) do |spinner| dep_manager.install spinner.update_title(ctx.message('script.project_deps.installed')) end end true rescue Infrastructure::Errors::DependencyInstallError => e CLI::UI::Frame.with_frame_color_override(:red) do ctx.puts("\n#{e.message}") end raise e end end end end end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
shopify-cli-0.9.1 | lib/project_types/script/layers/application/project_dependencies.rb |
shopify-cli-0.9.0 | lib/project_types/script/layers/application/project_dependencies.rb |