rake-tasks-docker-setup 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: d5be0c54d517ee6afa78b308546e60fbfdc66208
4
+ data.tar.gz: 6a35adf7b875412fae595f4ea5533322501bc04d
5
+ SHA512:
6
+ metadata.gz: ac60deda5d02c6145f566796477274342e8ada3cc39cff4014c128f0778c64cc06c0e636820511a8fd96827c9ac866f944271f3acd2b5b1482958d6d359972b0
7
+ data.tar.gz: 0229e18b3b145c10877731f6fc91d4611e841cebce6c96718ea578384bbe3759cabb30b81d840a10469a12234086ceb345b851a597a0cd5309a1d348571aea06
@@ -0,0 +1 @@
1
+ Gemfile.lock
data/.rspec ADDED
@@ -0,0 +1,2 @@
1
+ --color
2
+ --require spec_helper
data/Gemfile ADDED
@@ -0,0 +1,4 @@
1
+ source 'https://rubygems.org'
2
+
3
+ # Specify your gem's dependencies in hem-tasks-magento1.gemspec
4
+ gemspec
@@ -0,0 +1 @@
1
+ require "bundler/gem_tasks"
@@ -0,0 +1,2 @@
1
+ require_relative 'rake-tasks-docker-setup/setup'
2
+ require_relative 'rake-tasks-docker-setup/version'
@@ -0,0 +1,13 @@
1
+ require_relative 'setup'
2
+
3
+ namespace :docker do
4
+ task :up => 'docker:first_setup'
5
+
6
+ task :setup do
7
+ RakeTasksDockerSetup::Setup.createOverrides
8
+ end
9
+
10
+ task :first_setup do
11
+ Rake::Task['docker:setup'].invoke unless RakeTasksDockerSetup::Setup.overridesExist?
12
+ end
13
+ end
@@ -0,0 +1,38 @@
1
+ require 'deep_merge'
2
+ require 'yaml'
3
+
4
+ module RakeTasksDockerSetup
5
+ module Setup
6
+ extend self
7
+
8
+ def overridesExist?
9
+ File.exist?('docker-compose.override.yml')
10
+ end
11
+
12
+ def createOverrides
13
+ overrides = merged_overrides
14
+ message = "# This file has been generated by rake-tasks-docker-setup\n"
15
+ File.write('docker-compose.override.yml', message + overrides.to_yaml) unless overrides.empty?
16
+ end
17
+
18
+ private
19
+
20
+ def merged_overrides
21
+ merged_hash = {}
22
+ docker_compose_overrides.each do |overrides|
23
+ merged_hash.deep_merge!(overrides)
24
+ end
25
+ merged_hash
26
+ end
27
+
28
+ def docker_compose_overrides
29
+ docker_compose_files = %w[docker-compose.override.yml.dist]
30
+ docker_compose_files << "docker-compose-dev-#{RUBY_PLATFORM.sub('darwin', 'macos').match(/(macos|linux)/)[1]}.yml"
31
+ if RUBY_PLATFORM =~ /darwin/
32
+ docker_compose_files << 'docker-compose-dev-macos-sync.yml' if %w[true yes y].include? ENV['RAKE_USE_DOCKER_SYNC']
33
+ docker_compose_files << 'docker-compose-dev-macos-delegated.yml' unless %w[true yes y].include? ENV['RAKE_USE_DOCKER_SYNC']
34
+ end
35
+ docker_compose_files.select { |file| File.exist? file }.map { |file| YAML.load_file(file) }
36
+ end
37
+ end
38
+ end
@@ -0,0 +1,3 @@
1
+ module RakeTasksDockerSetup
2
+ VERSION = '0.1.0'
3
+ end
@@ -0,0 +1,25 @@
1
+ # coding: utf-8
2
+ lib = File.expand_path('../lib', __FILE__)
3
+ $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
4
+
5
+ require 'rake-tasks-docker-setup/version'
6
+
7
+ Gem::Specification.new do |spec|
8
+ spec.name = "rake-tasks-docker-setup"
9
+ spec.version = RakeTasksDockerSetup::VERSION
10
+ spec.authors = ["Andy Thompson", "Kieren Evans"]
11
+ spec.email = ["athompson@inviqa.com", "kevans+rake-tasks-docker@inviqa.com"]
12
+
13
+ spec.summary = %q{Docker setup tasks for Rake}
14
+ spec.description = %q{Docker setup tasks for Rake}
15
+ spec.homepage = ""
16
+ spec.licenses = ["MIT"]
17
+
18
+ spec.files = `git ls-files -z`.split("\x0").reject { |f| f.match(%r{^(test|spec|features)/}) }
19
+ spec.require_paths = ["lib"]
20
+
21
+ spec.add_dependency "rake", ">= 10.0", "<= 12"
22
+ spec.add_dependency "deep_merge", "~> 1.0"
23
+
24
+ spec.add_development_dependency "rspec", "~> 3.6"
25
+ end
metadata ADDED
@@ -0,0 +1,103 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: rake-tasks-docker-setup
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.1.0
5
+ platform: ruby
6
+ authors:
7
+ - Andy Thompson
8
+ - Kieren Evans
9
+ autorequire:
10
+ bindir: bin
11
+ cert_chain: []
12
+ date: 2018-02-11 00:00:00.000000000 Z
13
+ dependencies:
14
+ - !ruby/object:Gem::Dependency
15
+ name: rake
16
+ requirement: !ruby/object:Gem::Requirement
17
+ requirements:
18
+ - - ">="
19
+ - !ruby/object:Gem::Version
20
+ version: '10.0'
21
+ - - "<="
22
+ - !ruby/object:Gem::Version
23
+ version: '12'
24
+ type: :runtime
25
+ prerelease: false
26
+ version_requirements: !ruby/object:Gem::Requirement
27
+ requirements:
28
+ - - ">="
29
+ - !ruby/object:Gem::Version
30
+ version: '10.0'
31
+ - - "<="
32
+ - !ruby/object:Gem::Version
33
+ version: '12'
34
+ - !ruby/object:Gem::Dependency
35
+ name: deep_merge
36
+ requirement: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - "~>"
39
+ - !ruby/object:Gem::Version
40
+ version: '1.0'
41
+ type: :runtime
42
+ prerelease: false
43
+ version_requirements: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - "~>"
46
+ - !ruby/object:Gem::Version
47
+ version: '1.0'
48
+ - !ruby/object:Gem::Dependency
49
+ name: rspec
50
+ requirement: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - "~>"
53
+ - !ruby/object:Gem::Version
54
+ version: '3.6'
55
+ type: :development
56
+ prerelease: false
57
+ version_requirements: !ruby/object:Gem::Requirement
58
+ requirements:
59
+ - - "~>"
60
+ - !ruby/object:Gem::Version
61
+ version: '3.6'
62
+ description: Docker setup tasks for Rake
63
+ email:
64
+ - athompson@inviqa.com
65
+ - kevans+rake-tasks-docker@inviqa.com
66
+ executables: []
67
+ extensions: []
68
+ extra_rdoc_files: []
69
+ files:
70
+ - ".gitignore"
71
+ - ".rspec"
72
+ - Gemfile
73
+ - Rakefile
74
+ - lib/rake-tasks-docker-setup.rb
75
+ - lib/rake-tasks-docker-setup/rake_task.rb
76
+ - lib/rake-tasks-docker-setup/setup.rb
77
+ - lib/rake-tasks-docker-setup/version.rb
78
+ - rake-tasks-docker-setup.gemspec
79
+ homepage: ''
80
+ licenses:
81
+ - MIT
82
+ metadata: {}
83
+ post_install_message:
84
+ rdoc_options: []
85
+ require_paths:
86
+ - lib
87
+ required_ruby_version: !ruby/object:Gem::Requirement
88
+ requirements:
89
+ - - ">="
90
+ - !ruby/object:Gem::Version
91
+ version: '0'
92
+ required_rubygems_version: !ruby/object:Gem::Requirement
93
+ requirements:
94
+ - - ">="
95
+ - !ruby/object:Gem::Version
96
+ version: '0'
97
+ requirements: []
98
+ rubyforge_project:
99
+ rubygems_version: 2.4.8
100
+ signing_key:
101
+ specification_version: 4
102
+ summary: Docker setup tasks for Rake
103
+ test_files: []