29 lines
671 B
Ruby
29 lines
671 B
Ruby
# frozen_string_literal: true
|
|
|
|
IMAGE_NAME = 'turniere/backend'
|
|
|
|
namespace :docker do
|
|
desc 'Build docker image'
|
|
task build: :environment, [:tag] do |_, args|
|
|
args.with_defaults(tag: 'latest')
|
|
sh "docker build -t #{IMAGE_NAME}:#{args.tag} ."
|
|
end
|
|
|
|
desc 'Tag docker image with Travis build number'
|
|
task tag: :environment do
|
|
next if ENV['TRAVIS_PULL_REQUEST'] != 'false'
|
|
|
|
tag = "build#{ENV['TRAVIS_BUILD_NUMBER']}"
|
|
sh "docker tag #{IMAGE_NAME} #{IMAGE_NAME}:#{tag}"
|
|
end
|
|
|
|
desc 'Push docker image'
|
|
task push: :environment do
|
|
sh "docker push #{IMAGE_NAME}"
|
|
end
|
|
|
|
desc 'Run TravisCI tasks'
|
|
task travis: %i[build tag push] do
|
|
end
|
|
end
|