floe 0.0.1 → 0.1.1

Sign up to get free protection for your applications and to get access to all the features.
data/lib/floe.rb CHANGED
@@ -1,5 +1,44 @@
1
- require "floe/version"
1
+ # frozen_string_literal: true
2
+
3
+ require_relative "floe/version"
4
+
5
+ require_relative "floe/null_logger"
6
+ require_relative "floe/logging"
7
+
8
+ require_relative "floe/workflow"
9
+ require_relative "floe/workflow/catcher"
10
+ require_relative "floe/workflow/choice_rule"
11
+ require_relative "floe/workflow/choice_rule/boolean"
12
+ require_relative "floe/workflow/choice_rule/data"
13
+ require_relative "floe/workflow/path"
14
+ require_relative "floe/workflow/payload_template"
15
+ require_relative "floe/workflow/reference_path"
16
+ require_relative "floe/workflow/retrier"
17
+ require_relative "floe/workflow/runner"
18
+ require_relative "floe/workflow/runner/docker"
19
+ require_relative "floe/workflow/runner/kubernetes"
20
+ require_relative "floe/workflow/runner/podman"
21
+ require_relative "floe/workflow/state"
22
+ require_relative "floe/workflow/states/choice"
23
+ require_relative "floe/workflow/states/fail"
24
+ require_relative "floe/workflow/states/map"
25
+ require_relative "floe/workflow/states/parallel"
26
+ require_relative "floe/workflow/states/pass"
27
+ require_relative "floe/workflow/states/succeed"
28
+ require_relative "floe/workflow/states/task"
29
+ require_relative "floe/workflow/states/wait"
30
+
31
+ require "jsonpath"
2
32
 
3
33
  module Floe
4
- # Your code goes here...
34
+ class Error < StandardError; end
35
+ class InvalidWorkflowError < Error; end
36
+
37
+ def self.logger
38
+ @logger ||= NullLogger.new
39
+ end
40
+
41
+ def self.logger=(logger)
42
+ @logger = logger
43
+ end
5
44
  end
@@ -0,0 +1,4 @@
1
+ module Floe
2
+ VERSION: String
3
+ # See the writing guide of rbs: https://github.com/ruby/rbs#guides
4
+ end
metadata CHANGED
@@ -1,86 +1,165 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: floe
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.1
5
- prerelease:
4
+ version: 0.1.1
6
5
  platform: ruby
7
6
  authors:
8
- - Kyle Maxwell
9
- autorequire:
10
- bindir: bin
7
+ - ManageIQ Developers
8
+ autorequire:
9
+ bindir: exe
11
10
  cert_chain: []
12
- date: 2013-07-28 00:00:00.000000000 Z
11
+ date: 2023-06-05 00:00:00.000000000 Z
13
12
  dependencies:
14
13
  - !ruby/object:Gem::Dependency
15
- name: bundler
14
+ name: awesome_spawn
16
15
  requirement: !ruby/object:Gem::Requirement
17
- none: false
18
16
  requirements:
19
- - - ~>
17
+ - - "~>"
20
18
  - !ruby/object:Gem::Version
21
- version: '1.3'
19
+ version: '1.0'
20
+ type: :runtime
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - "~>"
25
+ - !ruby/object:Gem::Version
26
+ version: '1.0'
27
+ - !ruby/object:Gem::Dependency
28
+ name: jsonpath
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - "~>"
32
+ - !ruby/object:Gem::Version
33
+ version: '1.1'
34
+ type: :runtime
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - "~>"
39
+ - !ruby/object:Gem::Version
40
+ version: '1.1'
41
+ - !ruby/object:Gem::Dependency
42
+ name: optimist
43
+ requirement: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - "~>"
46
+ - !ruby/object:Gem::Version
47
+ version: '3.0'
48
+ type: :runtime
49
+ prerelease: false
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - "~>"
53
+ - !ruby/object:Gem::Version
54
+ version: '3.0'
55
+ - !ruby/object:Gem::Dependency
56
+ name: more_core_extensions
57
+ requirement: !ruby/object:Gem::Requirement
58
+ requirements:
59
+ - - ">="
60
+ - !ruby/object:Gem::Version
61
+ version: '0'
62
+ type: :runtime
63
+ prerelease: false
64
+ version_requirements: !ruby/object:Gem::Requirement
65
+ requirements:
66
+ - - ">="
67
+ - !ruby/object:Gem::Version
68
+ version: '0'
69
+ - !ruby/object:Gem::Dependency
70
+ name: rubocop
71
+ requirement: !ruby/object:Gem::Requirement
72
+ requirements:
73
+ - - ">="
74
+ - !ruby/object:Gem::Version
75
+ version: '0'
22
76
  type: :development
23
77
  prerelease: false
24
78
  version_requirements: !ruby/object:Gem::Requirement
25
- none: false
26
79
  requirements:
27
- - - ~>
80
+ - - ">="
28
81
  - !ruby/object:Gem::Version
29
- version: '1.3'
82
+ version: '0'
30
83
  - !ruby/object:Gem::Dependency
31
- name: rake
84
+ name: rspec
32
85
  requirement: !ruby/object:Gem::Requirement
33
- none: false
34
86
  requirements:
35
- - - ! '>='
87
+ - - ">="
36
88
  - !ruby/object:Gem::Version
37
89
  version: '0'
38
90
  type: :development
39
91
  prerelease: false
40
92
  version_requirements: !ruby/object:Gem::Requirement
41
- none: false
42
93
  requirements:
43
- - - ! '>='
94
+ - - ">="
44
95
  - !ruby/object:Gem::Version
45
96
  version: '0'
46
- description: The command-line issues client
97
+ description: Simple Workflow Runner.
47
98
  email:
48
- - kyle@kylemaxwell.com
49
- executables: []
99
+ executables:
100
+ - floe
50
101
  extensions: []
51
102
  extra_rdoc_files: []
52
103
  files:
53
- - .gitignore
104
+ - ".rspec"
105
+ - CHANGELOG.md
54
106
  - Gemfile
55
- - LICENSE.txt
56
107
  - README.md
57
108
  - Rakefile
109
+ - examples/workflow.asl
110
+ - exe/floe
58
111
  - floe.gemspec
59
112
  - lib/floe.rb
113
+ - lib/floe/logging.rb
114
+ - lib/floe/null_logger.rb
60
115
  - lib/floe/version.rb
61
- homepage: ''
62
- licenses:
63
- - MIT
64
- post_install_message:
116
+ - lib/floe/workflow.rb
117
+ - lib/floe/workflow/catcher.rb
118
+ - lib/floe/workflow/choice_rule.rb
119
+ - lib/floe/workflow/choice_rule/boolean.rb
120
+ - lib/floe/workflow/choice_rule/data.rb
121
+ - lib/floe/workflow/path.rb
122
+ - lib/floe/workflow/payload_template.rb
123
+ - lib/floe/workflow/reference_path.rb
124
+ - lib/floe/workflow/retrier.rb
125
+ - lib/floe/workflow/runner.rb
126
+ - lib/floe/workflow/runner/docker.rb
127
+ - lib/floe/workflow/runner/kubernetes.rb
128
+ - lib/floe/workflow/runner/podman.rb
129
+ - lib/floe/workflow/state.rb
130
+ - lib/floe/workflow/states/choice.rb
131
+ - lib/floe/workflow/states/fail.rb
132
+ - lib/floe/workflow/states/map.rb
133
+ - lib/floe/workflow/states/parallel.rb
134
+ - lib/floe/workflow/states/pass.rb
135
+ - lib/floe/workflow/states/succeed.rb
136
+ - lib/floe/workflow/states/task.rb
137
+ - lib/floe/workflow/states/wait.rb
138
+ - sig/floe.rbs/floe.rbs
139
+ homepage: https://github.com/ManageIQ/floe
140
+ licenses: []
141
+ metadata:
142
+ allowed_push_host: https://rubygems.org
143
+ homepage_uri: https://github.com/ManageIQ/floe
144
+ source_code_uri: https://github.com/ManageIQ/floe
145
+ changelog_uri: https://github.com/ManageIQ/floe/blob/master/CHANGELOG.md
146
+ post_install_message:
65
147
  rdoc_options: []
66
148
  require_paths:
67
149
  - lib
68
150
  required_ruby_version: !ruby/object:Gem::Requirement
69
- none: false
70
151
  requirements:
71
- - - ! '>='
152
+ - - ">="
72
153
  - !ruby/object:Gem::Version
73
- version: '0'
154
+ version: 2.7.0
74
155
  required_rubygems_version: !ruby/object:Gem::Requirement
75
- none: false
76
156
  requirements:
77
- - - ! '>='
157
+ - - ">="
78
158
  - !ruby/object:Gem::Version
79
159
  version: '0'
80
160
  requirements: []
81
- rubyforge_project:
82
- rubygems_version: 1.8.25
83
- signing_key:
84
- specification_version: 3
85
- summary: A quirky github issues client
161
+ rubygems_version: 3.3.15
162
+ signing_key:
163
+ specification_version: 4
164
+ summary: Simple Workflow Runner.
86
165
  test_files: []
data/.gitignore DELETED
@@ -1,17 +0,0 @@
1
- *.gem
2
- *.rbc
3
- .bundle
4
- .config
5
- .yardoc
6
- Gemfile.lock
7
- InstalledFiles
8
- _yardoc
9
- coverage
10
- doc/
11
- lib/bundler/man
12
- pkg
13
- rdoc
14
- spec/reports
15
- test/tmp
16
- test/version_tmp
17
- tmp
data/LICENSE.txt DELETED
@@ -1,22 +0,0 @@
1
- Copyright (c) 2013 Kyle Maxwell
2
-
3
- MIT License
4
-
5
- Permission is hereby granted, free of charge, to any person obtaining
6
- a copy of this software and associated documentation files (the
7
- "Software"), to deal in the Software without restriction, including
8
- without limitation the rights to use, copy, modify, merge, publish,
9
- distribute, sublicense, and/or sell copies of the Software, and to
10
- permit persons to whom the Software is furnished to do so, subject to
11
- the following conditions:
12
-
13
- The above copyright notice and this permission notice shall be
14
- included in all copies or substantial portions of the Software.
15
-
16
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
17
- EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
18
- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
19
- NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
20
- LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
21
- OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
22
- WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.