nli_pipeline 0.1.2 → 0.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,31 @@
1
+ require 'nli_pipeline/abstract_util/init_attrs'
2
+
3
+ module NliPipeline
4
+ module SystemWrapper
5
+ # handles errors for system calls
6
+ class CallWrapperError < StandardError
7
+ include NliPipeline::AbstractUtil
8
+
9
+ # static methods required by NliPipeline::AbstractUtil::init_attrs
10
+ # @see NliPipeline::AbstractUtil#init_with_attrs
11
+ # @see NliPipeline::AbstractUtil#get_allowed_args
12
+ # @return [Hash]
13
+ def self.supported_args
14
+ { call: '', code: 0, msg: 'An error occurred during system call' }
15
+ end
16
+
17
+ # @see NliPipeline::AbstractUtil#init_with_attrs
18
+ # @see NliPipeline::AbstractUtil::ClassMethods#required_args?
19
+ # @return [Array[Symbol]]
20
+ def self.required_args
21
+ %i[call code]
22
+ end
23
+
24
+ # use StandardError::initialize to assign kwargs to output
25
+ def initialize(**kwargs)
26
+ init_with_attrs(**kwargs)
27
+ super("#{msg}:\n'#{call}'\nExited with code: #{code}")
28
+ end
29
+ end
30
+ end
31
+ end
@@ -0,0 +1,43 @@
1
+ require 'nli_pipeline/abstract_util/init_attrs'
2
+
3
+ module NliPipeline
4
+ module SystemWrapper
5
+ # handles errors for config
6
+ class ConfigError < StandardError
7
+ attr_reader :error_message
8
+
9
+ include NliPipeline::AbstractUtil
10
+
11
+ # static methods required by NliPipeline::AbstractUtil::init_attrs
12
+ # @see NliPipeline::AbstractUtil#init_with_attrs
13
+ # @see NliPipeline::AbstractUtil#get_allowed_args
14
+ # @return [Hash]
15
+ def self.supported_args
16
+ { config: {}, msg: 'Config Error', file: false }
17
+ end
18
+
19
+ # @see NliPipeline::AbstractUtil#init_with_attrs
20
+ # @see NliPipeline::AbstractUtil::ClassMethods#required_args?
21
+ # @return [Array[Symbol]]
22
+ def self.required_args
23
+ [:config]
24
+ end
25
+
26
+ # override to_s from AbstractUtil
27
+ # return single line summary of error
28
+ # @return [String]
29
+ def to_s
30
+ @error_message
31
+ end
32
+
33
+ # wrap up kwargs into single variable error_message
34
+ def initialize(**kwargs)
35
+ init_with_attrs(**kwargs)
36
+ message = "#{@msg}: #{@config}"
37
+ message += " in #{@file}" if file
38
+ @error_message = message
39
+ super(message)
40
+ end
41
+ end
42
+ end
43
+ end
@@ -0,0 +1,6 @@
1
+ module NliPipeline
2
+ # constant use in nli_pipeline.gemspec and bin/setup_pipeline
3
+ # to determine current version of gem
4
+ # should also match tag on bitbucket
5
+ VERSION = '0.2.0'.freeze
6
+ end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: nli_pipeline
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.2
4
+ version: 0.2.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Conor Sheehan
@@ -30,6 +30,20 @@ dependencies:
30
30
  - - ">="
31
31
  - !ruby/object:Gem::Version
32
32
  version: 0.8.1
33
+ - !ruby/object:Gem::Dependency
34
+ name: byebug
35
+ requirement: !ruby/object:Gem::Requirement
36
+ requirements:
37
+ - - "~>"
38
+ - !ruby/object:Gem::Version
39
+ version: '10.0'
40
+ type: :development
41
+ prerelease: false
42
+ version_requirements: !ruby/object:Gem::Requirement
43
+ requirements:
44
+ - - "~>"
45
+ - !ruby/object:Gem::Version
46
+ version: '10.0'
33
47
  - !ruby/object:Gem::Dependency
34
48
  name: rspec
35
49
  requirement: !ruby/object:Gem::Requirement
@@ -50,19 +64,66 @@ dependencies:
50
64
  - - ">="
51
65
  - !ruby/object:Gem::Version
52
66
  version: 3.7.0
67
+ - !ruby/object:Gem::Dependency
68
+ name: rubocop
69
+ requirement: !ruby/object:Gem::Requirement
70
+ requirements:
71
+ - - "~>"
72
+ - !ruby/object:Gem::Version
73
+ version: 0.57.2
74
+ type: :development
75
+ prerelease: false
76
+ version_requirements: !ruby/object:Gem::Requirement
77
+ requirements:
78
+ - - "~>"
79
+ - !ruby/object:Gem::Version
80
+ version: 0.57.2
81
+ - !ruby/object:Gem::Dependency
82
+ name: simplecov
83
+ requirement: !ruby/object:Gem::Requirement
84
+ requirements:
85
+ - - "~>"
86
+ - !ruby/object:Gem::Version
87
+ version: 0.16.1
88
+ type: :development
89
+ prerelease: false
90
+ version_requirements: !ruby/object:Gem::Requirement
91
+ requirements:
92
+ - - "~>"
93
+ - !ruby/object:Gem::Version
94
+ version: 0.16.1
95
+ - !ruby/object:Gem::Dependency
96
+ name: yard
97
+ requirement: !ruby/object:Gem::Requirement
98
+ requirements:
99
+ - - "~>"
100
+ - !ruby/object:Gem::Version
101
+ version: 0.9.14
102
+ type: :development
103
+ prerelease: false
104
+ version_requirements: !ruby/object:Gem::Requirement
105
+ requirements:
106
+ - - "~>"
107
+ - !ruby/object:Gem::Version
108
+ version: 0.9.14
53
109
  description: A gem for manging .EXAMPLE files
54
110
  email: csheehan@nli.ie
55
111
  executables:
56
112
  - setup_pipeline
57
113
  extensions: []
58
- extra_rdoc_files:
59
- - History.txt
114
+ extra_rdoc_files: []
60
115
  files:
61
- - History.txt
62
116
  - bin/setup_pipeline
63
117
  - lib/nli_pipeline.rb
118
+ - lib/nli_pipeline/abstract_util/init_attrs.rb
119
+ - lib/nli_pipeline/docker_manager.rb
64
120
  - lib/nli_pipeline/file_manager.rb
121
+ - lib/nli_pipeline/git_manager.rb
65
122
  - lib/nli_pipeline/setup_pipeline.rb
123
+ - lib/nli_pipeline/system_wrapper/call_wrapper.rb
124
+ - lib/nli_pipeline/system_wrapper/call_wrapper_error.rb
125
+ - lib/nli_pipeline/system_wrapper/config_error.rb
126
+ - lib/nli_pipeline/version.rb
66
127
  homepage: https://rubygems.org/gems/nli_pipeline
67
128
  licenses:
68
129
  - MIT
data/History.txt DELETED
@@ -1,52 +0,0 @@
1
- # coding: UTF-8
2
-
3
- === 0.1.2 / 2018-06-08
4
- Features:
5
- * --help show help screen
6
- * --show-commands show available commands
7
- * --show-flags show available arguments
8
- * show_last_created show file created by last setup_pipeline command
9
-
10
- Slight improvement on doc and test coverage
11
-
12
-
13
-
14
- === 0.1.1 / 2018-05-14
15
-
16
- Bug Fixes
17
-
18
- * Include runtime and development dependencies
19
-
20
-
21
-
22
- === 0.1.0 / 2018-05-11
23
-
24
- Breaking changes:
25
-
26
- * Remove --backup and --no-backup flags (should always backup if file already exists)
27
-
28
-
29
- Features:
30
-
31
- * Add color output
32
- * Add --debug flag to show all system commands and config
33
- * Add no_output option to suppress all output during tests
34
-
35
-
36
- === 0.0.1 / 2018-05-11
37
-
38
- Features:
39
-
40
- * Add RDOC
41
- * Add --version flag to show current version
42
- * Add --backup flag and --no-backup to handle backups
43
- * Add --extension= flag to use custom example file extenstions
44
- * Add undo option to load backup files from setup_pipeline executable
45
- * Slightly better testing, still unfinished / not using fake file system
46
-
47
-
48
- === 0.0.0 / 2018-04-26
49
-
50
- Features:
51
-
52
- * Basic setup_pipeline executable which moves all .EXAMPLE to non .EXAMPLE location