rultor 0.1.0

Sign up to get free protection for your applications and to get access to all the features.
data/.coveralls.yml ADDED
@@ -0,0 +1,2 @@
1
+ service_name: travis-pro
2
+ repo_token: RSacYiWLQuM3NVYduzPjnDMik2Tpv5gtc
data/.gitignore ADDED
@@ -0,0 +1,7 @@
1
+ coverage/
2
+ Gemfile.lock
3
+ .idea/
4
+ *.gem
5
+ .bundle/
6
+ .DS_Store
7
+ rdoc/
data/.rubocop.yml ADDED
@@ -0,0 +1,2 @@
1
+ MethodLength:
2
+ Max: 30
data/.rultor.yml ADDED
@@ -0,0 +1,16 @@
1
+ assets:
2
+ rubygems.yml: "yegor256/home#assets/rubygems.yml"
3
+ s3cfg: "yegor256/home#assets/s3cfg"
4
+
5
+ release:
6
+ script: |
7
+ sudo bundle install
8
+ rake
9
+ rm -rf *.gem
10
+ sed -i "s/1\.0\.snapshot/${tag}/g" lib/rultor/version.rb
11
+ gem build rultor.gemspec
12
+ chmod 0600 ../rubygems.yml
13
+ gem push *.gem --config-file ../rubygems.yml
14
+ gem install pdd
15
+ pdd --source=$(pwd) --verbose --file=rultor-remote.xml
16
+ s3cmd --no-progress put rultor-remote.xml --config=../s3cfg s3://pdd.teamed.io/rltor-remote.xml
data/.simplecov ADDED
@@ -0,0 +1,41 @@
1
+ # encoding: utf-8
2
+ #
3
+ # Copyright (c) 2009-2014, rultor.com
4
+ # All rights reserved.
5
+ #
6
+ # Redistribution and use in source and binary forms, with or without
7
+ # modification, are permitted provided that the following conditions
8
+ # are met: 1) Redistributions of source code must retain the above
9
+ # copyright notice, this list of conditions and the following
10
+ # disclaimer. 2) Redistributions in binary form must reproduce the above
11
+ # copyright notice, this list of conditions and the following
12
+ # disclaimer in the documentation and/or other materials provided
13
+ # with the distribution. 3) Neither the name of the rultor.com nor
14
+ # the names of its contributors may be used to endorse or promote
15
+ # products derived from this software without specific prior written
16
+ # permission.
17
+ #
18
+ # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
19
+ # "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT
20
+ # NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
21
+ # FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL
22
+ # THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
23
+ # INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
24
+ # (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
25
+ # SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
26
+ # HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
27
+ # STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
28
+ # ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
29
+ # OF THE POSSIBILITY OF SUCH DAMAGE.
30
+
31
+ require 'coveralls'
32
+
33
+ SimpleCov.formatter = SimpleCov::Formatter::MultiFormatter[
34
+ SimpleCov::Formatter::HTMLFormatter,
35
+ Coveralls::SimpleCov::Formatter
36
+ ]
37
+ SimpleCov.start do
38
+ add_filter "/test/"
39
+ add_filter "/features/"
40
+ minimum_coverage 100
41
+ end
data/.travis.yml ADDED
@@ -0,0 +1,12 @@
1
+ language: ruby
2
+ cache: bundler
3
+ branches:
4
+ only:
5
+ - master
6
+ install:
7
+ - sudo apt-get update
8
+ - travis_retry sudo apt-get install -y --fix-missing libmagic1 libmagic-dev
9
+ - travis_retry bundle install
10
+ script:
11
+ - rake
12
+
data/Gemfile ADDED
@@ -0,0 +1,32 @@
1
+ # encoding: utf-8
2
+ #
3
+ # Copyright (c) 2009-2014, rultor.com
4
+ # All rights reserved.
5
+ #
6
+ # Redistribution and use in source and binary forms, with or without
7
+ # modification, are permitted provided that the following conditions
8
+ # are met: 1) Redistributions of source code must retain the above
9
+ # copyright notice, this list of conditions and the following
10
+ # disclaimer. 2) Redistributions in binary form must reproduce the above
11
+ # copyright notice, this list of conditions and the following
12
+ # disclaimer in the documentation and/or other materials provided
13
+ # with the distribution. 3) Neither the name of the rultor.com nor
14
+ # the names of its contributors may be used to endorse or promote
15
+ # products derived from this software without specific prior written
16
+ # permission.
17
+ #
18
+ # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
19
+ # "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT
20
+ # NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
21
+ # FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL
22
+ # THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
23
+ # INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
24
+ # (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
25
+ # SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
26
+ # HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
27
+ # STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
28
+ # ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
29
+ # OF THE POSSIBILITY OF SUCH DAMAGE.
30
+
31
+ source 'https://rubygems.org'
32
+ gemspec
data/LICENSE.txt ADDED
@@ -0,0 +1,27 @@
1
+ Copyright (c) 2009-2014, rultor.com
2
+ All rights reserved.
3
+
4
+ Redistribution and use in source and binary forms, with or without
5
+ modification, are permitted provided that the following conditions
6
+ are met: 1) Redistributions of source code must retain the above
7
+ copyright notice, this list of conditions and the following
8
+ disclaimer. 2) Redistributions in binary form must reproduce the above
9
+ copyright notice, this list of conditions and the following
10
+ disclaimer in the documentation and/or other materials provided
11
+ with the distribution. 3) Neither the name of the rultor.com nor
12
+ the names of its contributors may be used to endorse or promote
13
+ products derived from this software without specific prior written
14
+ permission.
15
+
16
+ THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
17
+ "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT
18
+ NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
19
+ FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL
20
+ THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
21
+ INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
22
+ (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
23
+ SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
24
+ HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
25
+ STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
26
+ ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
27
+ OF THE POSSIBILITY OF SUCH DAMAGE.
data/README.md ADDED
@@ -0,0 +1,20 @@
1
+ [![Made By Teamed.io](http://img.teamed.io/btn.svg)](http://www.teamed.io)
2
+ [![DevOps By Rultor.com](http://www.rultor.com/b/yegor256/rultor-remote)](http://www.rultor.com/p/yegor256/rultor-remote)
3
+
4
+ [![Build Status](https://travis-ci.org/yegor256/rultor-remote.svg)](https://travis-ci.org/yegor256/rultor-remote)
5
+ [![Gem Version](https://badge.fury.io/rb/rultor.svg)](http://badge.fury.io/rb/rultor)
6
+ [![Dependency Status](https://gemnasium.com/yegor256/rultor-remote.svg)](https://gemnasium.com/yegor256/rultor-remote)
7
+ [![Code Climate](http://img.shields.io/codeclimate/github/yegor256/rultor-remote.svg)](https://codeclimate.com/github/yegor256/rultor-remote)
8
+ [![Coverage Status](https://img.shields.io/coveralls/yegor256/rultor-remote.svg)](https://coveralls.io/r/yegor256/rultor-remote)
9
+
10
+ Install it first:
11
+
12
+ ```bash
13
+ gem install rultor
14
+ ```
15
+
16
+ Run it locally and read its output:
17
+
18
+ ```bash
19
+ rultor --help
20
+ ```
data/Rakefile ADDED
@@ -0,0 +1,78 @@
1
+ # encoding: utf-8
2
+ #
3
+ # Copyright (c) 2009-2014, rultor.com
4
+ # All rights reserved.
5
+ #
6
+ # Redistribution and use in source and binary forms, with or without
7
+ # modification, are permitted provided that the following conditions
8
+ # are met: 1) Redistributions of source code must retain the above
9
+ # copyright notice, this list of conditions and the following
10
+ # disclaimer. 2) Redistributions in binary form must reproduce the above
11
+ # copyright notice, this list of conditions and the following
12
+ # disclaimer in the documentation and/or other materials provided
13
+ # with the distribution. 3) Neither the name of the rultor.com nor
14
+ # the names of its contributors may be used to endorse or promote
15
+ # products derived from this software without specific prior written
16
+ # permission.
17
+ #
18
+ # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
19
+ # "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT
20
+ # NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
21
+ # FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL
22
+ # THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
23
+ # INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
24
+ # (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
25
+ # SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
26
+ # HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
27
+ # STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
28
+ # ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
29
+ # OF THE POSSIBILITY OF SUCH DAMAGE.
30
+
31
+ require 'rubygems'
32
+ require 'rake'
33
+ require 'rdoc'
34
+ require 'rake/clean'
35
+
36
+ CLEAN = FileList['coverage', 'rdoc']
37
+
38
+ def name
39
+ @name ||= File.basename(Dir['*.gemspec'].first, '.*')
40
+ end
41
+
42
+ def version
43
+ Gem::Specification.load(Dir['*.gemspec'].first).version
44
+ end
45
+
46
+ task default: [:clean, :test, :features, :rubocop]
47
+
48
+ require 'rake/testtask'
49
+ desc 'Run all unit tests'
50
+ Rake::TestTask.new(:test) do |test|
51
+ test.libs << 'lib' << 'test'
52
+ test.pattern = 'test/**/test_*.rb'
53
+ test.verbose = false
54
+ end
55
+
56
+ require 'rdoc/task'
57
+ desc 'Build RDoc documentation'
58
+ Rake::RDocTask.new do |rdoc|
59
+ rdoc.rdoc_dir = 'rdoc'
60
+ rdoc.title = "#{name} #{version}"
61
+ rdoc.rdoc_files.include('README*')
62
+ rdoc.rdoc_files.include('lib/**/*.rb')
63
+ end
64
+
65
+ require 'rubocop/rake_task'
66
+ desc 'Run RuboCop on all directories'
67
+ RuboCop::RakeTask.new(:rubocop) do |task|
68
+ task.fail_on_error = true
69
+ task.requires << 'rubocop-rspec'
70
+ end
71
+
72
+ require 'cucumber/rake/task'
73
+ Cucumber::Rake::Task.new(:features) do |t|
74
+ t.profile = 'travis'
75
+ end
76
+ Cucumber::Rake::Task.new(:"features:html") do |t|
77
+ t.profile = 'html_report'
78
+ end
data/bin/rultor ADDED
@@ -0,0 +1,51 @@
1
+ #!/usr/bin/env ruby
2
+ # encoding: utf-8
3
+ #
4
+ # Copyright (c) 2009-2014, rultor.com
5
+ # All rights reserved.
6
+ #
7
+ # Redistribution and use in source and binary forms, with or without
8
+ # modification, are permitted provided that the following conditions
9
+ # are met: 1) Redistributions of source code must retain the above
10
+ # copyright notice, this list of conditions and the following
11
+ # disclaimer. 2) Redistributions in binary form must reproduce the above
12
+ # copyright notice, this list of conditions and the following
13
+ # disclaimer in the documentation and/or other materials provided
14
+ # with the distribution. 3) Neither the name of the rultor.com nor
15
+ # the names of its contributors may be used to endorse or promote
16
+ # products derived from this software without specific prior written
17
+ # permission.
18
+ #
19
+ # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
20
+ # "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT
21
+ # NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
22
+ # FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL
23
+ # THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
24
+ # INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
25
+ # (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
26
+ # SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
27
+ # HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
28
+ # STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
29
+ # ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
30
+ # OF THE POSSIBILITY OF SUCH DAMAGE.
31
+
32
+ STDOUT.sync = true
33
+
34
+ require 'rultor'
35
+ require 'slop'
36
+ require 'rultor/version'
37
+ require 'rultor/encrypt'
38
+
39
+ Slop.parse(ARGV, strict: true, help: true) do
40
+ banner "Usage (#{Rultor::VERSION}): rultor command [options]"
41
+ on :v, 'Print the version' do
42
+ puts Rultor::VERSION
43
+ end
44
+ command 'encrypt' do
45
+ description 'Encrypt a file'
46
+ on :p=, :project, 'Project name'
47
+ run do |opts, args|
48
+ Rultor::Encrypt.new(opts[:project], args.first).run
49
+ end
50
+ end
51
+ end
data/cucumber.yml ADDED
@@ -0,0 +1,3 @@
1
+ default: --format pretty
2
+ travis: --format progress
3
+ html_report: --format progress --format html --out=features_report.html
@@ -0,0 +1,12 @@
1
+ Feature: Command Line Processing
2
+ As an owner of a repository I want to have an
3
+ ability to encrypt my files
4
+
5
+ Scenario: Simple encrypting
6
+ Given I have a "credentials" file with content:
7
+ """
8
+ some secret
9
+ """
10
+ When I run bin/rultor with "encrypt -p test/test credentials"
11
+ Then Exit code is zero
12
+ And Stdout contains "credentials.asc"
@@ -0,0 +1,8 @@
1
+ Feature: Help Banner
2
+ As an owner of a repository I want to have an
3
+ ability to read help
4
+
5
+ Scenario: Help can be printed
6
+ When I run bin/rultor with "-h"
7
+ Then Exit code is zero
8
+ And Stdout contains "Display this help message"
@@ -0,0 +1,8 @@
1
+ Feature: Help Banner
2
+ As an owner of a repository I want to have an
3
+ ability to read help
4
+
5
+ Scenario: Help can be printed
6
+ When I run bin/rultor with "-v"
7
+ Then Exit code is zero
8
+ And Stdout contains "1.0.snapshot"
@@ -0,0 +1,22 @@
1
+ Feature: Gem Package
2
+ As a source code writer I want to be able to
3
+ package the Gem into .gem file
4
+
5
+ Scenario: Gem can be packaged
6
+ Given I have a "execs.rb" file with content:
7
+ """
8
+ #!/usr/bin/env ruby
9
+ require 'rubygems'
10
+ spec = Gem::Specification::load('./spec.rb')
11
+ fail 'no executables' if spec.executables.empty?
12
+ """
13
+ When I run bash with
14
+ """
15
+ set -e
16
+ cd rultor
17
+ gem build rultor.gemspec
18
+ gem specification --ruby rultor-*.gem > ../spec.rb
19
+ cd ..
20
+ ruby execs.rb
21
+ """
22
+ Then Exit code is zero
@@ -0,0 +1,78 @@
1
+ # encoding: utf-8
2
+ #
3
+ # Copyright (c) 2009-2014, rultor.com
4
+ # All rights reserved.
5
+ #
6
+ # Redistribution and use in source and binary forms, with or without
7
+ # modification, are permitted provided that the following conditions
8
+ # are met: 1) Redistributions of source code must retain the above
9
+ # copyright notice, this list of conditions and the following
10
+ # disclaimer. 2) Redistributions in binary form must reproduce the above
11
+ # copyright notice, this list of conditions and the following
12
+ # disclaimer in the documentation and/or other materials provided
13
+ # with the distribution. 3) Neither the name of the rultor.com nor
14
+ # the names of its contributors may be used to endorse or promote
15
+ # products derived from this software without specific prior written
16
+ # permission.
17
+ #
18
+ # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
19
+ # "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT
20
+ # NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
21
+ # FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL
22
+ # THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
23
+ # INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
24
+ # (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
25
+ # SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
26
+ # HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
27
+ # STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
28
+ # ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
29
+ # OF THE POSSIBILITY OF SUCH DAMAGE.
30
+
31
+ require 'rultor'
32
+ require 'tmpdir'
33
+ require 'English'
34
+
35
+ Before do
36
+ @cwd = Dir.pwd
37
+ @dir = Dir.mktmpdir('test')
38
+ FileUtils.mkdir_p(@dir) unless File.exist?(@dir)
39
+ Dir.chdir(@dir)
40
+ end
41
+
42
+ After do
43
+ Dir.chdir(@cwd)
44
+ FileUtils.rm_rf(@dir) if File.exist?(@dir)
45
+ end
46
+
47
+ Given(/^I have a "([^"]*)" file with content:$/) do |file, text|
48
+ FileUtils.mkdir_p(File.dirname(file)) unless File.exist?(file)
49
+ File.open(file, 'w') do |f|
50
+ f.write(text)
51
+ end
52
+ end
53
+
54
+ When(/^I run bin\/rultor with "([^"]*)"$/) do |arg|
55
+ home = File.join(File.dirname(__FILE__), '../..')
56
+ @stdout = `ruby -I#{home}/lib #{home}/bin/rultor #{arg} 2>&1`
57
+ @exitstatus = $CHILD_STATUS.exitstatus
58
+ end
59
+
60
+ Then(/^Stdout contains "([^"]*)"$/) do |txt|
61
+ unless @stdout.include?(txt)
62
+ fail "STDOUT doesn't contain '#{txt}':\n#{@stdout}"
63
+ end
64
+ end
65
+
66
+ Then(/^Exit code is zero$/) do
67
+ fail "Non-zero exit code #{@exitstatus}:\n#{@stdout}" unless @exitstatus == 0
68
+ end
69
+
70
+ Then(/^Exit code is not zero$/) do
71
+ fail "Zero exit code:\n#{@stdout}" if @exitstatus == 0
72
+ end
73
+
74
+ When(/^I run bash with$/) do |text|
75
+ FileUtils.copy_entry(@cwd, File.join(@dir, 'rultor'))
76
+ @stdout = `#{text}`
77
+ @exitstatus = $CHILD_STATUS.exitstatus
78
+ end
@@ -0,0 +1,35 @@
1
+ # encoding: utf-8
2
+ #
3
+ # Copyright (c) 2009-2014, rultor.com
4
+ # All rights reserved.
5
+ #
6
+ # Redistribution and use in source and binary forms, with or without
7
+ # modification, are permitted provided that the following conditions
8
+ # are met: 1) Redistributions of source code must retain the above
9
+ # copyright notice, this list of conditions and the following
10
+ # disclaimer. 2) Redistributions in binary form must reproduce the above
11
+ # copyright notice, this list of conditions and the following
12
+ # disclaimer in the documentation and/or other materials provided
13
+ # with the distribution. 3) Neither the name of the rultor.com nor
14
+ # the names of its contributors may be used to endorse or promote
15
+ # products derived from this software without specific prior written
16
+ # permission.
17
+ #
18
+ # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
19
+ # "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT
20
+ # NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
21
+ # FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL
22
+ # THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
23
+ # INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
24
+ # (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
25
+ # SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
26
+ # HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
27
+ # STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
28
+ # ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
29
+ # OF THE POSSIBILITY OF SUCH DAMAGE.
30
+
31
+ require 'simplecov'
32
+ require 'rultor'
33
+
34
+ Rultor.log.info 'logging to stdout'
35
+ Rultor.log = Logger.new(STDOUT)
@@ -0,0 +1,61 @@
1
+ # encoding: utf-8
2
+ #
3
+ # Copyright (c) 2009-2014, rultor.com
4
+ # All rights reserved.
5
+ #
6
+ # Redistribution and use in source and binary forms, with or without
7
+ # modification, are permitted provided that the following conditions
8
+ # are met: 1) Redistributions of source code must retain the above
9
+ # copyright notice, this list of conditions and the following
10
+ # disclaimer. 2) Redistributions in binary form must reproduce the above
11
+ # copyright notice, this list of conditions and the following
12
+ # disclaimer in the documentation and/or other materials provided
13
+ # with the distribution. 3) Neither the name of the rultor.com nor
14
+ # the names of its contributors may be used to endorse or promote
15
+ # products derived from this software without specific prior written
16
+ # permission.
17
+ #
18
+ # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
19
+ # "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT
20
+ # NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
21
+ # FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL
22
+ # THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
23
+ # INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
24
+ # (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
25
+ # SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
26
+ # HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
27
+ # STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
28
+ # ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
29
+ # OF THE POSSIBILITY OF SUCH DAMAGE.
30
+
31
+ require 'English'
32
+
33
+ # Rultor main module.
34
+ # Author:: Yegor Bugayenko (yegor@teamed.io)
35
+ # Copyright:: Copyright (c) 2014 Yegor Bugayenko
36
+ # License:: BSD
37
+ module Rultor
38
+ # Encrypting command
39
+ class Encrypt
40
+ def initialize(name, file)
41
+ @name = name
42
+ @file = file
43
+ @dest = "#{@file}.asc"
44
+ end
45
+
46
+ def run
47
+ system(
48
+ "
49
+ set -x
50
+ set -e
51
+ gpg --keyserver hkp://pool.sks-keyservers.net \
52
+ --verbose --recv-keys 9AF0FA4C
53
+ gpg --trust-model always --output '#{@dest}' \
54
+ --batch --armor --encrypt --verbose --recipient 9AF0FA4C '#{@file}'
55
+ "
56
+ )
57
+ fail 'Failed to PGP encrypt' unless $CHILD_STATUS.exitstatus == 0
58
+ Rultor.log.info "#{@file} encrypted"
59
+ end
60
+ end
61
+ end
@@ -0,0 +1,37 @@
1
+ # encoding: utf-8
2
+ #
3
+ # Copyright (c) 2009-2014, rultor.com
4
+ # All rights reserved.
5
+ #
6
+ # Redistribution and use in source and binary forms, with or without
7
+ # modification, are permitted provided that the following conditions
8
+ # are met: 1) Redistributions of source code must retain the above
9
+ # copyright notice, this list of conditions and the following
10
+ # disclaimer. 2) Redistributions in binary form must reproduce the above
11
+ # copyright notice, this list of conditions and the following
12
+ # disclaimer in the documentation and/or other materials provided
13
+ # with the distribution. 3) Neither the name of the rultor.com nor
14
+ # the names of its contributors may be used to endorse or promote
15
+ # products derived from this software without specific prior written
16
+ # permission.
17
+ #
18
+ # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
19
+ # "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT
20
+ # NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
21
+ # FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL
22
+ # THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
23
+ # INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
24
+ # (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
25
+ # SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
26
+ # HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
27
+ # STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
28
+ # ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
29
+ # OF THE POSSIBILITY OF SUCH DAMAGE.
30
+
31
+ # Rultor main module.
32
+ # Author:: Yegor Bugayenko (yegor@teamed.io)
33
+ # Copyright:: Copyright (c) 2014 Yegor Bugayenko
34
+ # License:: BSD
35
+ module Rultor
36
+ VERSION = '0.1.0'
37
+ end
data/lib/rultor.rb ADDED
@@ -0,0 +1,52 @@
1
+ # encoding: utf-8
2
+ #
3
+ # Copyright (c) 2009-2014, rultor.com
4
+ # All rights reserved.
5
+ #
6
+ # Redistribution and use in source and binary forms, with or without
7
+ # modification, are permitted provided that the following conditions
8
+ # are met: 1) Redistributions of source code must retain the above
9
+ # copyright notice, this list of conditions and the following
10
+ # disclaimer. 2) Redistributions in binary form must reproduce the above
11
+ # copyright notice, this list of conditions and the following
12
+ # disclaimer in the documentation and/or other materials provided
13
+ # with the distribution. 3) Neither the name of the rultor.com nor
14
+ # the names of its contributors may be used to endorse or promote
15
+ # products derived from this software without specific prior written
16
+ # permission.
17
+ #
18
+ # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
19
+ # "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT
20
+ # NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
21
+ # FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL
22
+ # THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
23
+ # INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
24
+ # (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
25
+ # SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
26
+ # HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
27
+ # STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
28
+ # ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
29
+ # OF THE POSSIBILITY OF SUCH DAMAGE.
30
+
31
+ require 'logger'
32
+
33
+ # RULTOR main module.
34
+ # Author:: Yegor Bugayenko (yegor@teamed.io)
35
+ # Copyright:: Copyright (c) 2014 Yegor Bugayenko
36
+ # License:: BSD
37
+ module Rultor
38
+ # Get logger.
39
+ def self.log
40
+ unless @log
41
+ @log = Logger.new(STDOUT)
42
+ @log.formatter = proc { |_, _, _, msg|
43
+ puts "#{msg.dump}"
44
+ }
45
+ end
46
+ @log
47
+ end
48
+
49
+ class << self
50
+ attr_writer :log
51
+ end
52
+ end
data/rultor.gemspec ADDED
@@ -0,0 +1,64 @@
1
+ # encoding: utf-8
2
+ #
3
+ # Copyright (c) 2009-2014, rultor.com
4
+ # All rights reserved.
5
+ #
6
+ # Redistribution and use in source and binary forms, with or without
7
+ # modification, are permitted provided that the following conditions
8
+ # are met: 1) Redistributions of source code must retain the above
9
+ # copyright notice, this list of conditions and the following
10
+ # disclaimer. 2) Redistributions in binary form must reproduce the above
11
+ # copyright notice, this list of conditions and the following
12
+ # disclaimer in the documentation and/or other materials provided
13
+ # with the distribution. 3) Neither the name of the rultor.com nor
14
+ # the names of its contributors may be used to endorse or promote
15
+ # products derived from this software without specific prior written
16
+ # permission.
17
+ #
18
+ # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
19
+ # "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT
20
+ # NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
21
+ # FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL
22
+ # THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
23
+ # INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
24
+ # (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
25
+ # SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
26
+ # HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
27
+ # STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
28
+ # ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
29
+ # OF THE POSSIBILITY OF SUCH DAMAGE.
30
+
31
+ lib = File.expand_path('../lib', __FILE__)
32
+ $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
33
+ require 'rultor/version'
34
+
35
+ Gem::Specification.new do |s|
36
+ s.specification_version = 2 if s.respond_to? :specification_version=
37
+ if s.respond_to? :required_rubygems_version=
38
+ s.required_rubygems_version = Gem::Requirement.new('>= 0')
39
+ end
40
+ s.rubygems_version = '2.2.2'
41
+ s.required_ruby_version = '>= 1.9.3'
42
+ s.name = 'rultor'
43
+ s.version = Rultor::VERSION
44
+ s.license = 'BSD'
45
+ s.summary = 'Rultor.com Remote Control'
46
+ s.description = 'Command line remote control of www.rultor.com'
47
+ s.authors = ['Yegor Bugayenko']
48
+ s.email = 'yegor@teamed.io'
49
+ s.homepage = 'http://github.com/yegor256/rultor-remote'
50
+ s.files = `git ls-files`.split($RS)
51
+ s.executables = s.files.grep(/^bin\//) { |f| File.basename(f) }
52
+ s.test_files = s.files.grep(/^(test|spec|features)\//)
53
+ s.rdoc_options = ['--charset=UTF-8']
54
+ s.extra_rdoc_files = %w(README.md LICENSE.txt)
55
+ s.add_runtime_dependency 'rake', '~> 10.1'
56
+ s.add_runtime_dependency 'slop', '~> 3.6'
57
+ s.add_development_dependency 'coveralls', '~> 0.7', '>= 0.7.0'
58
+ s.add_development_dependency 'rdoc', '~> 3.11'
59
+ s.add_development_dependency 'cucumber', '1.3.11'
60
+ s.add_development_dependency 'minitest', '~> 5.4', '>= 5.4.0'
61
+ s.add_development_dependency 'rubocop', '~> 0.24', '>= 0.24.1'
62
+ s.add_development_dependency 'rubocop-rspec', '~> 1.1', '>= 1.1.0'
63
+ s.add_development_dependency 'rspec-rails', '~> 2.13'
64
+ end
@@ -0,0 +1,50 @@
1
+ # encoding: utf-8
2
+ #
3
+ # Copyright (c) 2009-2014, rultor.com
4
+ # All rights reserved.
5
+ #
6
+ # Redistribution and use in source and binary forms, with or without
7
+ # modification, are permitted provided that the following conditions
8
+ # are met: 1) Redistributions of source code must retain the above
9
+ # copyright notice, this list of conditions and the following
10
+ # disclaimer. 2) Redistributions in binary form must reproduce the above
11
+ # copyright notice, this list of conditions and the following
12
+ # disclaimer in the documentation and/or other materials provided
13
+ # with the distribution. 3) Neither the name of the rultor.com nor
14
+ # the names of its contributors may be used to endorse or promote
15
+ # products derived from this software without specific prior written
16
+ # permission.
17
+ #
18
+ # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
19
+ # "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT
20
+ # NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
21
+ # FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL
22
+ # THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
23
+ # INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
24
+ # (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
25
+ # SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
26
+ # HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
27
+ # STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
28
+ # ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
29
+ # OF THE POSSIBILITY OF SUCH DAMAGE.
30
+
31
+ require 'minitest/autorun'
32
+ require 'rultor'
33
+ require 'rultor/encrypt'
34
+ require 'tmpdir'
35
+
36
+ # Rultor encryption.
37
+ # Author:: Yegor Bugayenko (yegor@teamed.io)
38
+ # Copyright:: Copyright (c) 2014 Yegor Bugayenko
39
+ # License:: BSD
40
+ class TestEncrypt < Minitest::Test
41
+ def test_basic_encryption
42
+ Dir.mktmpdir 'test' do |dir|
43
+ file = File.join(dir, 'secret.txt')
44
+ File.write(file, 'hello, world!')
45
+ Rultor::Encrypt.new('test', file).run
46
+ asc = File.join(dir, 'secret.txt.asc')
47
+ assert_equal true, File.exist?(asc)
48
+ end
49
+ end
50
+ end
@@ -0,0 +1,44 @@
1
+ # encoding: utf-8
2
+ #
3
+ # Copyright (c) 2009-2014, rultor.com
4
+ # All rights reserved.
5
+ #
6
+ # Redistribution and use in source and binary forms, with or without
7
+ # modification, are permitted provided that the following conditions
8
+ # are met: 1) Redistributions of source code must retain the above
9
+ # copyright notice, this list of conditions and the following
10
+ # disclaimer. 2) Redistributions in binary form must reproduce the above
11
+ # copyright notice, this list of conditions and the following
12
+ # disclaimer in the documentation and/or other materials provided
13
+ # with the distribution. 3) Neither the name of the rultor.com nor
14
+ # the names of its contributors may be used to endorse or promote
15
+ # products derived from this software without specific prior written
16
+ # permission.
17
+ #
18
+ # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
19
+ # "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT
20
+ # NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
21
+ # FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL
22
+ # THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
23
+ # INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
24
+ # (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
25
+ # SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
26
+ # HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
27
+ # STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
28
+ # ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
29
+ # OF THE POSSIBILITY OF SUCH DAMAGE.
30
+
31
+ require 'minitest/autorun'
32
+ require 'rultor'
33
+ require 'tmpdir'
34
+ require 'slop'
35
+
36
+ # Rultor main module test.
37
+ # Author:: Yegor Bugayenko (yegor@teamed.io)
38
+ # Copyright:: Copyright (c) 2014 Yegor Bugayenko
39
+ # License:: BSD
40
+ class TestRultor < Minitest::Test
41
+ def test_basic
42
+ Rultor.log.info 'log works'
43
+ end
44
+ end
metadata ADDED
@@ -0,0 +1,249 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: rultor
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.1.0
5
+ prerelease:
6
+ platform: ruby
7
+ authors:
8
+ - Yegor Bugayenko
9
+ autorequire:
10
+ bindir: bin
11
+ cert_chain: []
12
+ date: 2014-09-29 00:00:00.000000000 Z
13
+ dependencies:
14
+ - !ruby/object:Gem::Dependency
15
+ name: rake
16
+ requirement: !ruby/object:Gem::Requirement
17
+ none: false
18
+ requirements:
19
+ - - ~>
20
+ - !ruby/object:Gem::Version
21
+ version: '10.1'
22
+ type: :runtime
23
+ prerelease: false
24
+ version_requirements: !ruby/object:Gem::Requirement
25
+ none: false
26
+ requirements:
27
+ - - ~>
28
+ - !ruby/object:Gem::Version
29
+ version: '10.1'
30
+ - !ruby/object:Gem::Dependency
31
+ name: slop
32
+ requirement: !ruby/object:Gem::Requirement
33
+ none: false
34
+ requirements:
35
+ - - ~>
36
+ - !ruby/object:Gem::Version
37
+ version: '3.6'
38
+ type: :runtime
39
+ prerelease: false
40
+ version_requirements: !ruby/object:Gem::Requirement
41
+ none: false
42
+ requirements:
43
+ - - ~>
44
+ - !ruby/object:Gem::Version
45
+ version: '3.6'
46
+ - !ruby/object:Gem::Dependency
47
+ name: coveralls
48
+ requirement: !ruby/object:Gem::Requirement
49
+ none: false
50
+ requirements:
51
+ - - ~>
52
+ - !ruby/object:Gem::Version
53
+ version: '0.7'
54
+ - - ! '>='
55
+ - !ruby/object:Gem::Version
56
+ version: 0.7.0
57
+ type: :development
58
+ prerelease: false
59
+ version_requirements: !ruby/object:Gem::Requirement
60
+ none: false
61
+ requirements:
62
+ - - ~>
63
+ - !ruby/object:Gem::Version
64
+ version: '0.7'
65
+ - - ! '>='
66
+ - !ruby/object:Gem::Version
67
+ version: 0.7.0
68
+ - !ruby/object:Gem::Dependency
69
+ name: rdoc
70
+ requirement: !ruby/object:Gem::Requirement
71
+ none: false
72
+ requirements:
73
+ - - ~>
74
+ - !ruby/object:Gem::Version
75
+ version: '3.11'
76
+ type: :development
77
+ prerelease: false
78
+ version_requirements: !ruby/object:Gem::Requirement
79
+ none: false
80
+ requirements:
81
+ - - ~>
82
+ - !ruby/object:Gem::Version
83
+ version: '3.11'
84
+ - !ruby/object:Gem::Dependency
85
+ name: cucumber
86
+ requirement: !ruby/object:Gem::Requirement
87
+ none: false
88
+ requirements:
89
+ - - '='
90
+ - !ruby/object:Gem::Version
91
+ version: 1.3.11
92
+ type: :development
93
+ prerelease: false
94
+ version_requirements: !ruby/object:Gem::Requirement
95
+ none: false
96
+ requirements:
97
+ - - '='
98
+ - !ruby/object:Gem::Version
99
+ version: 1.3.11
100
+ - !ruby/object:Gem::Dependency
101
+ name: minitest
102
+ requirement: !ruby/object:Gem::Requirement
103
+ none: false
104
+ requirements:
105
+ - - ~>
106
+ - !ruby/object:Gem::Version
107
+ version: '5.4'
108
+ - - ! '>='
109
+ - !ruby/object:Gem::Version
110
+ version: 5.4.0
111
+ type: :development
112
+ prerelease: false
113
+ version_requirements: !ruby/object:Gem::Requirement
114
+ none: false
115
+ requirements:
116
+ - - ~>
117
+ - !ruby/object:Gem::Version
118
+ version: '5.4'
119
+ - - ! '>='
120
+ - !ruby/object:Gem::Version
121
+ version: 5.4.0
122
+ - !ruby/object:Gem::Dependency
123
+ name: rubocop
124
+ requirement: !ruby/object:Gem::Requirement
125
+ none: false
126
+ requirements:
127
+ - - ~>
128
+ - !ruby/object:Gem::Version
129
+ version: '0.24'
130
+ - - ! '>='
131
+ - !ruby/object:Gem::Version
132
+ version: 0.24.1
133
+ type: :development
134
+ prerelease: false
135
+ version_requirements: !ruby/object:Gem::Requirement
136
+ none: false
137
+ requirements:
138
+ - - ~>
139
+ - !ruby/object:Gem::Version
140
+ version: '0.24'
141
+ - - ! '>='
142
+ - !ruby/object:Gem::Version
143
+ version: 0.24.1
144
+ - !ruby/object:Gem::Dependency
145
+ name: rubocop-rspec
146
+ requirement: !ruby/object:Gem::Requirement
147
+ none: false
148
+ requirements:
149
+ - - ~>
150
+ - !ruby/object:Gem::Version
151
+ version: '1.1'
152
+ - - ! '>='
153
+ - !ruby/object:Gem::Version
154
+ version: 1.1.0
155
+ type: :development
156
+ prerelease: false
157
+ version_requirements: !ruby/object:Gem::Requirement
158
+ none: false
159
+ requirements:
160
+ - - ~>
161
+ - !ruby/object:Gem::Version
162
+ version: '1.1'
163
+ - - ! '>='
164
+ - !ruby/object:Gem::Version
165
+ version: 1.1.0
166
+ - !ruby/object:Gem::Dependency
167
+ name: rspec-rails
168
+ requirement: !ruby/object:Gem::Requirement
169
+ none: false
170
+ requirements:
171
+ - - ~>
172
+ - !ruby/object:Gem::Version
173
+ version: '2.13'
174
+ type: :development
175
+ prerelease: false
176
+ version_requirements: !ruby/object:Gem::Requirement
177
+ none: false
178
+ requirements:
179
+ - - ~>
180
+ - !ruby/object:Gem::Version
181
+ version: '2.13'
182
+ description: Command line remote control of www.rultor.com
183
+ email: yegor@teamed.io
184
+ executables:
185
+ - rultor
186
+ extensions: []
187
+ extra_rdoc_files:
188
+ - README.md
189
+ - LICENSE.txt
190
+ files:
191
+ - .coveralls.yml
192
+ - .gitignore
193
+ - .rubocop.yml
194
+ - .rultor.yml
195
+ - .simplecov
196
+ - .travis.yml
197
+ - Gemfile
198
+ - LICENSE.txt
199
+ - README.md
200
+ - Rakefile
201
+ - bin/rultor
202
+ - cucumber.yml
203
+ - features/cli/encrypt.feature
204
+ - features/cli/help.feature
205
+ - features/cli/version.feature
206
+ - features/gem_package.feature
207
+ - features/step_definitions/steps.rb
208
+ - features/support/env.rb
209
+ - lib/rultor.rb
210
+ - lib/rultor/encrypt.rb
211
+ - lib/rultor/version.rb
212
+ - rultor.gemspec
213
+ - test/test_encrypt.rb
214
+ - test/test_rultor.rb
215
+ homepage: http://github.com/yegor256/rultor-remote
216
+ licenses:
217
+ - BSD
218
+ post_install_message:
219
+ rdoc_options:
220
+ - --charset=UTF-8
221
+ require_paths:
222
+ - lib
223
+ required_ruby_version: !ruby/object:Gem::Requirement
224
+ none: false
225
+ requirements:
226
+ - - ! '>='
227
+ - !ruby/object:Gem::Version
228
+ version: 1.9.3
229
+ required_rubygems_version: !ruby/object:Gem::Requirement
230
+ none: false
231
+ requirements:
232
+ - - ! '>='
233
+ - !ruby/object:Gem::Version
234
+ version: '0'
235
+ requirements: []
236
+ rubyforge_project:
237
+ rubygems_version: 1.8.23
238
+ signing_key:
239
+ specification_version: 2
240
+ summary: Rultor.com Remote Control
241
+ test_files:
242
+ - features/cli/encrypt.feature
243
+ - features/cli/help.feature
244
+ - features/cli/version.feature
245
+ - features/gem_package.feature
246
+ - features/step_definitions/steps.rb
247
+ - features/support/env.rb
248
+ - test/test_encrypt.rb
249
+ - test/test_rultor.rb