drydocker 0.1.8 → 0.1.9

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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: c81e857defa574fd33b5994325eb4d73c35666dc
4
- data.tar.gz: 22bd9350f6c587a371e672a8470f400c993ce4f4
3
+ metadata.gz: e7295ea94e506672b60d0111d0693e2f1da12bfa
4
+ data.tar.gz: 4506dea9eb88fad9eefbb581b49adf81390176f0
5
5
  SHA512:
6
- metadata.gz: 1a4d059729ac59d60ccf1f8fed30e32ee873ea3c9d5ce50f9e9af9bdfa7795b9ce8e2697aeeee05858cba4b91c7a955eba3ccea6d0a3b9179e42d91c96b8fa9f
7
- data.tar.gz: 7db7b283a741e80ae19319ea2ec12b286cbf5a84ca9f14c9224b6781828a3aa78f0327b08b91350617a62dac32a9077e87e23dbeae309c3dcc759f3e795cde63
6
+ metadata.gz: 6d08ef807e75b9d8d23b26240ac092f0738eb3f0417174b112ce4e747fbb714c16d388f08207019f1a7ecc8c6132ab1b7d2be6543c5d42326cc680c5c85611fe
7
+ data.tar.gz: caf3900c718c90366cbedfa9a4e55625448c545ada7ee37210f08cd39a9e591a49ab49fc478d6bd1b2d10d15cae510c1aeb1a31f1a92ee3de3e367589339e6db
data/.rubocop.yml CHANGED
@@ -3,3 +3,5 @@ FileName:
3
3
  - bin/**
4
4
  - Gemfile
5
5
  - Rakefile
6
+ Style/StringLiterals:
7
+ EnforcedStyle: double_quotes
data/Dockerfile CHANGED
@@ -1,5 +1,9 @@
1
1
  FROM ruby:2.2.0
2
2
  ADD . /drydocker
3
+ RUN apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 36A1D7869245C8950F966E92D8576A8BA88D21E9 \
4
+ && echo deb http://get.docker.io/ubuntu docker main > /etc/apt/sources.list.d/docker.list
5
+ RUN apt-get -yq update && apt-get -yq upgrade
6
+ RUN apt-get -yq install lxc-docker-1.4.1
3
7
  WORKDIR /drydocker
4
8
  RUN bundle install
5
9
  RUN bundle exec rspec spec
data/README.md CHANGED
@@ -38,10 +38,16 @@ the output of `drydocker -h` for more information on the flags to use.
38
38
 
39
39
  ## Links
40
40
 
41
- * Source code: https://github.com/silarsis/drydocker
42
- * Build/Test: https://app.wercker.com/#applications/54b446f6da3a4af764100e91
43
- * Docker container: https://registry.hub.docker.com/u/silarsis/drydocker/
44
- * RubyGem: https://rubygems.org/gems/drydocker
41
+ * Source code: <https://github.com/silarsis/drydocker>
42
+ * Build/Test: <https://app.wercker.com/#applications/54b446f6da3a4af764100e91>
43
+ * Docker container: <https://registry.hub.docker.com/u/silarsis/drydocker/>
44
+ * RubyGem: <https://rubygems.org/gems/drydocker>
45
+
46
+ ## Releasing
47
+
48
+ Checkout the code, make changes, run `rake version:bump:minor`
49
+ (see <https://github.com/technicalpickles/jeweler#version-bumping> for options),
50
+ `git push` - wercker will do the rest.
45
51
 
46
52
  ## Copyright
47
53
 
data/Rakefile CHANGED
@@ -1,51 +1,58 @@
1
1
  # encoding: utf-8
2
2
 
3
- require 'rubygems'
4
- require 'bundler'
3
+ # Monkey patch to add an "unindent" method for heredocs
4
+ class String
5
+ def unindent
6
+ gsub(/^#{scan(/^\s*/).min_by{|l|l.length}}/, "")
7
+ end
8
+ end
9
+
10
+ require "rubygems"
11
+ require "bundler"
5
12
  begin
6
13
  Bundler.setup(:default, :development)
7
14
  rescue Bundler::BundlerError => e
8
15
  $stderr.puts e.message
9
- $stderr.puts 'Run `bundle install` to install missing gems'
16
+ $stderr.puts "Run `bundle install` to install missing gems"
10
17
  exit e.status_code
11
18
  end
12
- require 'rake'
19
+ require "rake"
13
20
 
14
21
  def version
15
- File.exist?('VERSION') ? File.read('VERSION').strip : ''
22
+ File.exist?("VERSION") ? File.read("VERSION").strip : ""
16
23
  end
17
24
 
18
- require 'jeweler'
25
+ require "jeweler"
19
26
  Jeweler::Tasks.new do |gem|
20
- gem.name = 'drydocker'
21
- gem.homepage = 'http://github.com/silarsis/drydocker'
22
- gem.license = 'MIT'
23
- gem.summary = 'Test something in a loop, in a docker container'
24
- gem.description = 'Run tests on change in a docker container continuously'
25
- gem.email = 'kevin@littlejohn.id.au'
26
- gem.authors = ['Kevin Littlejohn']
27
+ gem.name = "drydocker"
28
+ gem.homepage = "http://github.com/silarsis/drydocker"
29
+ gem.license = "MIT"
30
+ gem.summary = "Test something in a loop, in a docker container"
31
+ gem.description = "Run tests on change in a docker container continuously"
32
+ gem.email = "kevin@littlejohn.id.au"
33
+ gem.authors = ["Kevin Littlejohn"]
27
34
  # dependencies defined in Gemfile
28
35
  end
29
36
  Jeweler::RubygemsDotOrgTasks.new
30
37
 
31
- desc 'Code coverage detail'
38
+ desc "Code coverage detail"
32
39
  task :simplecov do
33
- ENV['COVERAGE'] = 'true'
34
- Rake::Task['test'].execute
40
+ ENV["COVERAGE"] = "true"
41
+ Rake::Task["test"].execute
35
42
  end
36
43
 
37
44
  task default: :test
38
45
 
39
- require 'rdoc/task'
46
+ require "rdoc/task"
40
47
  Rake::RDocTask.new do |rdoc|
41
- rdoc.rdoc_dir = 'rdoc'
48
+ rdoc.rdoc_dir = "rdoc"
42
49
  rdoc.title = "drydocker #{version}"
43
- rdoc.rdoc_files.include('README*')
44
- rdoc.rdoc_files.include('lib/**/*.rb')
50
+ rdoc.rdoc_files.include("README*")
51
+ rdoc.rdoc_files.include("lib/**/*.rb")
45
52
  end
46
53
 
47
54
  namespace :build do
48
- desc 'Build the Docker container'
55
+ desc "Build the Docker container"
49
56
  task :docker do
50
57
  system("docker build -t silarsis/drydocker:#{version} .")
51
58
  system("docker tag -f silarsis/drydocker:#{version} silarsis/drydocker:latest")
@@ -53,7 +60,25 @@ namespace :build do
53
60
  end
54
61
 
55
62
  namespace :release do
56
- desc 'Release the Docker container'
63
+ task :create_credentials do
64
+ unless ENV["RUBYGEMS_API_KEY"].nil?
65
+ credfile = File.expand_path("~/.gem/credentials")
66
+ unless File.exist? credfile
67
+ umask = File.umask 0177
68
+ File.write(credfile, <<-EOF.unindent
69
+ ---
70
+ :rubygems_api_key: #{ENV["RUBYGEMS_API_KEY"]}
71
+ EOF
72
+ )
73
+ File.umask umask
74
+ end
75
+ end
76
+ `git config --global user.email kevin@littlejohn.id.au` if `git config user.email`.empty?
77
+ `git config --global user.name "Kevin Littlejohn (Wercker)"` if `git config user.name`.empty?
78
+ `git config --global push.default current` if `git config push.default`.empty?
79
+ `git config --global github.user silarsis` if `git config github.user`.empty?
80
+ end
81
+ desc "Release the Docker container"
57
82
  task :docker do
58
83
  system("docker push silarsis/drydocker:#{version}")
59
84
  end
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.1.8
1
+ 0.1.9
data/bin/drydocker CHANGED
@@ -1,7 +1,7 @@
1
1
  #!/usr/bin/env ruby
2
2
 
3
- require 'drydocker'
4
- require 'optparse'
3
+ require "drydocker"
4
+ require "optparse"
5
5
 
6
6
  # Command line parser to setup options
7
7
  # :name, :command, :image, :entrypoint, :path
@@ -9,35 +9,40 @@ def parse(args)
9
9
  options = Drydocker::Config.default_config
10
10
 
11
11
  opt_parser = OptionParser.new do |opts|
12
- opts.banner = 'Usage: drydocker [options]'
13
- opts.separator ''
14
- opts.separator 'Specific options:'
12
+ opts.banner = "Usage: drydocker [options]"
13
+ opts.separator ""
14
+ opts.separator "Specific options:"
15
15
 
16
- opts.on('-f', '--filename [FILENAME]', 'File of options to load') do |fn|
16
+ opts.on("-f", "--filename [FILENAME]", "File of options to load") do |fn|
17
17
  options.load(fn)
18
18
  end
19
19
 
20
- opts.on('-n', '--name [NAME]', 'Container name to run tests in, default "<imagename>-test"') do |name|
20
+ opts.on("-n", "--name [NAME]",
21
+ "Container name to run tests in, default \"<imagename>-test\"") do |name|
21
22
  options[:name] = name
22
23
  end
23
24
 
24
- opts.on('-c', '--command [COMMAND]', "command to run, default '#{options[:command]}'") do |cmd|
25
+ opts.on("-c", "--command [COMMAND]",
26
+ "command to run, default '#{options[:command]}'") do |cmd|
25
27
  options[:command] = cmd
26
28
  end
27
29
 
28
- opts.on('-i', '--image [IMAGE]', "image to run for testing, default '#{options[:image]}'") do |img|
30
+ opts.on("-i", "--image [IMAGE]",
31
+ "image to run for testing, default '#{options[:image]}'") do |img|
29
32
  options[:image] = img
30
33
  end
31
34
 
32
- opts.on('-e', '--entrypoint [ENTRYPOINT]', 'entrypoint in case you need to override that, default nil') do |entry|
35
+ opts.on("-e", "--entrypoint [ENTRYPOINT]",
36
+ "entrypoint in case you need to override that, default nil") do |entry|
33
37
  options[:entrypoint] = entry
34
38
  end
35
39
 
36
- opts.on('-p', '--path [PATH]', "directory to monitor and mount for testing, default '#{options[:path]}'") do |path|
40
+ opts.on("-p", "--path [PATH]",
41
+ "directory to monitor and mount for testing, default '#{options[:path]}'") do |path|
37
42
  options[:path] = path
38
43
  end
39
44
 
40
- opts.on('-v', '--[no-]verbose', 'verbose output') do |verbose|
45
+ opts.on("-v", "--[no-]verbose", "verbose output") do |verbose|
41
46
  options[:verbose] = verbose
42
47
  end
43
48
  end
data/wercker.yml CHANGED
@@ -1,27 +1,52 @@
1
1
  box: wercker/rvm
2
2
  # Build definition
3
3
  build:
4
- # The steps that will be executed on build
5
- # See the Ruby section on the wercker devcenter:
6
- # http://devcenter.wercker.com/articles/languages/ruby.html
7
- steps:
8
- # Uncomment this to force RVM to use a specific Ruby version
9
- # - rvm-use:
10
- # version: 2.2.0
4
+ # The steps that will be executed on build
5
+ # See the Ruby section on the wercker devcenter:
6
+ # http://devcenter.wercker.com/articles/languages/ruby.html
7
+ steps:
8
+ # Uncomment this to force RVM to use a specific Ruby version
9
+ # - rvm-use:
10
+ # version: 2.2.0
11
11
 
12
- # A step that executes `bundle install` command
13
- - bundle-install
12
+ # A step that executes `bundle install` command
13
+ - bundle-install
14
14
 
15
- # A custom script step, name value is used in the UI
16
- # and the code value contains the command that get executed
17
- - script:
18
- name: echo ruby information
19
- code: |
20
- echo "ruby version $(ruby --version) running"
21
- echo "from location $(which ruby)"
22
- echo -p "gem list: $(gem list)"
15
+ # A custom script step, name value is used in the UI
16
+ # and the code value contains the command that get executed
17
+ - script:
18
+ name: echo ruby information
19
+ code: |
20
+ echo "ruby version $(ruby --version) running"
21
+ echo "from location $(which ruby)"
22
+ echo -p "gem list: $(gem list)"
23
23
 
24
- # Add more steps here:
25
- - script:
26
- name: rspec
27
- code: bundle exec rspec spec
24
+ # Add more steps here:
25
+ - script:
26
+ name: rspec
27
+ code: bundle exec rspec spec
28
+
29
+ - bundle-package
30
+
31
+ after-steps:
32
+ - sherzberg/slack-notify@0.0.11:
33
+ subdomain: littlejohn
34
+ token: $SLACK_TOKEN
35
+ channel: "#deployment"
36
+ username: wercker
37
+
38
+ deploy:
39
+ steps:
40
+ - wercker/add-ssh-key@1.0.1:
41
+ keyname: GITHUB_KEY
42
+ - script:
43
+ name: release
44
+ code: |
45
+ bundle exec rake release:create_credentials
46
+ bundle exec rake release
47
+ after-steps:
48
+ - sherzberg/slack-notify@0.0.11:
49
+ subdomain: littlejohn
50
+ token: $SLACK_TOKEN
51
+ channel: "#deployment"
52
+ username: wercker
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: drydocker
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.8
4
+ version: 0.1.9
5
5
  platform: ruby
6
6
  authors:
7
7
  - Kevin Littlejohn
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-01-16 00:00:00.000000000 Z
11
+ date: 2015-01-23 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: listen
@@ -156,7 +156,6 @@ files:
156
156
  - Rakefile
157
157
  - VERSION
158
158
  - bin/drydocker
159
- - drydocker.gemspec
160
159
  - lib/drydocker.rb
161
160
  - spec/drydocker_spec.rb
162
161
  - spec/spec_helper.rb
@@ -181,7 +180,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
181
180
  version: '0'
182
181
  requirements: []
183
182
  rubyforge_project:
184
- rubygems_version: 2.2.2
183
+ rubygems_version: 2.4.5
185
184
  signing_key:
186
185
  specification_version: 4
187
186
  summary: Test something in a loop, in a docker container
data/drydocker.gemspec DELETED
@@ -1,81 +0,0 @@
1
- # Generated by jeweler
2
- # DO NOT EDIT THIS FILE DIRECTLY
3
- # Instead, edit Jeweler::Tasks in Rakefile, and run 'rake gemspec'
4
- # -*- encoding: utf-8 -*-
5
- # stub: drydocker 0.1.8 ruby lib
6
-
7
- Gem::Specification.new do |s|
8
- s.name = "drydocker"
9
- s.version = "0.1.8"
10
-
11
- s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
12
- s.require_paths = ["lib"]
13
- s.authors = ["Kevin Littlejohn"]
14
- s.date = "2015-01-16"
15
- s.description = "Run tests on change in a docker container continuously"
16
- s.email = "kevin@littlejohn.id.au"
17
- s.executables = ["drydocker"]
18
- s.extra_rdoc_files = [
19
- "LICENSE.txt",
20
- "README.md"
21
- ]
22
- s.files = [
23
- ".dockerignore",
24
- ".document",
25
- ".rubocop.yml",
26
- "Dockerfile",
27
- "Gemfile",
28
- "Gemfile.lock",
29
- "LICENSE.txt",
30
- "README.md",
31
- "Rakefile",
32
- "VERSION",
33
- "bin/drydocker",
34
- "drydocker.gemspec",
35
- "lib/drydocker.rb",
36
- "spec/drydocker_spec.rb",
37
- "spec/spec_helper.rb",
38
- "wercker.yml"
39
- ]
40
- s.homepage = "http://github.com/silarsis/drydocker"
41
- s.licenses = ["MIT"]
42
- s.rubygems_version = "2.2.2"
43
- s.summary = "Test something in a loop, in a docker container"
44
-
45
- if s.respond_to? :specification_version then
46
- s.specification_version = 4
47
-
48
- if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
49
- s.add_runtime_dependency(%q<listen>, ["~> 2.8"])
50
- s.add_runtime_dependency(%q<ptools>, ["~> 1.3"])
51
- s.add_development_dependency(%q<shoulda>, ["~> 3.5"])
52
- s.add_development_dependency(%q<rdoc>, ["~> 3.12"])
53
- s.add_development_dependency(%q<bundler>, ["~> 1.0"])
54
- s.add_development_dependency(%q<jeweler>, ["~> 2.0"])
55
- s.add_development_dependency(%q<simplecov>, ["~> 0.9"])
56
- s.add_development_dependency(%q<rspec>, ["~> 3.1"])
57
- s.add_development_dependency(%q<fuubar>, ["~> 2.0"])
58
- else
59
- s.add_dependency(%q<listen>, ["~> 2.8"])
60
- s.add_dependency(%q<ptools>, ["~> 1.3"])
61
- s.add_dependency(%q<shoulda>, ["~> 3.5"])
62
- s.add_dependency(%q<rdoc>, ["~> 3.12"])
63
- s.add_dependency(%q<bundler>, ["~> 1.0"])
64
- s.add_dependency(%q<jeweler>, ["~> 2.0"])
65
- s.add_dependency(%q<simplecov>, ["~> 0.9"])
66
- s.add_dependency(%q<rspec>, ["~> 3.1"])
67
- s.add_dependency(%q<fuubar>, ["~> 2.0"])
68
- end
69
- else
70
- s.add_dependency(%q<listen>, ["~> 2.8"])
71
- s.add_dependency(%q<ptools>, ["~> 1.3"])
72
- s.add_dependency(%q<shoulda>, ["~> 3.5"])
73
- s.add_dependency(%q<rdoc>, ["~> 3.12"])
74
- s.add_dependency(%q<bundler>, ["~> 1.0"])
75
- s.add_dependency(%q<jeweler>, ["~> 2.0"])
76
- s.add_dependency(%q<simplecov>, ["~> 0.9"])
77
- s.add_dependency(%q<rspec>, ["~> 3.1"])
78
- s.add_dependency(%q<fuubar>, ["~> 2.0"])
79
- end
80
- end
81
-