webtask 0.1.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.
Files changed (139) hide show
  1. checksums.yaml +7 -0
  2. data/.gitignore +11 -0
  3. data/.rspec +2 -0
  4. data/.travis.yml +5 -0
  5. data/CODE_OF_CONDUCT.md +49 -0
  6. data/CONTRIBUTING.md +5 -0
  7. data/Gemfile +4 -0
  8. data/LICENSE +21 -0
  9. data/README.md +39 -0
  10. data/Rakefile +6 -0
  11. data/bin/console +14 -0
  12. data/bin/setup +8 -0
  13. data/example/Rakefile +62 -0
  14. data/example/test.log +21 -0
  15. data/exe/webtask +5 -0
  16. data/lib/webtask.rb +18 -0
  17. data/lib/webtask/application.rb +23 -0
  18. data/lib/webtask/public/javascripts/application.js +25 -0
  19. data/lib/webtask/public/stylesheets/application.css +277 -0
  20. data/lib/webtask/public/stylesheets/application.css.map +7 -0
  21. data/lib/webtask/public/stylesheets/sass/application.scss +106 -0
  22. data/lib/webtask/public/stylesheets/sass/base/_base.scss +15 -0
  23. data/lib/webtask/public/stylesheets/sass/base/_buttons.scss +35 -0
  24. data/lib/webtask/public/stylesheets/sass/base/_forms.scss +84 -0
  25. data/lib/webtask/public/stylesheets/sass/base/_grid-settings.scss +14 -0
  26. data/lib/webtask/public/stylesheets/sass/base/_lists.scss +19 -0
  27. data/lib/webtask/public/stylesheets/sass/base/_tables.scss +24 -0
  28. data/lib/webtask/public/stylesheets/sass/base/_typography.scss +48 -0
  29. data/lib/webtask/public/stylesheets/sass/base/_variables.scss +44 -0
  30. data/lib/webtask/public/stylesheets/sass/bourbon/_bourbon-deprecated-upcoming.scss +411 -0
  31. data/lib/webtask/public/stylesheets/sass/bourbon/_bourbon.scss +87 -0
  32. data/lib/webtask/public/stylesheets/sass/bourbon/addons/_border-color.scss +26 -0
  33. data/lib/webtask/public/stylesheets/sass/bourbon/addons/_border-radius.scss +48 -0
  34. data/lib/webtask/public/stylesheets/sass/bourbon/addons/_border-style.scss +25 -0
  35. data/lib/webtask/public/stylesheets/sass/bourbon/addons/_border-width.scss +25 -0
  36. data/lib/webtask/public/stylesheets/sass/bourbon/addons/_buttons.scss +64 -0
  37. data/lib/webtask/public/stylesheets/sass/bourbon/addons/_clearfix.scss +25 -0
  38. data/lib/webtask/public/stylesheets/sass/bourbon/addons/_ellipsis.scss +30 -0
  39. data/lib/webtask/public/stylesheets/sass/bourbon/addons/_font-stacks.scss +31 -0
  40. data/lib/webtask/public/stylesheets/sass/bourbon/addons/_hide-text.scss +27 -0
  41. data/lib/webtask/public/stylesheets/sass/bourbon/addons/_margin.scss +26 -0
  42. data/lib/webtask/public/stylesheets/sass/bourbon/addons/_padding.scss +26 -0
  43. data/lib/webtask/public/stylesheets/sass/bourbon/addons/_position.scss +48 -0
  44. data/lib/webtask/public/stylesheets/sass/bourbon/addons/_prefixer.scss +66 -0
  45. data/lib/webtask/public/stylesheets/sass/bourbon/addons/_retina-image.scss +25 -0
  46. data/lib/webtask/public/stylesheets/sass/bourbon/addons/_size.scss +51 -0
  47. data/lib/webtask/public/stylesheets/sass/bourbon/addons/_text-inputs.scss +113 -0
  48. data/lib/webtask/public/stylesheets/sass/bourbon/addons/_timing-functions.scss +34 -0
  49. data/lib/webtask/public/stylesheets/sass/bourbon/addons/_triangle.scss +63 -0
  50. data/lib/webtask/public/stylesheets/sass/bourbon/addons/_word-wrap.scss +29 -0
  51. data/lib/webtask/public/stylesheets/sass/bourbon/css3/_animation.scss +43 -0
  52. data/lib/webtask/public/stylesheets/sass/bourbon/css3/_appearance.scss +3 -0
  53. data/lib/webtask/public/stylesheets/sass/bourbon/css3/_backface-visibility.scss +3 -0
  54. data/lib/webtask/public/stylesheets/sass/bourbon/css3/_background-image.scss +42 -0
  55. data/lib/webtask/public/stylesheets/sass/bourbon/css3/_background.scss +55 -0
  56. data/lib/webtask/public/stylesheets/sass/bourbon/css3/_border-image.scss +59 -0
  57. data/lib/webtask/public/stylesheets/sass/bourbon/css3/_calc.scss +4 -0
  58. data/lib/webtask/public/stylesheets/sass/bourbon/css3/_columns.scss +47 -0
  59. data/lib/webtask/public/stylesheets/sass/bourbon/css3/_filter.scss +4 -0
  60. data/lib/webtask/public/stylesheets/sass/bourbon/css3/_flex-box.scss +287 -0
  61. data/lib/webtask/public/stylesheets/sass/bourbon/css3/_font-face.scss +24 -0
  62. data/lib/webtask/public/stylesheets/sass/bourbon/css3/_font-feature-settings.scss +4 -0
  63. data/lib/webtask/public/stylesheets/sass/bourbon/css3/_hidpi-media-query.scss +10 -0
  64. data/lib/webtask/public/stylesheets/sass/bourbon/css3/_hyphens.scss +4 -0
  65. data/lib/webtask/public/stylesheets/sass/bourbon/css3/_image-rendering.scss +14 -0
  66. data/lib/webtask/public/stylesheets/sass/bourbon/css3/_keyframes.scss +36 -0
  67. data/lib/webtask/public/stylesheets/sass/bourbon/css3/_linear-gradient.scss +38 -0
  68. data/lib/webtask/public/stylesheets/sass/bourbon/css3/_perspective.scss +8 -0
  69. data/lib/webtask/public/stylesheets/sass/bourbon/css3/_placeholder.scss +8 -0
  70. data/lib/webtask/public/stylesheets/sass/bourbon/css3/_radial-gradient.scss +39 -0
  71. data/lib/webtask/public/stylesheets/sass/bourbon/css3/_selection.scss +42 -0
  72. data/lib/webtask/public/stylesheets/sass/bourbon/css3/_text-decoration.scss +19 -0
  73. data/lib/webtask/public/stylesheets/sass/bourbon/css3/_transform.scss +15 -0
  74. data/lib/webtask/public/stylesheets/sass/bourbon/css3/_transition.scss +71 -0
  75. data/lib/webtask/public/stylesheets/sass/bourbon/css3/_user-select.scss +3 -0
  76. data/lib/webtask/public/stylesheets/sass/bourbon/functions/_assign-inputs.scss +11 -0
  77. data/lib/webtask/public/stylesheets/sass/bourbon/functions/_contains-falsy.scss +20 -0
  78. data/lib/webtask/public/stylesheets/sass/bourbon/functions/_contains.scss +26 -0
  79. data/lib/webtask/public/stylesheets/sass/bourbon/functions/_is-length.scss +11 -0
  80. data/lib/webtask/public/stylesheets/sass/bourbon/functions/_is-light.scss +21 -0
  81. data/lib/webtask/public/stylesheets/sass/bourbon/functions/_is-number.scss +11 -0
  82. data/lib/webtask/public/stylesheets/sass/bourbon/functions/_is-size.scss +13 -0
  83. data/lib/webtask/public/stylesheets/sass/bourbon/functions/_modular-scale.scss +69 -0
  84. data/lib/webtask/public/stylesheets/sass/bourbon/functions/_px-to-em.scss +13 -0
  85. data/lib/webtask/public/stylesheets/sass/bourbon/functions/_px-to-rem.scss +15 -0
  86. data/lib/webtask/public/stylesheets/sass/bourbon/functions/_shade.scss +24 -0
  87. data/lib/webtask/public/stylesheets/sass/bourbon/functions/_strip-units.scss +17 -0
  88. data/lib/webtask/public/stylesheets/sass/bourbon/functions/_tint.scss +24 -0
  89. data/lib/webtask/public/stylesheets/sass/bourbon/functions/_transition-property-name.scss +22 -0
  90. data/lib/webtask/public/stylesheets/sass/bourbon/functions/_unpack.scss +27 -0
  91. data/lib/webtask/public/stylesheets/sass/bourbon/helpers/_convert-units.scss +21 -0
  92. data/lib/webtask/public/stylesheets/sass/bourbon/helpers/_directional-values.scss +96 -0
  93. data/lib/webtask/public/stylesheets/sass/bourbon/helpers/_font-source-declaration.scss +43 -0
  94. data/lib/webtask/public/stylesheets/sass/bourbon/helpers/_gradient-positions-parser.scss +13 -0
  95. data/lib/webtask/public/stylesheets/sass/bourbon/helpers/_linear-angle-parser.scss +25 -0
  96. data/lib/webtask/public/stylesheets/sass/bourbon/helpers/_linear-gradient-parser.scss +41 -0
  97. data/lib/webtask/public/stylesheets/sass/bourbon/helpers/_linear-positions-parser.scss +61 -0
  98. data/lib/webtask/public/stylesheets/sass/bourbon/helpers/_linear-side-corner-parser.scss +31 -0
  99. data/lib/webtask/public/stylesheets/sass/bourbon/helpers/_radial-arg-parser.scss +69 -0
  100. data/lib/webtask/public/stylesheets/sass/bourbon/helpers/_radial-gradient-parser.scss +50 -0
  101. data/lib/webtask/public/stylesheets/sass/bourbon/helpers/_radial-positions-parser.scss +18 -0
  102. data/lib/webtask/public/stylesheets/sass/bourbon/helpers/_render-gradients.scss +26 -0
  103. data/lib/webtask/public/stylesheets/sass/bourbon/helpers/_shape-size-stripper.scss +10 -0
  104. data/lib/webtask/public/stylesheets/sass/bourbon/helpers/_str-to-num.scss +50 -0
  105. data/lib/webtask/public/stylesheets/sass/bourbon/settings/_asset-pipeline.scss +7 -0
  106. data/lib/webtask/public/stylesheets/sass/bourbon/settings/_prefixer.scss +9 -0
  107. data/lib/webtask/public/stylesheets/sass/bourbon/settings/_px-to-em.scss +1 -0
  108. data/lib/webtask/public/stylesheets/sass/neat/_neat-helpers.scss +11 -0
  109. data/lib/webtask/public/stylesheets/sass/neat/_neat.scss +23 -0
  110. data/lib/webtask/public/stylesheets/sass/neat/functions/_new-breakpoint.scss +49 -0
  111. data/lib/webtask/public/stylesheets/sass/neat/functions/_private.scss +114 -0
  112. data/lib/webtask/public/stylesheets/sass/neat/grid/_box-sizing.scss +15 -0
  113. data/lib/webtask/public/stylesheets/sass/neat/grid/_direction-context.scss +33 -0
  114. data/lib/webtask/public/stylesheets/sass/neat/grid/_display-context.scss +28 -0
  115. data/lib/webtask/public/stylesheets/sass/neat/grid/_fill-parent.scss +22 -0
  116. data/lib/webtask/public/stylesheets/sass/neat/grid/_media.scss +92 -0
  117. data/lib/webtask/public/stylesheets/sass/neat/grid/_omega.scss +87 -0
  118. data/lib/webtask/public/stylesheets/sass/neat/grid/_outer-container.scss +34 -0
  119. data/lib/webtask/public/stylesheets/sass/neat/grid/_pad.scss +25 -0
  120. data/lib/webtask/public/stylesheets/sass/neat/grid/_private.scss +35 -0
  121. data/lib/webtask/public/stylesheets/sass/neat/grid/_row.scss +52 -0
  122. data/lib/webtask/public/stylesheets/sass/neat/grid/_shift.scss +50 -0
  123. data/lib/webtask/public/stylesheets/sass/neat/grid/_span-columns.scss +94 -0
  124. data/lib/webtask/public/stylesheets/sass/neat/grid/_to-deprecate.scss +97 -0
  125. data/lib/webtask/public/stylesheets/sass/neat/grid/_visual-grid.scss +42 -0
  126. data/lib/webtask/public/stylesheets/sass/neat/mixins/_clearfix.scss +25 -0
  127. data/lib/webtask/public/stylesheets/sass/neat/settings/_disable-warnings.scss +13 -0
  128. data/lib/webtask/public/stylesheets/sass/neat/settings/_grid.scss +51 -0
  129. data/lib/webtask/public/stylesheets/sass/neat/settings/_visual-grid.scss +27 -0
  130. data/lib/webtask/rake_application.rb +40 -0
  131. data/lib/webtask/stream_error.rb +18 -0
  132. data/lib/webtask/stream_out.rb +12 -0
  133. data/lib/webtask/task_runner.rb +63 -0
  134. data/lib/webtask/task_wrapper.rb +25 -0
  135. data/lib/webtask/version.rb +3 -0
  136. data/lib/webtask/views/index.haml +57 -0
  137. data/lib/webtask/views/result.haml +30 -0
  138. data/webtask.gemspec +34 -0
  139. metadata +339 -0
@@ -0,0 +1,27 @@
1
+ @charset "UTF-8";
2
+
3
+ /// Displays the visual grid when set to true. The overlaid grid may be few pixels off depending on the browser's rendering engine and pixel rounding algorithm. Set with the `!global` flag.
4
+ ///
5
+ /// @type Bool
6
+
7
+ $visual-grid: false !default;
8
+
9
+ /// Sets the visual grid color. Set with `!global` flag.
10
+ ///
11
+ /// @type Color
12
+
13
+ $visual-grid-color: #eee !default;
14
+
15
+ /// Sets the `z-index` property of the visual grid. Can be `back` (behind content) or `front` (in front of content). Set with `!global` flag.
16
+ ///
17
+ /// @type String
18
+
19
+ $visual-grid-index: back !default;
20
+
21
+ /// Sets the opacity property of the visual grid. Set with `!global` flag.
22
+ ///
23
+ /// @type Number (unitless)
24
+
25
+ $visual-grid-opacity: 0.4 !default;
26
+
27
+ $visual-grid-breakpoints: () !default;
@@ -0,0 +1,40 @@
1
+ module Webtask
2
+ class RakeApplication
3
+ # Required to access task descriptions
4
+ Rake::TaskManager.record_task_metadata = true
5
+
6
+ class << self
7
+ def tasks
8
+ @tasks ||= rake_app.tasks.map { |task| TaskWrapper.new(task) }
9
+ end
10
+
11
+ def build_task_endpoints(application)
12
+ tasks.each do |task|
13
+ application.post "/#{task.name}" do
14
+ argument_list = task.arg_names.map do |arg_name|
15
+ params[:args][arg_name]
16
+ end
17
+
18
+ stream_id = Digest::SHA1.hexdigest(rand.to_s)
19
+ application.settings.output_streams[stream_id] = task.shell_command(args: argument_list)
20
+
21
+ haml :result, format: :html5, locals: { task: task, stream_id: stream_id }
22
+ end
23
+ end
24
+ end
25
+
26
+
27
+ private
28
+
29
+ def rake_app
30
+ return @rake_app if @rake_app
31
+
32
+ @rake_app = Rake.application
33
+ @rake_app.init
34
+ @rake_app.load_rakefile
35
+
36
+ return @rake_app
37
+ end
38
+ end
39
+ end
40
+ end
@@ -0,0 +1,18 @@
1
+ module Webtask
2
+ class StreamError
3
+ def initialize(stream)
4
+ @stream = stream
5
+ @errors = false
6
+ end
7
+
8
+ def errors?
9
+ @errors
10
+ end
11
+
12
+ def write(data)
13
+ @errors = true
14
+ @stream << "event: stderr\n"
15
+ @stream << "data: #{data}\n\n"
16
+ end
17
+ end
18
+ end
@@ -0,0 +1,12 @@
1
+ module Webtask
2
+ class StreamOut
3
+ def initialize(stream)
4
+ @stream = stream
5
+ end
6
+
7
+ def write(data)
8
+ @stream << "event: stdout\n"
9
+ @stream << "data: #{data}\n\n"
10
+ end
11
+ end
12
+ end
@@ -0,0 +1,63 @@
1
+ module Webtask
2
+ class TaskRunner
3
+ class << self
4
+ def run(command:, out:)
5
+ runner = new(command: command, out: out)
6
+ runner.run
7
+ end
8
+ end
9
+
10
+ def initialize(command:, out:)
11
+ @command = command
12
+ @out = out
13
+ end
14
+
15
+ def run
16
+ print_intro
17
+
18
+ execute_command
19
+
20
+ print_outro
21
+ end
22
+
23
+
24
+ private
25
+
26
+ attr_reader :command
27
+ attr_reader :out
28
+
29
+ def outputs
30
+ @outputs ||= { err: StreamError.new(out), out: StreamOut.new(out) }
31
+ end
32
+
33
+ def print_intro
34
+ outputs[:out].write(">>> Running #{command.inspect}...")
35
+ outputs[:out].write("\n")
36
+ end
37
+
38
+ def execute_command
39
+ Open3.popen3(command) do |_stdin, stdout, stderr, thread|
40
+ # read each stream from a new thread
41
+ { out: stdout, err: stderr }.each do |key, io|
42
+ Thread.new do
43
+ until (raw_line = io.gets).nil? do
44
+ outputs[key].write [Time.now, raw_line].join(" - ")
45
+ end
46
+ end
47
+ end
48
+
49
+ thread.join # don't exit until the external process is done
50
+ end
51
+ end
52
+
53
+ def print_outro
54
+ outputs[:out].write("\n")
55
+
56
+ if outputs[:err].errors?
57
+ outputs[:err].write("There have been errors!")
58
+ else
59
+ outputs[:out].write("All Done!")
60
+ end
61
+ end
62
+ end
63
+ end
@@ -0,0 +1,25 @@
1
+ module Webtask
2
+ class TaskWrapper < SimpleDelegator
3
+ def has_options_for?(arg_name)
4
+ !!options[arg_name.to_sym]
5
+ end
6
+
7
+ def shell_command(args:)
8
+ "bundle exec rake #{name}[#{args.join(",")}]"
9
+ end
10
+
11
+ def options
12
+ arg_names.each_with_object({}) do |arg_name, options|
13
+ if __getobj__.respond_to?(:options_for, true)
14
+ if options_for_arg_name = __getobj__.send(:options_for, arg_name)
15
+ options[arg_name.to_sym] = options_for_arg_name
16
+ else
17
+ next
18
+ end
19
+ else
20
+ next
21
+ end
22
+ end
23
+ end
24
+ end
25
+ end
@@ -0,0 +1,3 @@
1
+ module Webtask
2
+ VERSION = "0.1.0"
3
+ end
@@ -0,0 +1,57 @@
1
+ !!! 5
2
+ %html{ lang: "en" }
3
+ %head
4
+ %meta{ charset: "utf-8" }
5
+ %title
6
+ Webrake
7
+ %link{ href: "/stylesheets/application.css", media: "all", rel: "stylesheet" }
8
+
9
+ %body
10
+ %nav.Webrake
11
+ %h1
12
+ &mdash; A web GUI for your Rake tasks
13
+
14
+ %section.Container
15
+
16
+ .Wrapper
17
+
18
+ %h2.Introduction
19
+ :markdown
20
+ The following tasks where discovered in your `Rakefile`
21
+
22
+ %hr
23
+
24
+ %ul.Tasks
25
+ - tasks.each do |task|
26
+ %li.Task
27
+ .Task_header
28
+ %h3.Task_name
29
+ Name
30
+ %span.Task_description
31
+ = task.name
32
+ .Task_header
33
+ %h3.Task_name
34
+ Description
35
+ %span.Task_description
36
+ :markdown
37
+ #{task.comment}
38
+ .Task_header
39
+ %h3.Task_name
40
+ Prerequisites
41
+ %span.Task_description
42
+ :markdown
43
+ #{task.prerequisite_tasks.map(&:name).inspect}
44
+ .Task_actions
45
+ .Task_actions-button
46
+ %form{ action: "/#{task.name}", method: :post }
47
+ - unless task.arg_names.empty?
48
+ %fieldset
49
+ %legend Arguments
50
+ - task.arg_names.each do |arg_name|
51
+ - if task.has_options_for?(arg_name)
52
+ %select.Task_action-input{ name: "args[#{arg_name}]" }
53
+ - task.options[arg_name].each do |arg_option|
54
+ %option{ value: arg_option }= arg_option
55
+ - else
56
+ %input.Task_action-input{ type: "text", name: "args[#{arg_name}]", placeholder: arg_name }
57
+ %input{ value: "Run Task", type: "submit" }
@@ -0,0 +1,30 @@
1
+ !!! 5
2
+ %html{ lang: "en" }
3
+ %head
4
+ %meta{ charset: "utf-8" }
5
+ %title
6
+ Webrake
7
+ %link{ href: "/stylesheets/application.css", media: "all", rel: "stylesheet" }
8
+
9
+ %body
10
+ %nav.Webrake
11
+ %h1
12
+ &mdash; A web GUI for your Rake tasks
13
+
14
+ %section.Container
15
+
16
+ .Wrapper
17
+
18
+ %h2.Introduction
19
+ Output of
20
+ %code= task.name
21
+
22
+ %hr
23
+
24
+ %pre.Task_output
25
+ %code#Task_output-content{ :"data-stream-id" => stream_id }
26
+
27
+ %hr
28
+ %a{ href: "/" } &larr; Back to List
29
+
30
+ %script{ src: "/javascripts/application.js" }
@@ -0,0 +1,34 @@
1
+ # coding: utf-8
2
+ lib = File.expand_path('../lib', __FILE__)
3
+ $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
4
+ require 'webtask/version'
5
+
6
+ Gem::Specification.new do |spec|
7
+ spec.name = "webtask"
8
+ spec.version = Webtask::VERSION
9
+ spec.authors = ["Yakshed / Dirk Breuer"]
10
+ spec.email = ["yakshed@breuer.io"]
11
+
12
+ spec.summary = %q{Provides a web GUI for your Rake tasks.}
13
+ spec.description = %q{Rake files are great when dealing with other devs. Which know Ruby. For all others a Rakefile is not very accessible. With webtask you can now make it accessible. Webtask will generate a nice web GUI for your Rakefile.}
14
+ spec.homepage = "https://github.com/yakshed/webtask"
15
+ spec.license = "MIT"
16
+
17
+ spec.files = `git ls-files -z`.split("\x0").reject { |f| f.match(%r{^(test|spec|features)/}) }
18
+ spec.bindir = "exe"
19
+ spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
20
+ spec.require_paths = ["lib"]
21
+
22
+ spec.add_dependency "sinatra", "~> 1.4.7"
23
+ spec.add_dependency "rake"
24
+ spec.add_dependency "thin", "~> 1.7.0"
25
+ spec.add_dependency "haml", "~> 4.0.7"
26
+ spec.add_dependency "markdown", "~> 1.2.0"
27
+
28
+ spec.add_development_dependency "bundler", "~> 1.12"
29
+ spec.add_development_dependency "rspec", "~> 3.0"
30
+ spec.add_development_dependency "bourbon", "~> 4.2.7"
31
+ spec.add_development_dependency "neat", "~> 1.8.0"
32
+ spec.add_development_dependency "bitters", "~> 1.2.0"
33
+ spec.add_development_dependency "pry", "~> 0.10"
34
+ end
metadata ADDED
@@ -0,0 +1,339 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: webtask
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.1.0
5
+ platform: ruby
6
+ authors:
7
+ - Yakshed / Dirk Breuer
8
+ autorequire:
9
+ bindir: exe
10
+ cert_chain: []
11
+ date: 2016-11-19 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: sinatra
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - "~>"
18
+ - !ruby/object:Gem::Version
19
+ version: 1.4.7
20
+ type: :runtime
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - "~>"
25
+ - !ruby/object:Gem::Version
26
+ version: 1.4.7
27
+ - !ruby/object:Gem::Dependency
28
+ name: rake
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - ">="
32
+ - !ruby/object:Gem::Version
33
+ version: '0'
34
+ type: :runtime
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - ">="
39
+ - !ruby/object:Gem::Version
40
+ version: '0'
41
+ - !ruby/object:Gem::Dependency
42
+ name: thin
43
+ requirement: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - "~>"
46
+ - !ruby/object:Gem::Version
47
+ version: 1.7.0
48
+ type: :runtime
49
+ prerelease: false
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - "~>"
53
+ - !ruby/object:Gem::Version
54
+ version: 1.7.0
55
+ - !ruby/object:Gem::Dependency
56
+ name: haml
57
+ requirement: !ruby/object:Gem::Requirement
58
+ requirements:
59
+ - - "~>"
60
+ - !ruby/object:Gem::Version
61
+ version: 4.0.7
62
+ type: :runtime
63
+ prerelease: false
64
+ version_requirements: !ruby/object:Gem::Requirement
65
+ requirements:
66
+ - - "~>"
67
+ - !ruby/object:Gem::Version
68
+ version: 4.0.7
69
+ - !ruby/object:Gem::Dependency
70
+ name: markdown
71
+ requirement: !ruby/object:Gem::Requirement
72
+ requirements:
73
+ - - "~>"
74
+ - !ruby/object:Gem::Version
75
+ version: 1.2.0
76
+ type: :runtime
77
+ prerelease: false
78
+ version_requirements: !ruby/object:Gem::Requirement
79
+ requirements:
80
+ - - "~>"
81
+ - !ruby/object:Gem::Version
82
+ version: 1.2.0
83
+ - !ruby/object:Gem::Dependency
84
+ name: bundler
85
+ requirement: !ruby/object:Gem::Requirement
86
+ requirements:
87
+ - - "~>"
88
+ - !ruby/object:Gem::Version
89
+ version: '1.12'
90
+ type: :development
91
+ prerelease: false
92
+ version_requirements: !ruby/object:Gem::Requirement
93
+ requirements:
94
+ - - "~>"
95
+ - !ruby/object:Gem::Version
96
+ version: '1.12'
97
+ - !ruby/object:Gem::Dependency
98
+ name: rspec
99
+ requirement: !ruby/object:Gem::Requirement
100
+ requirements:
101
+ - - "~>"
102
+ - !ruby/object:Gem::Version
103
+ version: '3.0'
104
+ type: :development
105
+ prerelease: false
106
+ version_requirements: !ruby/object:Gem::Requirement
107
+ requirements:
108
+ - - "~>"
109
+ - !ruby/object:Gem::Version
110
+ version: '3.0'
111
+ - !ruby/object:Gem::Dependency
112
+ name: bourbon
113
+ requirement: !ruby/object:Gem::Requirement
114
+ requirements:
115
+ - - "~>"
116
+ - !ruby/object:Gem::Version
117
+ version: 4.2.7
118
+ type: :development
119
+ prerelease: false
120
+ version_requirements: !ruby/object:Gem::Requirement
121
+ requirements:
122
+ - - "~>"
123
+ - !ruby/object:Gem::Version
124
+ version: 4.2.7
125
+ - !ruby/object:Gem::Dependency
126
+ name: neat
127
+ requirement: !ruby/object:Gem::Requirement
128
+ requirements:
129
+ - - "~>"
130
+ - !ruby/object:Gem::Version
131
+ version: 1.8.0
132
+ type: :development
133
+ prerelease: false
134
+ version_requirements: !ruby/object:Gem::Requirement
135
+ requirements:
136
+ - - "~>"
137
+ - !ruby/object:Gem::Version
138
+ version: 1.8.0
139
+ - !ruby/object:Gem::Dependency
140
+ name: bitters
141
+ requirement: !ruby/object:Gem::Requirement
142
+ requirements:
143
+ - - "~>"
144
+ - !ruby/object:Gem::Version
145
+ version: 1.2.0
146
+ type: :development
147
+ prerelease: false
148
+ version_requirements: !ruby/object:Gem::Requirement
149
+ requirements:
150
+ - - "~>"
151
+ - !ruby/object:Gem::Version
152
+ version: 1.2.0
153
+ - !ruby/object:Gem::Dependency
154
+ name: pry
155
+ requirement: !ruby/object:Gem::Requirement
156
+ requirements:
157
+ - - "~>"
158
+ - !ruby/object:Gem::Version
159
+ version: '0.10'
160
+ type: :development
161
+ prerelease: false
162
+ version_requirements: !ruby/object:Gem::Requirement
163
+ requirements:
164
+ - - "~>"
165
+ - !ruby/object:Gem::Version
166
+ version: '0.10'
167
+ description: Rake files are great when dealing with other devs. Which know Ruby. For
168
+ all others a Rakefile is not very accessible. With webtask you can now make it accessible.
169
+ Webtask will generate a nice web GUI for your Rakefile.
170
+ email:
171
+ - yakshed@breuer.io
172
+ executables:
173
+ - webtask
174
+ extensions: []
175
+ extra_rdoc_files: []
176
+ files:
177
+ - ".gitignore"
178
+ - ".rspec"
179
+ - ".travis.yml"
180
+ - CODE_OF_CONDUCT.md
181
+ - CONTRIBUTING.md
182
+ - Gemfile
183
+ - Gemfile.lock
184
+ - LICENSE
185
+ - README.md
186
+ - Rakefile
187
+ - bin/console
188
+ - bin/setup
189
+ - example/Rakefile
190
+ - example/test.log
191
+ - exe/webtask
192
+ - lib/webtask.rb
193
+ - lib/webtask/application.rb
194
+ - lib/webtask/public/javascripts/application.js
195
+ - lib/webtask/public/stylesheets/application.css
196
+ - lib/webtask/public/stylesheets/application.css.map
197
+ - lib/webtask/public/stylesheets/sass/application.scss
198
+ - lib/webtask/public/stylesheets/sass/base/_base.scss
199
+ - lib/webtask/public/stylesheets/sass/base/_buttons.scss
200
+ - lib/webtask/public/stylesheets/sass/base/_forms.scss
201
+ - lib/webtask/public/stylesheets/sass/base/_grid-settings.scss
202
+ - lib/webtask/public/stylesheets/sass/base/_lists.scss
203
+ - lib/webtask/public/stylesheets/sass/base/_tables.scss
204
+ - lib/webtask/public/stylesheets/sass/base/_typography.scss
205
+ - lib/webtask/public/stylesheets/sass/base/_variables.scss
206
+ - lib/webtask/public/stylesheets/sass/bourbon/_bourbon-deprecated-upcoming.scss
207
+ - lib/webtask/public/stylesheets/sass/bourbon/_bourbon.scss
208
+ - lib/webtask/public/stylesheets/sass/bourbon/addons/_border-color.scss
209
+ - lib/webtask/public/stylesheets/sass/bourbon/addons/_border-radius.scss
210
+ - lib/webtask/public/stylesheets/sass/bourbon/addons/_border-style.scss
211
+ - lib/webtask/public/stylesheets/sass/bourbon/addons/_border-width.scss
212
+ - lib/webtask/public/stylesheets/sass/bourbon/addons/_buttons.scss
213
+ - lib/webtask/public/stylesheets/sass/bourbon/addons/_clearfix.scss
214
+ - lib/webtask/public/stylesheets/sass/bourbon/addons/_ellipsis.scss
215
+ - lib/webtask/public/stylesheets/sass/bourbon/addons/_font-stacks.scss
216
+ - lib/webtask/public/stylesheets/sass/bourbon/addons/_hide-text.scss
217
+ - lib/webtask/public/stylesheets/sass/bourbon/addons/_margin.scss
218
+ - lib/webtask/public/stylesheets/sass/bourbon/addons/_padding.scss
219
+ - lib/webtask/public/stylesheets/sass/bourbon/addons/_position.scss
220
+ - lib/webtask/public/stylesheets/sass/bourbon/addons/_prefixer.scss
221
+ - lib/webtask/public/stylesheets/sass/bourbon/addons/_retina-image.scss
222
+ - lib/webtask/public/stylesheets/sass/bourbon/addons/_size.scss
223
+ - lib/webtask/public/stylesheets/sass/bourbon/addons/_text-inputs.scss
224
+ - lib/webtask/public/stylesheets/sass/bourbon/addons/_timing-functions.scss
225
+ - lib/webtask/public/stylesheets/sass/bourbon/addons/_triangle.scss
226
+ - lib/webtask/public/stylesheets/sass/bourbon/addons/_word-wrap.scss
227
+ - lib/webtask/public/stylesheets/sass/bourbon/css3/_animation.scss
228
+ - lib/webtask/public/stylesheets/sass/bourbon/css3/_appearance.scss
229
+ - lib/webtask/public/stylesheets/sass/bourbon/css3/_backface-visibility.scss
230
+ - lib/webtask/public/stylesheets/sass/bourbon/css3/_background-image.scss
231
+ - lib/webtask/public/stylesheets/sass/bourbon/css3/_background.scss
232
+ - lib/webtask/public/stylesheets/sass/bourbon/css3/_border-image.scss
233
+ - lib/webtask/public/stylesheets/sass/bourbon/css3/_calc.scss
234
+ - lib/webtask/public/stylesheets/sass/bourbon/css3/_columns.scss
235
+ - lib/webtask/public/stylesheets/sass/bourbon/css3/_filter.scss
236
+ - lib/webtask/public/stylesheets/sass/bourbon/css3/_flex-box.scss
237
+ - lib/webtask/public/stylesheets/sass/bourbon/css3/_font-face.scss
238
+ - lib/webtask/public/stylesheets/sass/bourbon/css3/_font-feature-settings.scss
239
+ - lib/webtask/public/stylesheets/sass/bourbon/css3/_hidpi-media-query.scss
240
+ - lib/webtask/public/stylesheets/sass/bourbon/css3/_hyphens.scss
241
+ - lib/webtask/public/stylesheets/sass/bourbon/css3/_image-rendering.scss
242
+ - lib/webtask/public/stylesheets/sass/bourbon/css3/_keyframes.scss
243
+ - lib/webtask/public/stylesheets/sass/bourbon/css3/_linear-gradient.scss
244
+ - lib/webtask/public/stylesheets/sass/bourbon/css3/_perspective.scss
245
+ - lib/webtask/public/stylesheets/sass/bourbon/css3/_placeholder.scss
246
+ - lib/webtask/public/stylesheets/sass/bourbon/css3/_radial-gradient.scss
247
+ - lib/webtask/public/stylesheets/sass/bourbon/css3/_selection.scss
248
+ - lib/webtask/public/stylesheets/sass/bourbon/css3/_text-decoration.scss
249
+ - lib/webtask/public/stylesheets/sass/bourbon/css3/_transform.scss
250
+ - lib/webtask/public/stylesheets/sass/bourbon/css3/_transition.scss
251
+ - lib/webtask/public/stylesheets/sass/bourbon/css3/_user-select.scss
252
+ - lib/webtask/public/stylesheets/sass/bourbon/functions/_assign-inputs.scss
253
+ - lib/webtask/public/stylesheets/sass/bourbon/functions/_contains-falsy.scss
254
+ - lib/webtask/public/stylesheets/sass/bourbon/functions/_contains.scss
255
+ - lib/webtask/public/stylesheets/sass/bourbon/functions/_is-length.scss
256
+ - lib/webtask/public/stylesheets/sass/bourbon/functions/_is-light.scss
257
+ - lib/webtask/public/stylesheets/sass/bourbon/functions/_is-number.scss
258
+ - lib/webtask/public/stylesheets/sass/bourbon/functions/_is-size.scss
259
+ - lib/webtask/public/stylesheets/sass/bourbon/functions/_modular-scale.scss
260
+ - lib/webtask/public/stylesheets/sass/bourbon/functions/_px-to-em.scss
261
+ - lib/webtask/public/stylesheets/sass/bourbon/functions/_px-to-rem.scss
262
+ - lib/webtask/public/stylesheets/sass/bourbon/functions/_shade.scss
263
+ - lib/webtask/public/stylesheets/sass/bourbon/functions/_strip-units.scss
264
+ - lib/webtask/public/stylesheets/sass/bourbon/functions/_tint.scss
265
+ - lib/webtask/public/stylesheets/sass/bourbon/functions/_transition-property-name.scss
266
+ - lib/webtask/public/stylesheets/sass/bourbon/functions/_unpack.scss
267
+ - lib/webtask/public/stylesheets/sass/bourbon/helpers/_convert-units.scss
268
+ - lib/webtask/public/stylesheets/sass/bourbon/helpers/_directional-values.scss
269
+ - lib/webtask/public/stylesheets/sass/bourbon/helpers/_font-source-declaration.scss
270
+ - lib/webtask/public/stylesheets/sass/bourbon/helpers/_gradient-positions-parser.scss
271
+ - lib/webtask/public/stylesheets/sass/bourbon/helpers/_linear-angle-parser.scss
272
+ - lib/webtask/public/stylesheets/sass/bourbon/helpers/_linear-gradient-parser.scss
273
+ - lib/webtask/public/stylesheets/sass/bourbon/helpers/_linear-positions-parser.scss
274
+ - lib/webtask/public/stylesheets/sass/bourbon/helpers/_linear-side-corner-parser.scss
275
+ - lib/webtask/public/stylesheets/sass/bourbon/helpers/_radial-arg-parser.scss
276
+ - lib/webtask/public/stylesheets/sass/bourbon/helpers/_radial-gradient-parser.scss
277
+ - lib/webtask/public/stylesheets/sass/bourbon/helpers/_radial-positions-parser.scss
278
+ - lib/webtask/public/stylesheets/sass/bourbon/helpers/_render-gradients.scss
279
+ - lib/webtask/public/stylesheets/sass/bourbon/helpers/_shape-size-stripper.scss
280
+ - lib/webtask/public/stylesheets/sass/bourbon/helpers/_str-to-num.scss
281
+ - lib/webtask/public/stylesheets/sass/bourbon/settings/_asset-pipeline.scss
282
+ - lib/webtask/public/stylesheets/sass/bourbon/settings/_prefixer.scss
283
+ - lib/webtask/public/stylesheets/sass/bourbon/settings/_px-to-em.scss
284
+ - lib/webtask/public/stylesheets/sass/neat/_neat-helpers.scss
285
+ - lib/webtask/public/stylesheets/sass/neat/_neat.scss
286
+ - lib/webtask/public/stylesheets/sass/neat/functions/_new-breakpoint.scss
287
+ - lib/webtask/public/stylesheets/sass/neat/functions/_private.scss
288
+ - lib/webtask/public/stylesheets/sass/neat/grid/_box-sizing.scss
289
+ - lib/webtask/public/stylesheets/sass/neat/grid/_direction-context.scss
290
+ - lib/webtask/public/stylesheets/sass/neat/grid/_display-context.scss
291
+ - lib/webtask/public/stylesheets/sass/neat/grid/_fill-parent.scss
292
+ - lib/webtask/public/stylesheets/sass/neat/grid/_media.scss
293
+ - lib/webtask/public/stylesheets/sass/neat/grid/_omega.scss
294
+ - lib/webtask/public/stylesheets/sass/neat/grid/_outer-container.scss
295
+ - lib/webtask/public/stylesheets/sass/neat/grid/_pad.scss
296
+ - lib/webtask/public/stylesheets/sass/neat/grid/_private.scss
297
+ - lib/webtask/public/stylesheets/sass/neat/grid/_row.scss
298
+ - lib/webtask/public/stylesheets/sass/neat/grid/_shift.scss
299
+ - lib/webtask/public/stylesheets/sass/neat/grid/_span-columns.scss
300
+ - lib/webtask/public/stylesheets/sass/neat/grid/_to-deprecate.scss
301
+ - lib/webtask/public/stylesheets/sass/neat/grid/_visual-grid.scss
302
+ - lib/webtask/public/stylesheets/sass/neat/mixins/_clearfix.scss
303
+ - lib/webtask/public/stylesheets/sass/neat/settings/_disable-warnings.scss
304
+ - lib/webtask/public/stylesheets/sass/neat/settings/_grid.scss
305
+ - lib/webtask/public/stylesheets/sass/neat/settings/_visual-grid.scss
306
+ - lib/webtask/rake_application.rb
307
+ - lib/webtask/stream_error.rb
308
+ - lib/webtask/stream_out.rb
309
+ - lib/webtask/task_runner.rb
310
+ - lib/webtask/task_wrapper.rb
311
+ - lib/webtask/version.rb
312
+ - lib/webtask/views/index.haml
313
+ - lib/webtask/views/result.haml
314
+ - webtask.gemspec
315
+ homepage: https://github.com/yakshed/webtask
316
+ licenses:
317
+ - MIT
318
+ metadata: {}
319
+ post_install_message:
320
+ rdoc_options: []
321
+ require_paths:
322
+ - lib
323
+ required_ruby_version: !ruby/object:Gem::Requirement
324
+ requirements:
325
+ - - ">="
326
+ - !ruby/object:Gem::Version
327
+ version: '0'
328
+ required_rubygems_version: !ruby/object:Gem::Requirement
329
+ requirements:
330
+ - - ">="
331
+ - !ruby/object:Gem::Version
332
+ version: '0'
333
+ requirements: []
334
+ rubyforge_project:
335
+ rubygems_version: 2.5.1
336
+ signing_key:
337
+ specification_version: 4
338
+ summary: Provides a web GUI for your Rake tasks.
339
+ test_files: []