lino 1.5.0 → 1.9.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.
- checksums.yaml +4 -4
- data/CODE_OF_CONDUCT.md +1 -1
- data/Gemfile.lock +50 -39
- data/README.md +55 -23
- data/Rakefile +30 -5
- data/lib/lino/command_line_builder.rb +50 -43
- data/lib/lino/subcommand_builder.rb +14 -27
- data/lib/lino/switches.rb +32 -0
- data/lib/lino/utilities.rb +4 -0
- data/lib/lino/version.rb +1 -1
- metadata +23 -35
- data/.circleci/config.yml +0 -56
- data/.circleci/gpg.private.enc +0 -0
- data/.envrc +0 -5
- data/.git-crypt/.gitattributes +0 -4
- data/.git-crypt/keys/default/0/41D2606F66C3FF28874362B61A16916844CE9D82.gpg +0 -0
- data/.git-crypt/keys/default/0/AAE932B730C2BA697FFDFAE05DA390873E38358B.gpg +0 -0
- data/.gitattributes +0 -1
- data/.gitignore +0 -31
- data/.rspec +0 -2
- data/.ruby-version +0 -1
- data/config/secrets/ci/encryption.passphrase +0 -1
- data/config/secrets/ci/gpg.private +0 -58
- data/config/secrets/ci/gpg.public +0 -31
- data/config/secrets/ci/ssh.private +0 -51
- data/config/secrets/ci/ssh.public +0 -1
- data/config/secrets/circle_ci/config.yaml +0 -2
- data/config/secrets/github/config.yaml +0 -2
- data/config/secrets/rubygems/credentials +0 -2
- data/go +0 -56
- data/lino.gemspec +0 -38
- data/scripts/ci/common/configure-git.sh +0 -8
- data/scripts/ci/common/configure-rubygems.sh +0 -16
- data/scripts/ci/common/install-git-crypt.sh +0 -8
- data/scripts/ci/common/install-gpg-key.sh +0 -19
- data/scripts/ci/steps/prerelease.sh +0 -16
- data/scripts/ci/steps/release.sh +0 -18
- data/scripts/ci/steps/test.sh +0 -12
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 2c5b311ecc9ed33d7222eec9275914b3840b78eb8a50adc6cceede54a7583e72
|
|
4
|
+
data.tar.gz: 82d9b820187201cddb543cb120ba288cd00d6605dcf1dc29939e4f566cdb1cac
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: a88c15ab1e68b60a9e4c2ff7fc8201a50955789fd9b608b484d1ed70036ebe71d65727d5af7f306e496b797f73c84e195347c9960eaf549d412dd27075f9ac5d
|
|
7
|
+
data.tar.gz: 775f44d3d5966a0befd993345e48f60474f0867ef42f51865e66361750b1ada4325c137524d49ce64d002a2042f211fe92511bb464d1b355aacaa6b727ef5ee3
|
data/CODE_OF_CONDUCT.md
CHANGED
|
@@ -55,7 +55,7 @@ further defined and clarified by project maintainers.
|
|
|
55
55
|
## Enforcement
|
|
56
56
|
|
|
57
57
|
Instances of abusive, harassing, or otherwise unacceptable behavior may be
|
|
58
|
-
reported by contacting the project team at
|
|
58
|
+
reported by contacting the project team at maintainers@infrablocks.io. All
|
|
59
59
|
complaints will be reviewed and investigated and will result in a response that
|
|
60
60
|
is deemed necessary and appropriate to the circumstances. The project team is
|
|
61
61
|
obligated to maintain confidentiality with regard to the reporter of an incident.
|
data/Gemfile.lock
CHANGED
|
@@ -1,42 +1,45 @@
|
|
|
1
1
|
PATH
|
|
2
2
|
remote: .
|
|
3
3
|
specs:
|
|
4
|
-
lino (1.
|
|
4
|
+
lino (1.9.0)
|
|
5
5
|
hamster (~> 3.0)
|
|
6
6
|
open4 (~> 1.3)
|
|
7
7
|
|
|
8
8
|
GEM
|
|
9
9
|
remote: https://rubygems.org/
|
|
10
10
|
specs:
|
|
11
|
-
activesupport (6.0
|
|
11
|
+
activesupport (6.1.0)
|
|
12
12
|
concurrent-ruby (~> 1.0, >= 1.0.2)
|
|
13
|
-
i18n (>=
|
|
14
|
-
minitest (
|
|
15
|
-
tzinfo (~>
|
|
16
|
-
zeitwerk (~> 2.
|
|
13
|
+
i18n (>= 1.6, < 2)
|
|
14
|
+
minitest (>= 5.1)
|
|
15
|
+
tzinfo (~> 2.0)
|
|
16
|
+
zeitwerk (~> 2.3)
|
|
17
17
|
addressable (2.7.0)
|
|
18
18
|
public_suffix (>= 2.0.2, < 5.0)
|
|
19
19
|
colored2 (3.1.2)
|
|
20
|
-
concurrent-ruby (1.1.
|
|
21
|
-
diff-lcs (1.
|
|
22
|
-
docile (1.3.
|
|
23
|
-
excon (0.
|
|
24
|
-
faraday (1.0
|
|
20
|
+
concurrent-ruby (1.1.7)
|
|
21
|
+
diff-lcs (1.4.4)
|
|
22
|
+
docile (1.3.4)
|
|
23
|
+
excon (0.78.1)
|
|
24
|
+
faraday (1.3.0)
|
|
25
|
+
faraday-net_http (~> 1.0)
|
|
25
26
|
multipart-post (>= 1.2, < 3)
|
|
26
|
-
|
|
27
|
+
ruby2_keywords
|
|
28
|
+
faraday-net_http (1.0.0)
|
|
29
|
+
gem-release (2.2.0)
|
|
27
30
|
hamster (3.0.0)
|
|
28
31
|
concurrent-ruby (~> 1.0)
|
|
29
|
-
i18n (1.8.
|
|
32
|
+
i18n (1.8.6)
|
|
30
33
|
concurrent-ruby (~> 1.0)
|
|
31
|
-
minitest (5.14.
|
|
34
|
+
minitest (5.14.2)
|
|
32
35
|
multipart-post (2.1.1)
|
|
33
|
-
octokit (4.
|
|
36
|
+
octokit (4.20.0)
|
|
34
37
|
faraday (>= 0.9)
|
|
35
38
|
sawyer (~> 0.8.0, >= 0.5.3)
|
|
36
39
|
open4 (1.3.4)
|
|
37
|
-
public_suffix (4.0.
|
|
38
|
-
rake (13.0.
|
|
39
|
-
rake_circle_ci (0.
|
|
40
|
+
public_suffix (4.0.6)
|
|
41
|
+
rake (13.0.3)
|
|
42
|
+
rake_circle_ci (0.9.0)
|
|
40
43
|
colored2 (~> 3.1)
|
|
41
44
|
excon (~> 0.72)
|
|
42
45
|
rake_factory (~> 0.23)
|
|
@@ -49,35 +52,42 @@ GEM
|
|
|
49
52
|
octokit (~> 4.16)
|
|
50
53
|
rake_factory (~> 0.23)
|
|
51
54
|
sshkey (~> 2.0)
|
|
55
|
+
rake_gpg (0.12.0)
|
|
56
|
+
rake_factory (>= 0.23, < 1)
|
|
57
|
+
ruby_gpg2 (>= 0.6, < 1)
|
|
52
58
|
rake_ssh (0.4.0)
|
|
53
59
|
colored2 (~> 3.1)
|
|
54
60
|
rake_factory (~> 0.23)
|
|
55
61
|
sshkey (~> 2.0)
|
|
56
|
-
rspec (3.
|
|
57
|
-
rspec-core (~> 3.
|
|
58
|
-
rspec-expectations (~> 3.
|
|
59
|
-
rspec-mocks (~> 3.
|
|
60
|
-
rspec-core (3.
|
|
61
|
-
rspec-support (~> 3.
|
|
62
|
-
rspec-expectations (3.
|
|
62
|
+
rspec (3.10.0)
|
|
63
|
+
rspec-core (~> 3.10.0)
|
|
64
|
+
rspec-expectations (~> 3.10.0)
|
|
65
|
+
rspec-mocks (~> 3.10.0)
|
|
66
|
+
rspec-core (3.10.1)
|
|
67
|
+
rspec-support (~> 3.10.0)
|
|
68
|
+
rspec-expectations (3.10.1)
|
|
63
69
|
diff-lcs (>= 1.2.0, < 2.0)
|
|
64
|
-
rspec-support (~> 3.
|
|
65
|
-
rspec-mocks (3.
|
|
70
|
+
rspec-support (~> 3.10.0)
|
|
71
|
+
rspec-mocks (3.10.1)
|
|
66
72
|
diff-lcs (>= 1.2.0, < 2.0)
|
|
67
|
-
rspec-support (~> 3.
|
|
68
|
-
rspec-support (3.
|
|
73
|
+
rspec-support (~> 3.10.0)
|
|
74
|
+
rspec-support (3.10.1)
|
|
75
|
+
ruby2_keywords (0.0.2)
|
|
76
|
+
ruby_gpg2 (0.6.0)
|
|
77
|
+
lino (>= 1.5)
|
|
69
78
|
sawyer (0.8.2)
|
|
70
79
|
addressable (>= 2.3.5)
|
|
71
80
|
faraday (> 0.8, < 2.0)
|
|
72
|
-
simplecov (0.
|
|
81
|
+
simplecov (0.20.0)
|
|
73
82
|
docile (~> 1.1)
|
|
74
83
|
simplecov-html (~> 0.11)
|
|
75
|
-
|
|
84
|
+
simplecov_json_formatter (~> 0.1)
|
|
85
|
+
simplecov-html (0.12.3)
|
|
86
|
+
simplecov_json_formatter (0.1.2)
|
|
76
87
|
sshkey (2.0.0)
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
zeitwerk (2.3.0)
|
|
88
|
+
tzinfo (2.0.4)
|
|
89
|
+
concurrent-ruby (~> 1.0)
|
|
90
|
+
zeitwerk (2.4.2)
|
|
81
91
|
|
|
82
92
|
PLATFORMS
|
|
83
93
|
ruby
|
|
@@ -87,11 +97,12 @@ DEPENDENCIES
|
|
|
87
97
|
gem-release (~> 2.0)
|
|
88
98
|
lino!
|
|
89
99
|
rake (~> 13.0)
|
|
90
|
-
rake_circle_ci (~> 0.
|
|
91
|
-
rake_github (~> 0.
|
|
92
|
-
|
|
100
|
+
rake_circle_ci (~> 0.9)
|
|
101
|
+
rake_github (~> 0.5)
|
|
102
|
+
rake_gpg (~> 0.12)
|
|
103
|
+
rake_ssh (~> 0.4)
|
|
93
104
|
rspec (~> 3.9)
|
|
94
105
|
simplecov (~> 0.16)
|
|
95
106
|
|
|
96
107
|
BUNDLED WITH
|
|
97
|
-
2.
|
|
108
|
+
2.2.15
|
data/README.md
CHANGED
|
@@ -40,7 +40,8 @@ command_line.execute
|
|
|
40
40
|
|
|
41
41
|
### `Lino::CommandLineBuilder`
|
|
42
42
|
|
|
43
|
-
The `CommandLineBuilder` allows a number of different styles of commands to be
|
|
43
|
+
The `CommandLineBuilder` allows a number of different styles of commands to be
|
|
44
|
+
built:
|
|
44
45
|
|
|
45
46
|
```ruby
|
|
46
47
|
# commands with flags
|
|
@@ -49,37 +50,53 @@ Lino::CommandLineBuilder.for_command('ls')
|
|
|
49
50
|
.with_flag('-a')
|
|
50
51
|
.build
|
|
51
52
|
.to_s
|
|
52
|
-
|
|
53
|
+
|
|
53
54
|
# => ls -l -a
|
|
54
|
-
|
|
55
|
+
|
|
55
56
|
# commands with options
|
|
56
57
|
Lino::CommandLineBuilder.for_command('gpg')
|
|
57
58
|
.with_option('--recipient', 'tobyclemson@gmail.com')
|
|
58
59
|
.with_option('--sign', './doc.txt')
|
|
59
60
|
.build
|
|
60
|
-
.to_s
|
|
61
|
-
|
|
61
|
+
.to_s
|
|
62
|
+
|
|
62
63
|
# => gpg --recipient tobyclemson@gmail.com --sign ./doc.txt
|
|
63
|
-
|
|
64
|
-
# commands with
|
|
64
|
+
|
|
65
|
+
# commands with an option repeated multiple times
|
|
66
|
+
Lino::CommandLineBuilder.for_command('example.sh')
|
|
67
|
+
.with_repeated_option('--opt', ['file1.txt', nil, '', 'file2.txt'])
|
|
68
|
+
.build
|
|
69
|
+
.to_s
|
|
70
|
+
|
|
71
|
+
# => example.sh --opt file1.txt --opt file2.txt
|
|
72
|
+
|
|
73
|
+
# commands with arguments
|
|
65
74
|
Lino::CommandLineBuilder.for_command('diff')
|
|
66
75
|
.with_argument('./file1.txt')
|
|
67
76
|
.with_argument('./file2.txt')
|
|
68
77
|
.build
|
|
69
|
-
.to_s
|
|
70
|
-
|
|
78
|
+
.to_s
|
|
79
|
+
|
|
71
80
|
# => diff ./file1.txt ./file2.txt
|
|
72
|
-
|
|
81
|
+
|
|
82
|
+
# commands with an array of arguments
|
|
83
|
+
Lino::CommandLineBuilder.for_command('diff')
|
|
84
|
+
.with_arguments(['./file1.txt', nil, '', './file2.txt'])
|
|
85
|
+
.build
|
|
86
|
+
.to_s
|
|
87
|
+
|
|
88
|
+
# => diff ./file1.txt ./file2.txt
|
|
89
|
+
|
|
73
90
|
# commands with custom option separator
|
|
74
91
|
Lino::CommandLineBuilder.for_command('java')
|
|
75
92
|
.with_option_separator(':')
|
|
76
93
|
.with_option('-splash', './images/splash.jpg')
|
|
77
94
|
.with_argument('./application.jar')
|
|
78
95
|
.build
|
|
79
|
-
.to_s
|
|
80
|
-
|
|
96
|
+
.to_s
|
|
97
|
+
|
|
81
98
|
# => java -splash:./images/splash.jpg ./application.jar
|
|
82
|
-
|
|
99
|
+
|
|
83
100
|
# commands using a subcommand style
|
|
84
101
|
Lino::CommandLineBuilder.for_command('git')
|
|
85
102
|
.with_flag('--no-pager')
|
|
@@ -88,9 +105,9 @@ Lino::CommandLineBuilder.for_command('git')
|
|
|
88
105
|
end
|
|
89
106
|
.build
|
|
90
107
|
.to_s
|
|
91
|
-
|
|
108
|
+
|
|
92
109
|
# => git --no-pager log --since 2016-01-01
|
|
93
|
-
|
|
110
|
+
|
|
94
111
|
# commands with multiple levels of subcommand
|
|
95
112
|
Lino::CommandLineBuilder.for_command('gcloud')
|
|
96
113
|
.with_subcommand('sql')
|
|
@@ -131,7 +148,8 @@ command_line.execute
|
|
|
131
148
|
# => <contents of / directory>
|
|
132
149
|
```
|
|
133
150
|
|
|
134
|
-
By default, the standard input stream is empty and the process writes to the
|
|
151
|
+
By default, the standard input stream is empty and the process writes to the
|
|
152
|
+
standard output and error streams.
|
|
135
153
|
|
|
136
154
|
To populate standard input:
|
|
137
155
|
|
|
@@ -139,7 +157,8 @@ To populate standard input:
|
|
|
139
157
|
command_line.execute(stdin: 'something to be passed to standard input')
|
|
140
158
|
```
|
|
141
159
|
|
|
142
|
-
The `stdin` option supports any object that responds to `each`, `read` or
|
|
160
|
+
The `stdin` option supports any object that responds to `each`, `read` or
|
|
161
|
+
`to_s`.
|
|
143
162
|
|
|
144
163
|
To provide custom streams for standard output or standard error:
|
|
145
164
|
|
|
@@ -158,16 +177,29 @@ The `stdout` and `stderr` options support any object that responds to `<<`.
|
|
|
158
177
|
|
|
159
178
|
## Development
|
|
160
179
|
|
|
161
|
-
|
|
180
|
+
To install dependencies and run the build, run the pre-commit build:
|
|
162
181
|
|
|
163
|
-
|
|
182
|
+
```shell script
|
|
183
|
+
./go
|
|
184
|
+
```
|
|
164
185
|
|
|
165
|
-
|
|
186
|
+
Tou can also run only the specs:
|
|
166
187
|
|
|
167
|
-
|
|
188
|
+
```shell script
|
|
189
|
+
./go spec
|
|
190
|
+
```
|
|
168
191
|
|
|
192
|
+
You can also run `bin/console` for an interactive prompt that will allow you to
|
|
193
|
+
experiment.
|
|
169
194
|
|
|
170
|
-
##
|
|
195
|
+
## Contributing
|
|
171
196
|
|
|
172
|
-
|
|
197
|
+
Bug reports and pull requests are welcome on GitHub at
|
|
198
|
+
https://github.com/infrablocks/lino. This project is intended to be a safe,
|
|
199
|
+
welcoming space for collaboration, and contributors are expected to adhere to
|
|
200
|
+
the [Contributor Covenant](http://contributor-covenant.org) code of conduct.
|
|
201
|
+
|
|
202
|
+
## License
|
|
173
203
|
|
|
204
|
+
The gem is available as open source under the terms of the
|
|
205
|
+
[MIT License](http://opensource.org/licenses/MIT).
|
data/Rakefile
CHANGED
|
@@ -2,17 +2,40 @@ require 'yaml'
|
|
|
2
2
|
require 'rake_circle_ci'
|
|
3
3
|
require 'rake_github'
|
|
4
4
|
require 'rake_ssh'
|
|
5
|
+
require 'rake_gpg'
|
|
6
|
+
require 'securerandom'
|
|
5
7
|
require 'rspec/core/rake_task'
|
|
6
8
|
|
|
7
9
|
task :default => :spec
|
|
8
10
|
|
|
9
11
|
RSpec::Core::RakeTask.new(:spec)
|
|
10
12
|
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
)
|
|
13
|
+
namespace :encryption do
|
|
14
|
+
namespace :passphrase do
|
|
15
|
+
task :generate do
|
|
16
|
+
File.open('config/secrets/ci/encryption.passphrase', 'w') do |f|
|
|
17
|
+
f.write(SecureRandom.base64(36))
|
|
18
|
+
end
|
|
19
|
+
end
|
|
20
|
+
end
|
|
21
|
+
end
|
|
22
|
+
|
|
23
|
+
namespace :keys do
|
|
24
|
+
namespace :deploy do
|
|
25
|
+
RakeSSH.define_key_tasks(
|
|
26
|
+
path: 'config/secrets/ci/',
|
|
27
|
+
comment: 'maintainers@infrablocks.io')
|
|
28
|
+
end
|
|
29
|
+
|
|
30
|
+
namespace :gpg do
|
|
31
|
+
RakeGPG.define_generate_key_task(
|
|
32
|
+
output_directory: 'config/secrets/ci',
|
|
33
|
+
name_prefix: 'gpg',
|
|
34
|
+
owner_name: 'InfraBlocks Maintainers',
|
|
35
|
+
owner_email: 'maintainers@infrablocks.io',
|
|
36
|
+
owner_comment: 'lino CI Key')
|
|
37
|
+
end
|
|
38
|
+
end
|
|
16
39
|
|
|
17
40
|
RakeCircleCI.define_project_tasks(
|
|
18
41
|
namespace: :circle_ci,
|
|
@@ -27,6 +50,7 @@ RakeCircleCI.define_project_tasks(
|
|
|
27
50
|
File.read('config/secrets/ci/encryption.passphrase')
|
|
28
51
|
.chomp
|
|
29
52
|
}
|
|
53
|
+
t.checkout_keys = []
|
|
30
54
|
t.ssh_keys = [
|
|
31
55
|
{
|
|
32
56
|
hostname: "github.com",
|
|
@@ -55,6 +79,7 @@ namespace :pipeline do
|
|
|
55
79
|
task :prepare => [
|
|
56
80
|
:'circle_ci:project:follow',
|
|
57
81
|
:'circle_ci:env_vars:ensure',
|
|
82
|
+
:'circle_ci:checkout_keys:ensure',
|
|
58
83
|
:'circle_ci:ssh_keys:ensure',
|
|
59
84
|
:'github:deploy_keys:ensure'
|
|
60
85
|
]
|
|
@@ -2,10 +2,12 @@ require 'hamster'
|
|
|
2
2
|
require_relative 'utilities'
|
|
3
3
|
require_relative 'command_line'
|
|
4
4
|
require_relative 'subcommand_builder'
|
|
5
|
+
require_relative 'switches'
|
|
5
6
|
|
|
6
7
|
module Lino
|
|
7
8
|
class CommandLineBuilder
|
|
8
9
|
include Lino::Utilities
|
|
10
|
+
include Lino::Switches
|
|
9
11
|
|
|
10
12
|
class <<self
|
|
11
13
|
def for_command(command)
|
|
@@ -14,13 +16,14 @@ module Lino
|
|
|
14
16
|
end
|
|
15
17
|
|
|
16
18
|
def initialize(
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
19
|
+
command: nil,
|
|
20
|
+
subcommands: [],
|
|
21
|
+
switches: [],
|
|
22
|
+
arguments: [],
|
|
23
|
+
environment_variables: [],
|
|
24
|
+
option_separator: ' ',
|
|
25
|
+
option_quoting: nil
|
|
26
|
+
)
|
|
24
27
|
@command = command
|
|
25
28
|
@subcommands = Hamster::Vector.new(subcommands)
|
|
26
29
|
@switches = Hamster::Vector.new(switches)
|
|
@@ -31,16 +34,13 @@ module Lino
|
|
|
31
34
|
end
|
|
32
35
|
|
|
33
36
|
def with_subcommand(subcommand, &block)
|
|
34
|
-
with(
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
separator: separator,
|
|
42
|
-
quoting: quoting
|
|
43
|
-
}))
|
|
37
|
+
with(
|
|
38
|
+
subcommands: @subcommands.add(
|
|
39
|
+
(block || ->(sub) { sub }).call(
|
|
40
|
+
SubcommandBuilder.for_subcommand(subcommand)
|
|
41
|
+
)
|
|
42
|
+
)
|
|
43
|
+
)
|
|
44
44
|
end
|
|
45
45
|
|
|
46
46
|
def with_option_separator(option_separator)
|
|
@@ -51,12 +51,13 @@ module Lino
|
|
|
51
51
|
with(option_quoting: character)
|
|
52
52
|
end
|
|
53
53
|
|
|
54
|
-
def
|
|
55
|
-
with(
|
|
54
|
+
def with_argument(argument)
|
|
55
|
+
with(arguments: add_argument(argument))
|
|
56
56
|
end
|
|
57
57
|
|
|
58
|
-
def
|
|
59
|
-
|
|
58
|
+
def with_arguments(arguments)
|
|
59
|
+
arguments.each { |argument| add_argument(argument) }
|
|
60
|
+
with({})
|
|
60
61
|
end
|
|
61
62
|
|
|
62
63
|
def with_environment_variable(environment_variable, value)
|
|
@@ -65,41 +66,47 @@ module Lino
|
|
|
65
66
|
|
|
66
67
|
def build
|
|
67
68
|
components = [
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
69
|
+
map_and_join(@environment_variables) do |var|
|
|
70
|
+
"#{var[0]}=\"#{var[1].to_s.gsub(/"/, '\\"')}\""
|
|
71
|
+
end,
|
|
72
|
+
@command,
|
|
73
|
+
map_and_join(
|
|
74
|
+
@switches,
|
|
75
|
+
&(quote_with(@option_quoting) >> join_with(@option_separator))
|
|
76
|
+
),
|
|
77
|
+
map_and_join(@subcommands) do |sub|
|
|
78
|
+
sub.build(@option_separator, @option_quoting)
|
|
79
|
+
end,
|
|
80
|
+
map_and_join(@arguments, &join_with(' '))
|
|
78
81
|
]
|
|
79
82
|
|
|
80
|
-
command_string = components
|
|
81
|
-
.reject { |item| item.empty? }
|
|
82
|
-
.join(' ')
|
|
83
|
+
command_string = components.reject(&:empty?).join(' ')
|
|
83
84
|
|
|
84
85
|
CommandLine.new(command_string)
|
|
85
86
|
end
|
|
86
87
|
|
|
87
88
|
private
|
|
88
89
|
|
|
89
|
-
def with
|
|
90
|
+
def with(**replacements)
|
|
90
91
|
CommandLineBuilder.new(**state.merge(replacements))
|
|
91
92
|
end
|
|
92
93
|
|
|
93
94
|
def state
|
|
94
95
|
{
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
96
|
+
command: @command,
|
|
97
|
+
subcommands: @subcommands,
|
|
98
|
+
switches: @switches,
|
|
99
|
+
arguments: @arguments,
|
|
100
|
+
environment_variables: @environment_variables,
|
|
101
|
+
option_separator: @option_separator,
|
|
102
|
+
option_quoting: @option_quoting
|
|
102
103
|
}
|
|
103
104
|
end
|
|
105
|
+
|
|
106
|
+
def add_argument(argument)
|
|
107
|
+
return @arguments if missing?(argument)
|
|
108
|
+
|
|
109
|
+
@arguments = @arguments.add({ components: [argument] })
|
|
110
|
+
end
|
|
104
111
|
end
|
|
105
|
-
end
|
|
112
|
+
end
|
|
@@ -1,58 +1,45 @@
|
|
|
1
1
|
require 'hamster'
|
|
2
2
|
require_relative 'utilities'
|
|
3
|
+
require_relative 'switches'
|
|
3
4
|
|
|
4
5
|
module Lino
|
|
5
6
|
class SubcommandBuilder
|
|
6
7
|
include Lino::Utilities
|
|
8
|
+
include Lino::Switches
|
|
7
9
|
|
|
8
10
|
class <<self
|
|
9
|
-
def for_subcommand
|
|
11
|
+
def for_subcommand(subcommand)
|
|
10
12
|
SubcommandBuilder.new(subcommand: subcommand)
|
|
11
13
|
end
|
|
12
14
|
end
|
|
13
15
|
|
|
14
|
-
def initialize(
|
|
15
|
-
subcommand: nil,
|
|
16
|
-
switches: [])
|
|
16
|
+
def initialize(subcommand: nil, switches: [])
|
|
17
17
|
@subcommand = subcommand
|
|
18
18
|
@switches = Hamster::Vector.new(switches)
|
|
19
19
|
end
|
|
20
20
|
|
|
21
|
-
def with_option(switch, value, separator: nil, quoting: nil)
|
|
22
|
-
with(switches: @switches.add({
|
|
23
|
-
components: [switch, value],
|
|
24
|
-
separator: separator,
|
|
25
|
-
quoting: quoting
|
|
26
|
-
}))
|
|
27
|
-
end
|
|
28
|
-
|
|
29
|
-
def with_flag(flag)
|
|
30
|
-
with(switches: @switches.add({components: [flag]}))
|
|
31
|
-
end
|
|
32
|
-
|
|
33
21
|
def build(option_separator, option_quoting)
|
|
34
22
|
components = [
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
23
|
+
@subcommand,
|
|
24
|
+
map_and_join(
|
|
25
|
+
@switches,
|
|
26
|
+
&(quote_with(option_quoting) >> join_with(option_separator))
|
|
27
|
+
)
|
|
38
28
|
]
|
|
39
|
-
|
|
40
|
-
components
|
|
41
|
-
.reject { |item| item.empty? }
|
|
42
|
-
.join(' ')
|
|
29
|
+
components.reject(&:empty?).join(' ')
|
|
43
30
|
end
|
|
44
31
|
|
|
45
32
|
private
|
|
46
33
|
|
|
47
|
-
def with
|
|
34
|
+
def with(**replacements)
|
|
48
35
|
SubcommandBuilder.new(**state.merge(replacements))
|
|
49
36
|
end
|
|
50
37
|
|
|
51
38
|
def state
|
|
52
39
|
{
|
|
53
|
-
|
|
54
|
-
|
|
40
|
+
subcommand: @subcommand,
|
|
41
|
+
switches: @switches
|
|
55
42
|
}
|
|
56
43
|
end
|
|
57
44
|
end
|
|
58
|
-
end
|
|
45
|
+
end
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
module Lino
|
|
2
|
+
module Switches
|
|
3
|
+
def with_option(switch, value, separator: nil, quoting: nil)
|
|
4
|
+
with(switches: add_option(switch, value, separator, quoting))
|
|
5
|
+
end
|
|
6
|
+
|
|
7
|
+
def with_repeated_option(switch, values, separator: nil, quoting: nil)
|
|
8
|
+
values.each do |value|
|
|
9
|
+
add_option(switch, value, separator, quoting)
|
|
10
|
+
end
|
|
11
|
+
with({})
|
|
12
|
+
end
|
|
13
|
+
|
|
14
|
+
def with_flag(flag)
|
|
15
|
+
with(switches: @switches.add({ components: [flag] }))
|
|
16
|
+
end
|
|
17
|
+
|
|
18
|
+
private
|
|
19
|
+
|
|
20
|
+
def add_option(switch, value, separator, quoting)
|
|
21
|
+
return @switches if missing?(value)
|
|
22
|
+
|
|
23
|
+
@switches = @switches.add(
|
|
24
|
+
{
|
|
25
|
+
components: [switch, value],
|
|
26
|
+
separator: separator,
|
|
27
|
+
quoting: quoting
|
|
28
|
+
}
|
|
29
|
+
)
|
|
30
|
+
end
|
|
31
|
+
end
|
|
32
|
+
end
|
data/lib/lino/utilities.rb
CHANGED
data/lib/lino/version.rb
CHANGED
metadata
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: lino
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 1.
|
|
4
|
+
version: 1.9.0
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Toby Clemson
|
|
8
8
|
autorequire:
|
|
9
9
|
bindir: exe
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date:
|
|
11
|
+
date: 2021-03-30 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: hamster
|
|
@@ -72,42 +72,56 @@ dependencies:
|
|
|
72
72
|
requirements:
|
|
73
73
|
- - "~>"
|
|
74
74
|
- !ruby/object:Gem::Version
|
|
75
|
-
version: '0.
|
|
75
|
+
version: '0.9'
|
|
76
76
|
type: :development
|
|
77
77
|
prerelease: false
|
|
78
78
|
version_requirements: !ruby/object:Gem::Requirement
|
|
79
79
|
requirements:
|
|
80
80
|
- - "~>"
|
|
81
81
|
- !ruby/object:Gem::Version
|
|
82
|
-
version: '0.
|
|
82
|
+
version: '0.9'
|
|
83
83
|
- !ruby/object:Gem::Dependency
|
|
84
84
|
name: rake_github
|
|
85
85
|
requirement: !ruby/object:Gem::Requirement
|
|
86
86
|
requirements:
|
|
87
87
|
- - "~>"
|
|
88
88
|
- !ruby/object:Gem::Version
|
|
89
|
-
version: '0.
|
|
89
|
+
version: '0.5'
|
|
90
90
|
type: :development
|
|
91
91
|
prerelease: false
|
|
92
92
|
version_requirements: !ruby/object:Gem::Requirement
|
|
93
93
|
requirements:
|
|
94
94
|
- - "~>"
|
|
95
95
|
- !ruby/object:Gem::Version
|
|
96
|
-
version: '0.
|
|
96
|
+
version: '0.5'
|
|
97
97
|
- !ruby/object:Gem::Dependency
|
|
98
98
|
name: rake_ssh
|
|
99
99
|
requirement: !ruby/object:Gem::Requirement
|
|
100
100
|
requirements:
|
|
101
101
|
- - "~>"
|
|
102
102
|
- !ruby/object:Gem::Version
|
|
103
|
-
version: '0.
|
|
103
|
+
version: '0.4'
|
|
104
104
|
type: :development
|
|
105
105
|
prerelease: false
|
|
106
106
|
version_requirements: !ruby/object:Gem::Requirement
|
|
107
107
|
requirements:
|
|
108
108
|
- - "~>"
|
|
109
109
|
- !ruby/object:Gem::Version
|
|
110
|
-
version: '0.
|
|
110
|
+
version: '0.4'
|
|
111
|
+
- !ruby/object:Gem::Dependency
|
|
112
|
+
name: rake_gpg
|
|
113
|
+
requirement: !ruby/object:Gem::Requirement
|
|
114
|
+
requirements:
|
|
115
|
+
- - "~>"
|
|
116
|
+
- !ruby/object:Gem::Version
|
|
117
|
+
version: '0.12'
|
|
118
|
+
type: :development
|
|
119
|
+
prerelease: false
|
|
120
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
121
|
+
requirements:
|
|
122
|
+
- - "~>"
|
|
123
|
+
- !ruby/object:Gem::Version
|
|
124
|
+
version: '0.12'
|
|
111
125
|
- !ruby/object:Gem::Dependency
|
|
112
126
|
name: rspec
|
|
113
127
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -157,16 +171,6 @@ executables: []
|
|
|
157
171
|
extensions: []
|
|
158
172
|
extra_rdoc_files: []
|
|
159
173
|
files:
|
|
160
|
-
- ".circleci/config.yml"
|
|
161
|
-
- ".circleci/gpg.private.enc"
|
|
162
|
-
- ".envrc"
|
|
163
|
-
- ".git-crypt/.gitattributes"
|
|
164
|
-
- ".git-crypt/keys/default/0/41D2606F66C3FF28874362B61A16916844CE9D82.gpg"
|
|
165
|
-
- ".git-crypt/keys/default/0/AAE932B730C2BA697FFDFAE05DA390873E38358B.gpg"
|
|
166
|
-
- ".gitattributes"
|
|
167
|
-
- ".gitignore"
|
|
168
|
-
- ".rspec"
|
|
169
|
-
- ".ruby-version"
|
|
170
174
|
- CODE_OF_CONDUCT.md
|
|
171
175
|
- Gemfile
|
|
172
176
|
- Gemfile.lock
|
|
@@ -175,29 +179,13 @@ files:
|
|
|
175
179
|
- Rakefile
|
|
176
180
|
- bin/console
|
|
177
181
|
- bin/setup
|
|
178
|
-
- config/secrets/ci/encryption.passphrase
|
|
179
|
-
- config/secrets/ci/gpg.private
|
|
180
|
-
- config/secrets/ci/gpg.public
|
|
181
|
-
- config/secrets/ci/ssh.private
|
|
182
|
-
- config/secrets/ci/ssh.public
|
|
183
|
-
- config/secrets/circle_ci/config.yaml
|
|
184
|
-
- config/secrets/github/config.yaml
|
|
185
|
-
- config/secrets/rubygems/credentials
|
|
186
|
-
- go
|
|
187
182
|
- lib/lino.rb
|
|
188
183
|
- lib/lino/command_line.rb
|
|
189
184
|
- lib/lino/command_line_builder.rb
|
|
190
185
|
- lib/lino/subcommand_builder.rb
|
|
186
|
+
- lib/lino/switches.rb
|
|
191
187
|
- lib/lino/utilities.rb
|
|
192
188
|
- lib/lino/version.rb
|
|
193
|
-
- lino.gemspec
|
|
194
|
-
- scripts/ci/common/configure-git.sh
|
|
195
|
-
- scripts/ci/common/configure-rubygems.sh
|
|
196
|
-
- scripts/ci/common/install-git-crypt.sh
|
|
197
|
-
- scripts/ci/common/install-gpg-key.sh
|
|
198
|
-
- scripts/ci/steps/prerelease.sh
|
|
199
|
-
- scripts/ci/steps/release.sh
|
|
200
|
-
- scripts/ci/steps/test.sh
|
|
201
189
|
homepage: https://github.com/infrablocks/lino
|
|
202
190
|
licenses:
|
|
203
191
|
- MIT
|
data/.circleci/config.yml
DELETED
|
@@ -1,56 +0,0 @@
|
|
|
1
|
-
version: 2.1
|
|
2
|
-
jobs:
|
|
3
|
-
test:
|
|
4
|
-
working_directory: ~/source
|
|
5
|
-
docker:
|
|
6
|
-
- image: ruby:2.6.0
|
|
7
|
-
steps:
|
|
8
|
-
- checkout
|
|
9
|
-
- run: ./scripts/ci/steps/test.sh
|
|
10
|
-
prerelease:
|
|
11
|
-
working_directory: ~/source
|
|
12
|
-
docker:
|
|
13
|
-
- image: ruby:2.6.0
|
|
14
|
-
steps:
|
|
15
|
-
- checkout
|
|
16
|
-
- run: ./scripts/ci/common/install-git-crypt.sh
|
|
17
|
-
- run: ./scripts/ci/common/install-gpg-key.sh
|
|
18
|
-
- run: ./scripts/ci/common/configure-git.sh
|
|
19
|
-
- run: ./scripts/ci/common/configure-rubygems.sh
|
|
20
|
-
- run: ./scripts/ci/steps/prerelease.sh
|
|
21
|
-
release:
|
|
22
|
-
working_directory: ~/source
|
|
23
|
-
docker:
|
|
24
|
-
- image: ruby:2.6.0
|
|
25
|
-
steps:
|
|
26
|
-
- checkout
|
|
27
|
-
- run: ./scripts/ci/common/install-git-crypt.sh
|
|
28
|
-
- run: ./scripts/ci/common/install-gpg-key.sh
|
|
29
|
-
- run: ./scripts/ci/common/configure-git.sh
|
|
30
|
-
- run: ./scripts/ci/common/configure-rubygems.sh
|
|
31
|
-
- run: ./scripts/ci/steps/release.sh
|
|
32
|
-
|
|
33
|
-
workflows:
|
|
34
|
-
version: 2
|
|
35
|
-
pipeline:
|
|
36
|
-
jobs:
|
|
37
|
-
- test
|
|
38
|
-
- prerelease:
|
|
39
|
-
requires:
|
|
40
|
-
- test
|
|
41
|
-
filters:
|
|
42
|
-
branches:
|
|
43
|
-
only: master
|
|
44
|
-
- hold:
|
|
45
|
-
type: approval
|
|
46
|
-
requires:
|
|
47
|
-
- prerelease
|
|
48
|
-
filters:
|
|
49
|
-
branches:
|
|
50
|
-
only: master
|
|
51
|
-
- release:
|
|
52
|
-
requires:
|
|
53
|
-
- hold
|
|
54
|
-
filters:
|
|
55
|
-
branches:
|
|
56
|
-
only: master
|
data/.circleci/gpg.private.enc
DELETED
|
Binary file
|
data/.envrc
DELETED
data/.git-crypt/.gitattributes
DELETED
|
Binary file
|
|
Binary file
|
data/.gitattributes
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
config/secrets/** filter=git-crypt diff=git-crypt
|
data/.gitignore
DELETED
|
@@ -1,31 +0,0 @@
|
|
|
1
|
-
## Standard stuff:
|
|
2
|
-
*.gem
|
|
3
|
-
*.rbc
|
|
4
|
-
/.config
|
|
5
|
-
/coverage/
|
|
6
|
-
/InstalledFiles
|
|
7
|
-
/pkg/
|
|
8
|
-
.rspec_status
|
|
9
|
-
/spec/reports/
|
|
10
|
-
/spec/examples.txt
|
|
11
|
-
/test/tmp/
|
|
12
|
-
/test/version_tmp/
|
|
13
|
-
/tmp/
|
|
14
|
-
.rakeTasks
|
|
15
|
-
|
|
16
|
-
## Documentation cache and generated files:
|
|
17
|
-
/.yardoc/
|
|
18
|
-
/_yardoc/
|
|
19
|
-
/doc/
|
|
20
|
-
/rdoc/
|
|
21
|
-
|
|
22
|
-
## Environment normalization:
|
|
23
|
-
/.bundle/
|
|
24
|
-
/vendor/bundle
|
|
25
|
-
/lib/bundler/man/
|
|
26
|
-
|
|
27
|
-
## IDE:
|
|
28
|
-
.idea
|
|
29
|
-
*.ipr
|
|
30
|
-
*.iws
|
|
31
|
-
*.iml
|
data/.rspec
DELETED
data/.ruby-version
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
2.6.0
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
fmFsBRd0haxdPyYDNZkgDHojaZ3MgWg5DFZKrzJtQCVdehpX
|
|
@@ -1,58 +0,0 @@
|
|
|
1
|
-
-----BEGIN PGP PRIVATE KEY BLOCK-----
|
|
2
|
-
|
|
3
|
-
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
-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
-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
-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
-
SBqxRZCWADiO61vzTO8YlZj4ke+S7Lkg/d4lafVJ3Bsw89K7F79+mIZaBU1oon8v
|
|
8
|
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-
3oMhH0XKhksxObCZBADwErV9TAnzs3kWho846DKE8LtvXYq0E72LD3BczxNRk67g
|
|
45
|
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
|
|
56
|
-
3zYh8+8wYJ4+vrkTFspeu2s=
|
|
57
|
-
=bs3g
|
|
58
|
-
-----END PGP PRIVATE KEY BLOCK-----
|
|
@@ -1,31 +0,0 @@
|
|
|
1
|
-
-----BEGIN PGP PUBLIC KEY BLOCK-----
|
|
2
|
-
|
|
3
|
-
mQENBF5iajgBCADpMbSEz+Fl4HgUxXQLTuIi01QMf/dkwVDuwNrPdVtkKKi27RS5
|
|
4
|
-
OOiJYYzHkSqJwdbrMf1R/Uj1S4D4zP9BPc9VmKm1tPRnk4rrhpJPE9jR9X/6RTw3
|
|
5
|
-
ilIqelK84WfR74yAbaQYtEF3YEOhWSCvwsf3jQuE8LBMGh+Zf8DlYeH5wBvIIF5x
|
|
6
|
-
y0GDktvq5+dr/szqi8rMCz3MdiouUDbyWmMKwjmegSLzS/kf8dgiEg7iChVYNSAT
|
|
7
|
-
SBqxRZCWADiO61vzTO8YlZj4ke+S7Lkg/d4lafVJ3Bsw89K7F79+mIZaBU1oon8v
|
|
8
|
-
y+AM7QAK6kGgb50vsS9QYRtYqZzK0DsaLNhVABEBAAG0M09wZW4gU291cmNlIENJ
|
|
9
|
-
IDx0b2J5Y2xlbXNvbitvcGVuc291cmNlY2lAZ21haWwuY29tPokBVAQTAQgAPhYh
|
|
10
|
-
BKrpMrcwwrppf/364F2jkIc+ODWLBQJeYmo4AhsDBQkDwmcABQsJCAcCBhUKCQgL
|
|
11
|
-
AgQWAgMBAh4BAheAAAoJEF2jkIc+ODWLqhUIAMSJ9l+acSPSnW0MDhjFn46cFUSC
|
|
12
|
-
b7YF77wBBrMj6LhQnvad5ii+ik+fld2iK0ZGg33j9b6xY7XzoLUsa/HISdLdF6xg
|
|
13
|
-
sMJZMhDfBRaCDDH98cbvUkR1rdimSxNMWnEd+q7BApgSItVfnuMcZDpAPY+Qnoqj
|
|
14
|
-
WTlM1GVK0cjD7Fb3QiAOomBsD+O3zBqBpGBZ8bnkaxu7WfQMSV0QBBoyV5pNkYPs
|
|
15
|
-
pHWJgIm1axwYX9383ftDDtVzAQ6YcO8x+NntEIbV7RFwyCD+AlglDfUMe4ZYxniI
|
|
16
|
-
jYhAWrGNVMrLsyfkSYDd9keUQGXgrWupgrH1oEPUv0RkM43KV82wqoxJJaG5AQ0E
|
|
17
|
-
XmJqOAEIALXw6hlF/PWRPIWIO6tJS6u5g8ndnwlmNLbhgUj0D7OjXS1mzjFIeKvm
|
|
18
|
-
jFBb/6klmrow8WilnbjzgNWzHsSgkQGrn5WgiC+jDhwAv2UB6afs4MySM+gD1EZc
|
|
19
|
-
8AAIE/asONMql/GVhPMRr4vbd7D7UdEA8YCVUc7qPRFITBPS/x2/E4lAzY/q5KZ9
|
|
20
|
-
uFI89Xrw02A7/Z4j+pWgOpUu/yExSu8pvFJ65aJ5t2nw48MdnYoykKKeZ/0FEzXj
|
|
21
|
-
s/MbJGDwVcM699TGodqMw40Kl7jIqIje7HvW18pRKgbwuzFJTA0gfAl6qWWbhaGB
|
|
22
|
-
m5E1zr/vTBh+vt4dLOtXD+5rG0blNlMAEQEAAYkBPAQYAQgAJhYhBKrpMrcwwrpp
|
|
23
|
-
f/364F2jkIc+ODWLBQJeYmo4AhsMBQkDwmcAAAoJEF2jkIc+ODWLedoIAKOh0rzN
|
|
24
|
-
ykH7uHPxqFLele2y0mv2HlYTDlZyZOnqqAa1dQeVRPwKzdWxzKuz8EJUBeLPTuj2
|
|
25
|
-
jNYxNSzax6TjYUGnRZES1/w1lOWHcBjM3A2XcR7sLNHQkM0NWsmL941tCs/wqRhw
|
|
26
|
-
WStCju+3uQHjlopABeMsfKfaOmfwgZqXgqm6wPucObTXy61ZxAXSY7yhnTj0jP/o
|
|
27
|
-
idMQDddNRDwPMleebjEHX0QbcKb3Cc6dapyUxKDMkER7eQfeHXnV/aOMVv6yigG1
|
|
28
|
-
jaOPJ+k3Atri5cZEFcdAqB4X30VOIHnSSIY/I/XIMnkJ6nrQclZzgRMH3zYh8+8w
|
|
29
|
-
YJ4+vrkTFspeu2s=
|
|
30
|
-
=aLlT
|
|
31
|
-
-----END PGP PUBLIC KEY BLOCK-----
|
|
@@ -1,51 +0,0 @@
|
|
|
1
|
-
-----BEGIN RSA PRIVATE KEY-----
|
|
2
|
-
MIIJKQIBAAKCAgEAud8L53IDHO5jKfUCFXbALnrKczITns7x0OqBM9/lA560ykbq
|
|
3
|
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-
+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
-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
-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
-
A58+FyWBbFKwzXFXC4xdjEHt028t4gO1DtN/SOty8r1P9R/k4gWSAGHigCalXqHH
|
|
21
|
-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
-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
-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
-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
-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
-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
-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
-
Xphok+ZBTVQv4EaYTCEkZcOvxd9gA2CCqvVZeV5OWXb1NX65MUEVTTZ1+dL+4cN7
|
|
29
|
-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
-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
-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
-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
-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
-
dheziTa80sm99WCivUKUcAEOjuG8WBhaiSxdWRJq0mMCggEAbUiXOIBVmiTwlyig
|
|
35
|
-
7QrnEnhvXE7HCPSNNmBggXhv4ICjoYNTLn9CTsPe5h8RcD1W2IkxF5RMH5iG6H3s
|
|
36
|
-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
-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
-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
-
+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
-
JQJaOQKCAQBKsJ6XHLyPGXgGWG6odTKnVZwBYAwJKbrBkITA2nUI8rfml3n83nkU
|
|
41
|
-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
-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
-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
-
0L2KI2/uW28/asiOm6eF+gu4HST0NnDAsbSU4MyAGSrqzOp97YX15q1rhC1+R4Lw
|
|
45
|
-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
-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
-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
-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
-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
-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
|
|
51
|
-
-----END RSA PRIVATE KEY-----
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQC53wvncgMc7mMp9QIVdsAuespzMhOezvHQ6oEz3+UDnrTKRuquvCgwlIWAHYOh3Lc8nRiH6p8zaa0Jla67rQdL4Ox4GH5BjF2tRG4ZsmR/448/AQUUGyae6cRXFeEAGU6tvQpF5boFmvlqQTQnaGrc2KRkZxvSfTMNru50bR35z1J7kOVUtSXPPJ+qNPeO/rtvlLd/Oovju16CEMzJqR68XM8j87YT51rbe2nAA7uhA3PUl0MsoSyGz71pV+aAqeAOyXSk1Lrr+7Nv42x8TcCvoCUPp2c/R5vX093/M8gcVZmnswERGQVE/j+j5yJZBc5mEaXzkOi3s+e1TbZ8/mVHw6deLp1t5cRa7ZekyBtCJm1CK2oQ9beaJJM+APPTMkzRmgOzYKir5Kfm7I3hyFFwaArRTXtlxnof5j3Px55p3QaJE7q8bURlumDvlBXBlA4R3IzKjm75yMDf6Hzu6/llsk20mqS/PXq90BBXNL0LQgw6IlHqDwv7FJacwk33KDvBjqu8w7XprXeIhbUCp7yXuSrh9q5kq+qe80ySA+Sv2DH+tJ/KEpMhK0zVrdnUh9wBgQE6SJzvXm05P+5jpXtWe1lUqtxyZ0VM+NTwHiMFu6JxoJgIG6grNKdUZojCgRT4r5Xck9nqQ9l9m5zXIbFnapRTZWb0kq+mDybP0BL8Xw== maintainers@infrablocks.io
|
data/go
DELETED
|
@@ -1,56 +0,0 @@
|
|
|
1
|
-
#!/usr/bin/env bash
|
|
2
|
-
|
|
3
|
-
[ -n "$GO_DEBUG" ] && set -x
|
|
4
|
-
set -e
|
|
5
|
-
|
|
6
|
-
project_dir="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
|
|
7
|
-
|
|
8
|
-
verbose="no"
|
|
9
|
-
skip_checks="no"
|
|
10
|
-
offline="no"
|
|
11
|
-
|
|
12
|
-
missing_dependency="no"
|
|
13
|
-
|
|
14
|
-
[ -n "$GO_DEBUG" ] && verbose="yes"
|
|
15
|
-
[ -n "$GO_SKIP_CHECKS" ] && skip_checks="yes"
|
|
16
|
-
[ -n "$GO_OFFLINE" ] && offline="yes"
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
if [[ "$skip_checks" = "no" ]]; then
|
|
20
|
-
echo "Checking for system dependencies."
|
|
21
|
-
ruby_version="$(cat "$project_dir"/.ruby-version)"
|
|
22
|
-
if ! type ruby >/dev/null 2>&1 || ! ruby -v | grep -q "$ruby_version"; then
|
|
23
|
-
echo "This codebase requires Ruby $ruby_version."
|
|
24
|
-
missing_dependency="yes"
|
|
25
|
-
fi
|
|
26
|
-
|
|
27
|
-
if [[ "$missing_dependency" = "yes" ]]; then
|
|
28
|
-
echo "Please install missing dependencies to continue."
|
|
29
|
-
exit 1
|
|
30
|
-
fi
|
|
31
|
-
|
|
32
|
-
echo "All system dependencies present. Continuing."
|
|
33
|
-
fi
|
|
34
|
-
|
|
35
|
-
if [[ "$offline" = "no" ]]; then
|
|
36
|
-
echo "Installing bundler."
|
|
37
|
-
if [[ "$verbose" = "yes" ]]; then
|
|
38
|
-
gem install --no-document bundler
|
|
39
|
-
else
|
|
40
|
-
gem install --no-document bundler --silent
|
|
41
|
-
fi
|
|
42
|
-
|
|
43
|
-
echo "Installing ruby dependencies."
|
|
44
|
-
if [[ "$verbose" = "yes" ]]; then
|
|
45
|
-
bundle install
|
|
46
|
-
else
|
|
47
|
-
bundle install --quiet
|
|
48
|
-
fi
|
|
49
|
-
fi
|
|
50
|
-
|
|
51
|
-
echo "Starting rake."
|
|
52
|
-
if [[ "$verbose" = "yes" ]]; then
|
|
53
|
-
time bundle exec rake --verbose "$@"
|
|
54
|
-
else
|
|
55
|
-
time bundle exec rake "$@"
|
|
56
|
-
fi
|
data/lino.gemspec
DELETED
|
@@ -1,38 +0,0 @@
|
|
|
1
|
-
# coding: utf-8
|
|
2
|
-
lib = File.expand_path('../lib', __FILE__)
|
|
3
|
-
$LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
|
|
4
|
-
require 'lino/version'
|
|
5
|
-
|
|
6
|
-
Gem::Specification.new do |spec|
|
|
7
|
-
spec.name = 'lino'
|
|
8
|
-
spec.version = Lino::VERSION
|
|
9
|
-
spec.authors = ['Toby Clemson']
|
|
10
|
-
spec.email = ['tobyclemson@gmail.com']
|
|
11
|
-
|
|
12
|
-
spec.date = '2017-01-27'
|
|
13
|
-
spec.summary = 'Command line execution utilities'
|
|
14
|
-
spec.description = 'Command line builders and executors.'
|
|
15
|
-
spec.homepage = 'https://github.com/infrablocks/lino'
|
|
16
|
-
spec.license = 'MIT'
|
|
17
|
-
|
|
18
|
-
spec.files = `git ls-files -z`.split("\x0").reject do |f|
|
|
19
|
-
f.match(%r{^(test|spec|features)/})
|
|
20
|
-
end
|
|
21
|
-
spec.bindir = 'exe'
|
|
22
|
-
spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
|
|
23
|
-
spec.require_paths = ['lib']
|
|
24
|
-
|
|
25
|
-
spec.required_ruby_version = '>= 2.6'
|
|
26
|
-
|
|
27
|
-
spec.add_dependency 'hamster', '~> 3.0'
|
|
28
|
-
spec.add_dependency 'open4', '~> 1.3'
|
|
29
|
-
|
|
30
|
-
spec.add_development_dependency 'bundler', '~> 2.0'
|
|
31
|
-
spec.add_development_dependency 'rake', '~> 13.0'
|
|
32
|
-
spec.add_development_dependency 'rake_circle_ci', '~> 0.3'
|
|
33
|
-
spec.add_development_dependency 'rake_github', '~> 0.3'
|
|
34
|
-
spec.add_development_dependency 'rake_ssh', '~> 0.2'
|
|
35
|
-
spec.add_development_dependency 'rspec', '~> 3.9'
|
|
36
|
-
spec.add_development_dependency 'gem-release', '~> 2.0'
|
|
37
|
-
spec.add_development_dependency 'simplecov', '~> 0.16'
|
|
38
|
-
end
|
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
#!/usr/bin/env bash
|
|
2
|
-
|
|
3
|
-
[ -n "$DEBUG" ] && set -x
|
|
4
|
-
set -e
|
|
5
|
-
set -o pipefail
|
|
6
|
-
|
|
7
|
-
SCRIPT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
|
|
8
|
-
PROJECT_DIR="$( cd "$SCRIPT_DIR/../../.." && pwd )"
|
|
9
|
-
|
|
10
|
-
cd "$PROJECT_DIR"
|
|
11
|
-
|
|
12
|
-
git crypt unlock
|
|
13
|
-
|
|
14
|
-
mkdir -p ~/.gem
|
|
15
|
-
cp config/secrets/rubygems/credentials ~/.gem/credentials
|
|
16
|
-
chmod 0600 ~/.gem/credentials
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
#!/usr/bin/env bash
|
|
2
|
-
|
|
3
|
-
[ -n "$DEBUG" ] && set -x
|
|
4
|
-
set -e
|
|
5
|
-
set -o pipefail
|
|
6
|
-
|
|
7
|
-
SCRIPT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
|
|
8
|
-
PROJECT_DIR="$( cd "$SCRIPT_DIR/../../.." && pwd )"
|
|
9
|
-
|
|
10
|
-
cd "$PROJECT_DIR"
|
|
11
|
-
|
|
12
|
-
set +e
|
|
13
|
-
openssl version
|
|
14
|
-
openssl aes-256-cbc \
|
|
15
|
-
-d \
|
|
16
|
-
-md sha1 \
|
|
17
|
-
-in ./.circleci/gpg.private.enc \
|
|
18
|
-
-k "${ENCRYPTION_PASSPHRASE}" | gpg --import -
|
|
19
|
-
set -e
|
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
#!/usr/bin/env bash
|
|
2
|
-
|
|
3
|
-
[ -n "$DEBUG" ] && set -x
|
|
4
|
-
set -e
|
|
5
|
-
set -o pipefail
|
|
6
|
-
|
|
7
|
-
SCRIPT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
|
|
8
|
-
PROJECT_DIR="$( cd "$SCRIPT_DIR/../../.." && pwd )"
|
|
9
|
-
|
|
10
|
-
cd "$PROJECT_DIR"
|
|
11
|
-
|
|
12
|
-
./go version:bump[pre]
|
|
13
|
-
./go release
|
|
14
|
-
|
|
15
|
-
git status
|
|
16
|
-
git push
|
data/scripts/ci/steps/release.sh
DELETED
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
#!/usr/bin/env bash
|
|
2
|
-
|
|
3
|
-
[ -n "$DEBUG" ] && set -x
|
|
4
|
-
set -e
|
|
5
|
-
set -o pipefail
|
|
6
|
-
|
|
7
|
-
SCRIPT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
|
|
8
|
-
PROJECT_DIR="$( cd "$SCRIPT_DIR/../../.." && pwd )"
|
|
9
|
-
|
|
10
|
-
cd "$PROJECT_DIR"
|
|
11
|
-
|
|
12
|
-
git pull
|
|
13
|
-
|
|
14
|
-
./go version:bump[minor]
|
|
15
|
-
./go release
|
|
16
|
-
|
|
17
|
-
git status
|
|
18
|
-
git push
|
data/scripts/ci/steps/test.sh
DELETED