mirror of
https://github.com/rapid7/metasploitable3.git
synced 2024-07-15 00:01:26 +02:00
28 lines
745 B
Ruby
28 lines
745 B
Ruby
|
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
|