drydocker 0.1.8 → 0.1.9

Sign up to get free protection for your applications and to get access to all the features.
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
-