Sha256: b7a894269aea7c467445b517c1fa9a3fb95b4627d36bf5a143b5d464c9a8c0f4

Contents?: true

Size: 772 Bytes

Versions: 2

Compression:

Stored size: 772 Bytes

Contents

module DockerCookbook
  class DockerTag < DockerBase
    resource_name :docker_tag

    property :target_repo, String, name_property: true
    property :target_tag, String
    property :to_repo, String
    property :to_tag, String
    property :force, Boolean, default: false

    #########
    # Actions
    #########

    action :tag do
      return if force == false && Docker::Image.exist?("#{to_repo}:#{to_tag}")
      begin
        converge_by "update #{target_repo}:#{target_tag} to #{to_repo}:#{to_tag}" do
          i = Docker::Image.get("#{target_repo}:#{target_tag}")
          i.tag('repo' => to_repo, 'tag' => to_tag, 'force' => force)
        end
      rescue Docker::Error => e
        raise e.message
      end
    end
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
chef-12.8.1 acceptance/top-cookbooks/test_run/docker/libraries/docker_tag.rb
chef-12.8.1-universal-mingw32 acceptance/top-cookbooks/test_run/docker/libraries/docker_tag.rb