class KuberKit::ArtifactsSync::ArtifactUpdater
Constants
- ResolverNotFoundError
Public Instance Methods
add_default_resolvers()
click to toggle source
# File lib/kuber_kit/artifacts_sync/artifact_updater.rb, line 33 def add_default_resolvers use_resolver(git_artifact_resolver, artifact_class: KuberKit::Core::Artifacts::Git) use_resolver(null_artifact_resolver, artifact_class: KuberKit::Core::Artifacts::Local) end
reset!()
click to toggle source
# File lib/kuber_kit/artifacts_sync/artifact_updater.rb, line 38 def reset! @@resolvers = {} end
update(shell, artifact)
click to toggle source
# File lib/kuber_kit/artifacts_sync/artifact_updater.rb, line 21 def update(shell, artifact) add_default_resolvers resolver = @@resolvers[artifact.class] ui.print_debug "ArtifactUpdater", "Updating artifact #{artifact.name.to_s.green}" raise ResolverNotFoundError, "Can't find resolver for artifact #{artifact}" if resolver.nil? resolver.resolve(shell, artifact) end
use_resolver(artifact_resolver, artifact_class:)
click to toggle source
# File lib/kuber_kit/artifacts_sync/artifact_updater.rb, line 11 def use_resolver(artifact_resolver, artifact_class:) @@resolvers ||= {} if !artifact_resolver.is_a?(KuberKit::ArtifactsSync::AbstractArtifactResolver) raise ArgumentError.new("should be an instance of KuberKit::ArtifactsSync::AbstractArtifactResolver, got: #{artifact_resolver.inspect}") end @@resolvers[artifact_class] = artifact_resolver end