reemo 0.2.0.pre.SNAPSHOT

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: fb743b129f0abfd0ad88cedd537950dcd533b085
4
+ data.tar.gz: 31e5edcf24516a92d98f33574ce7b970c6bbf983
5
+ SHA512:
6
+ metadata.gz: bae107dd092a6252b7f46aaaa6e15e675222449fbd16385a67edd8fae425e6c33ca069a7e21491e8028870b32b613d01410f7dc1a89589012ffdefddddbabc4f
7
+ data.tar.gz: ca954566528c7473055a196af2b7441fed72991560db9eff2b07898d813099d10cd27fea6ff0157b815a75019d5bc3c13acb928ef7cc8ae2f601427a6369e1cb
data/.gitignore ADDED
@@ -0,0 +1,11 @@
1
+ /.bundle/
2
+ /.yardoc
3
+ /_yardoc/
4
+ /coverage/
5
+ /doc/
6
+ /pkg/
7
+ /spec/reports/
8
+ /tmp/
9
+ /vendor/cache
10
+
11
+ /.idea
data/Gemfile ADDED
@@ -0,0 +1,9 @@
1
+ source 'https://rubygems.org'
2
+
3
+ # gem 'multipart-post'
4
+ # gem 'minitar'
5
+ # gem 'buff-ignore'
6
+ # gem 'thor'
7
+
8
+ # Specify your gem's dependencies in reemo.gemspec
9
+ gemspec
data/Gemfile.lock ADDED
@@ -0,0 +1,28 @@
1
+ PATH
2
+ remote: .
3
+ specs:
4
+ reemo (0.2.0.pre.SNAPSHOT)
5
+ buff-ignore
6
+ minitar
7
+ multipart-post
8
+ thor
9
+
10
+ GEM
11
+ remote: https://rubygems.org/
12
+ specs:
13
+ buff-ignore (1.2.0)
14
+ minitar (0.6.1)
15
+ multipart-post (2.0.0)
16
+ rake (10.5.0)
17
+ thor (0.20.0)
18
+
19
+ PLATFORMS
20
+ ruby
21
+
22
+ DEPENDENCIES
23
+ bundler (~> 1.16)
24
+ rake (~> 10.0)
25
+ reemo!
26
+
27
+ BUNDLED WITH
28
+ 1.16.1
data/README.md ADDED
@@ -0,0 +1,24 @@
1
+ # Reemo CLI
2
+
3
+ ## Usage
4
+
5
+
6
+ ## Installation
7
+
8
+ ```bash
9
+ cd <this repo>
10
+ bundle install
11
+ ```
12
+
13
+ ## Server Configuration
14
+
15
+ ```bash
16
+ bundle exec reemo server-config --host=hogehoge.io --http-port=4567 --ssh-port=2222
17
+ ```
18
+
19
+ ## Run
20
+
21
+ ```bash
22
+ cd sample_workspaces/gcc-project1/
23
+ bundle exec reemo run
24
+ ```
data/Rakefile ADDED
@@ -0,0 +1,2 @@
1
+ require "bundler/gem_tasks"
2
+ task :default => :spec
data/bin/console ADDED
@@ -0,0 +1,14 @@
1
+ #!/usr/bin/env ruby
2
+
3
+ require "bundler/setup"
4
+ require "reemo"
5
+
6
+ # You can add fixtures and/or initialization code here to make experimenting
7
+ # with your gem easier. You can also use a different console, if you like.
8
+
9
+ # (If you use this, don't forget to add pry to your Gemfile!)
10
+ # require "pry"
11
+ # Pry.start
12
+
13
+ require "irb"
14
+ IRB.start(__FILE__)
data/bin/setup ADDED
@@ -0,0 +1,8 @@
1
+ #!/usr/bin/env bash
2
+ set -euo pipefail
3
+ IFS=$'\n\t'
4
+ set -vx
5
+
6
+ bundle install
7
+
8
+ # Do any other automated setup that you need to do here
data/exe/reemo ADDED
@@ -0,0 +1,5 @@
1
+ # !/usr/bin/env ruby
2
+
3
+ require "reemo"
4
+
5
+ Reemo::CLI.start(ARGV)
data/lib/reemo.rb ADDED
@@ -0,0 +1,159 @@
1
+ require "reemo/version"
2
+
3
+ require 'zlib'
4
+ require 'minitar'
5
+ require 'net/http/post/multipart'
6
+ require 'buff/ignore'
7
+ require 'open-uri'
8
+ require 'tempfile'
9
+ require 'thor'
10
+ require 'fileutils'
11
+ require 'yaml'
12
+
13
+ CONFIG_DIR_PATH = ".reemo"
14
+ OLD_SESSION_ID_FILE_PATH = File.join(CONFIG_DIR_PATH, "session_id")
15
+ IGNORE_FILE_NAME = '.reemoignore'
16
+ OUTPUT_DIR_PATH = "output"
17
+ GLOBAL_CONFIG_DIR_PATH = File.join(ENV["HOME"], ".config", "reemo-cli")
18
+ GLOBAL_CONFIG_YAML_PATH = File.join(GLOBAL_CONFIG_DIR_PATH, "config.yaml")
19
+
20
+ module Reemo
21
+ class CLI < Thor
22
+
23
+ # (from: http://secret-garden.hatenablog.com/entry/2015/05/27/193313)
24
+ map "run" => :run_
25
+
26
+ desc "sever-config", "Configure a server setting"
27
+ option :host, :required => true, :type => :string
28
+ option :http_port, :required => true, :type => :numeric
29
+ option :ssh_port, :required => true, :type => :numeric
30
+ def server_config()
31
+ host = options[:host]
32
+ http_port = options[:http_port]
33
+ ssh_port = options[:ssh_port]
34
+
35
+ # If global config directory doesn't exist yet
36
+ if !Dir.exists?(GLOBAL_CONFIG_DIR_PATH)
37
+ # Make the directory
38
+ FileUtils.makedirs(GLOBAL_CONFIG_DIR_PATH)
39
+ end
40
+
41
+ # Get config yaml
42
+ if File.exists?(GLOBAL_CONFIG_YAML_PATH)
43
+ config_yaml_map = YAML::load_file(GLOBAL_CONFIG_YAML_PATH)
44
+ else
45
+ config_yaml_map = {}
46
+ end
47
+
48
+ # Set server config
49
+ config_yaml_map["server"] = {
50
+ "host" => host,
51
+ "http_port" => http_port,
52
+ "ssh_port" => ssh_port
53
+ }
54
+
55
+ # Write to yaml
56
+ File.write(GLOBAL_CONFIG_YAML_PATH, YAML::dump(config_yaml_map))
57
+
58
+ puts("Server configuration successful!")
59
+ end
60
+
61
+ desc "run", "Run this project in current working directory"
62
+ def run_()
63
+
64
+ # If configure file doesn't exist
65
+ if !File.exists?(GLOBAL_CONFIG_YAML_PATH)
66
+ STDERR.puts <<EOS
67
+ Error: Configure not found
68
+ You should configure server setting like the following.
69
+ $ reemo server-config --host=hogehoge.io --http-port=4567 --ssh-port=2222
70
+ EOS
71
+ exit(1)
72
+ end
73
+
74
+ config_yaml_map = YAML::load_file(GLOBAL_CONFIG_YAML_PATH)
75
+
76
+ # Load server setting from yaml
77
+ host = config_yaml_map["server"]["host"]
78
+ http_port = config_yaml_map["server"]["http_port"]
79
+ ssh_port = config_yaml_map["server"]["ssh_port"]
80
+
81
+ url = URI.parse("http://#{host}:#{http_port}/build") # TODO Hard code
82
+
83
+ if !Dir.exists?(CONFIG_DIR_PATH)
84
+ Dir.mkdir(CONFIG_DIR_PATH)
85
+ end
86
+
87
+ # Session ID (This will be filled)
88
+ session_id = nil
89
+
90
+ # Get old session ID
91
+ old_session_id = File.exists?(OLD_SESSION_ID_FILE_PATH)? File.read(OLD_SESSION_ID_FILE_PATH) : nil
92
+
93
+ Tempfile.open(){|tar_gz_f|
94
+ workspace_tar_gz_path = tar_gz_f.path
95
+ # Compress workspace to tar.gz
96
+ Zlib::GzipWriter.open(tar_gz_f){|sgz|
97
+ Archive::Tar::Minitar::Output.open(sgz){|tar|
98
+ # Get ignore file path
99
+ ignore_file_path = IGNORE_FILE_NAME
100
+ # Get all files
101
+ all_file_paths = Dir.glob("**/*", File::FNM_DOTMATCH).reject{|e| [".",".."].any?{|s| s== File::basename(e)}}
102
+ # Ignore file exists or not
103
+ if File.exists?(ignore_file_path)
104
+ # Generate ignore
105
+ ignore = Buff::Ignore::IgnoreFile.new(IGNORE_FILE_NAME)
106
+ # Create file paths by using ignore
107
+ file_paths = ignore.apply(all_file_paths)
108
+ else
109
+ # File paths are the same as all file paths because of no ignore
110
+ file_paths = all_file_paths
111
+ end
112
+ # Archive files
113
+ file_paths.each{|entry|
114
+ Minitar.pack_file(entry, tar)
115
+ }
116
+ }
117
+ }
118
+ tar_gz_f.close()
119
+
120
+ File.open(workspace_tar_gz_path, 'rb') do |f|
121
+ # p f.read(10000)
122
+ req = Net::HTTP::Post::Multipart.new(
123
+ url.path,
124
+ "file" => UploadIO.new(f, "application/tar+gzip", "dummy.tar.gz"),
125
+ "old_session_id" => old_session_id
126
+ )
127
+ res = Net::HTTP.start(url.host, url.port) do |http|
128
+ http.request(req)
129
+ end
130
+
131
+ session_id = res.entity
132
+ end
133
+ }
134
+
135
+ puts("Session ID: #{session_id}")
136
+ File.write(OLD_SESSION_ID_FILE_PATH, session_id)
137
+
138
+ user_name = session_id
139
+ ssh_command = "ssh -t -p #{ssh_port} #{user_name}@#{host}"
140
+ system(ssh_command)
141
+
142
+ open("http://#{host}:#{http_port}/output?session_id=#{session_id}"){|f|
143
+ Tempfile.open(){|tmp_out_f|
144
+ IO.copy_stream(f, tmp_out_f)
145
+ tmp_out_f.close()
146
+
147
+ if !File.empty?(tmp_out_f.path)
148
+ if !Dir.exists?(OUTPUT_DIR_PATH)
149
+ Dir.mkdir(OUTPUT_DIR_PATH)
150
+ end
151
+
152
+ # (from: http://www.itmedia.co.jp/help/tips/linux/l0418.html)
153
+ system("tar xzf #{tmp_out_f.path} -C #{OUTPUT_DIR_PATH}/") # TODO: Not to use system
154
+ end
155
+ }
156
+ }
157
+ end
158
+ end
159
+ end
@@ -0,0 +1,3 @@
1
+ module Reemo
2
+ VERSION = "0.2.0-SNAPSHOT"
3
+ end
data/reemo.gemspec ADDED
@@ -0,0 +1,40 @@
1
+
2
+ lib = File.expand_path("../lib", __FILE__)
3
+ $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
4
+ require "reemo/version"
5
+
6
+ Gem::Specification.new do |spec|
7
+ spec.name = "reemo"
8
+ spec.version = Reemo::VERSION
9
+ spec.authors = ["Ryo Ota"]
10
+ spec.email = ["nwtgck@gmail.com"]
11
+
12
+ spec.summary = %q{Write a short summary, because RubyGems requires one.}
13
+ spec.description = %q{Write a longer description or delete this line.}
14
+ spec.homepage = "https://github.com/nwtgck/reemo-cli-ruby"
15
+
16
+
17
+ spec.add_dependency 'multipart-post'
18
+ spec.add_dependency 'minitar'
19
+ spec.add_dependency 'buff-ignore'
20
+ spec.add_dependency 'thor'
21
+
22
+ # Prevent pushing this gem to RubyGems.org. To allow pushes either set the 'allowed_push_host'
23
+ # to allow pushing to a single host or delete this section to allow pushing to any host.
24
+ if spec.respond_to?(:metadata)
25
+ # spec.metadata["allowed_push_host"] = "Set to 'http://mygemserver.com'"
26
+ else
27
+ raise "RubyGems 2.0 or newer is required to protect against " \
28
+ "public gem pushes."
29
+ end
30
+
31
+ spec.files = `git ls-files -z`.split("\x0").reject do |f|
32
+ f.match(%r{^(test|spec|features)/})
33
+ end
34
+ spec.bindir = "exe"
35
+ spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
36
+ spec.require_paths = ["lib"]
37
+
38
+ spec.add_development_dependency "bundler", "~> 1.16"
39
+ spec.add_development_dependency "rake", "~> 10.0"
40
+ end
@@ -0,0 +1 @@
1
+ /.reemo
@@ -0,0 +1,18 @@
1
+ #include <stdio.h>
2
+
3
+ const int GREETING_LEN = 13;
4
+ const char * const greetings[] = {
5
+ "Hello", "Hola", "Bonjour",
6
+ "Ciao", "こんにちは", "안녕하세요",
7
+ "Cześć", "Olá", "Здравствуйте",
8
+ "Chào bạn", "您好", "Hallo",
9
+ "Hej"
10
+ };
11
+
12
+ int main(){
13
+ puts("=== Hello from a gcc project! ===");
14
+ for(int i = 0; i < GREETING_LEN; i++){
15
+ puts(greetings[i]);
16
+ }
17
+ return 0;
18
+ }
@@ -0,0 +1,11 @@
1
+ image: gcc:7.2
2
+
3
+ script: |
4
+ pwd
5
+ gcc main.c -o main
6
+ ./main
7
+ ./main > /output/main_out.txt
8
+
9
+ #image: alpine
10
+ #
11
+ #script: /bin/sh
@@ -0,0 +1,4 @@
1
+ .stack-work/
2
+ haskell-stack-project1.cabal
3
+ *~
4
+ /.reemo
@@ -0,0 +1,3 @@
1
+ # Changelog for haskell-stack-project1
2
+
3
+ ## Unreleased changes
@@ -0,0 +1,30 @@
1
+ Copyright Ryo Ota (c) 2017
2
+
3
+ All rights reserved.
4
+
5
+ Redistribution and use in source and binary forms, with or without
6
+ modification, are permitted provided that the following conditions are met:
7
+
8
+ * Redistributions of source code must retain the above copyright
9
+ notice, this list of conditions and the following disclaimer.
10
+
11
+ * Redistributions in binary form must reproduce the above
12
+ copyright notice, this list of conditions and the following
13
+ disclaimer in the documentation and/or other materials provided
14
+ with the distribution.
15
+
16
+ * Neither the name of Ryo Ota nor the names of other
17
+ contributors may be used to endorse or promote products derived
18
+ from this software without specific prior written permission.
19
+
20
+ THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
21
+ "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
22
+ LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
23
+ A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
24
+ OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
25
+ SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
26
+ LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
27
+ DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
28
+ THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
29
+ (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
30
+ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
@@ -0,0 +1 @@
1
+ # haskell-stack-project1
@@ -0,0 +1,2 @@
1
+ import Distribution.Simple
2
+ main = defaultMain
@@ -0,0 +1,17 @@
1
+ module Main where
2
+
3
+ import Control.Monad
4
+
5
+ -- Greetings around world
6
+ -- (from: https://www.rust-lang.org/)
7
+ greetings = ["Hello", "Hola", "Bonjour",
8
+ "Ciao", "こんにちは", "안녕하세요",
9
+ "Cześć", "Olá", "Здравствуйте",
10
+ "Chào bạn", "您好", "Hallo",
11
+ "Hej"]
12
+
13
+ main :: IO ()
14
+ main = do
15
+ putStrLn "=== Hello from a haskell-stack project! ==="
16
+ -- Hello world
17
+ mapM_ putStrLn greetings
@@ -0,0 +1,44 @@
1
+ name: haskell-stack-project1
2
+ version: 0.1.0.0
3
+ github: "nwtgck/haskell-stack-project1"
4
+ license: BSD3
5
+ author: "Ryo Ota"
6
+ maintainer: "nwtgck@gmail.com"
7
+ copyright: "2017 Ryo Ota"
8
+
9
+ extra-source-files:
10
+ - README.md
11
+ - ChangeLog.md
12
+
13
+ # Metadata used when publishing your package
14
+ synopsis: Short description of your package
15
+ # category: Web
16
+
17
+ # To avoid duplicated efforts in documentation and dealing with the
18
+ # complications of embedding Haddock markup inside cabal files, it is
19
+ # common to point users to the README.md file.
20
+ description: Please see the README on Github at <https://github.com/nwtgck/haskell-stack-project1#readme>
21
+
22
+ dependencies:
23
+ - base >= 4.7 && < 5
24
+
25
+
26
+ executables:
27
+ haskell-stack-project1-exe:
28
+ main: Main.hs
29
+ source-dirs: app
30
+ ghc-options:
31
+ - -threaded
32
+ - -rtsopts
33
+ - -with-rtsopts=-N
34
+ dependencies: []
35
+
36
+ tests:
37
+ haskell-stack-project1-test:
38
+ main: Spec.hs
39
+ source-dirs: test
40
+ ghc-options:
41
+ - -threaded
42
+ - -rtsopts
43
+ - -with-rtsopts=-N
44
+ dependencies: []
@@ -0,0 +1,8 @@
1
+ image: nwtgck/haskell-stack-1.2.0
2
+
3
+ script: |
4
+ export LC_ALL=C.UTF-8
5
+ stack build --install-ghc --allow-different-user
6
+
7
+ cache_dirs:
8
+ - /root/.stack
@@ -0,0 +1,66 @@
1
+ # This file was automatically generated by 'stack init'
2
+ #
3
+ # Some commonly used options have been documented as comments in this file.
4
+ # For advanced use and comprehensive documentation of the format, please see:
5
+ # https://docs.haskellstack.org/en/stable/yaml_configuration/
6
+
7
+ # Resolver to choose a 'specific' stackage snapshot or a compiler version.
8
+ # A snapshot resolver dictates the compiler version and the set of packages
9
+ # to be used for project dependencies. For example:
10
+ #
11
+ # resolver: lts-3.5
12
+ # resolver: nightly-2015-09-21
13
+ # resolver: ghc-7.10.2
14
+ # resolver: ghcjs-0.1.0_ghc-7.10.2
15
+ # resolver:
16
+ # name: custom-snapshot
17
+ # location: "./custom-snapshot.yaml"
18
+ resolver: lts-9.3
19
+
20
+ # User packages to be built.
21
+ # Various formats can be used as shown in the example below.
22
+ #
23
+ # packages:
24
+ # - some-directory
25
+ # - https://example.com/foo/bar/baz-0.0.2.tar.gz
26
+ # - location:
27
+ # git: https://github.com/commercialhaskell/stack.git
28
+ # commit: e7b331f14bcffb8367cd58fbfc8b40ec7642100a
29
+ # - location: https://github.com/commercialhaskell/stack/commit/e7b331f14bcffb8367cd58fbfc8b40ec7642100a
30
+ # extra-dep: true
31
+ # subdirs:
32
+ # - auto-update
33
+ # - wai
34
+ #
35
+ # A package marked 'extra-dep: true' will only be built if demanded by a
36
+ # non-dependency (i.e. a user package), and its test suites and benchmarks
37
+ # will not be run. This is useful for tweaking upstream packages.
38
+ packages:
39
+ - .
40
+ # Dependency packages to be pulled from upstream that are not in the resolver
41
+ # (e.g., acme-missiles-0.3)
42
+ #extra-deps: []
43
+
44
+ # Override default flag values for local packages and extra-deps
45
+ # flags: {}
46
+
47
+ # Extra package databases containing global packages
48
+ # extra-package-dbs: []
49
+
50
+ # Control whether we use the GHC we find on the path
51
+ # system-ghc: true
52
+ #
53
+ # Require a specific version of stack, using version ranges
54
+ # require-stack-version: -any # Default
55
+ # require-stack-version: ">=1.6"
56
+ #
57
+ # Override the architecture used by stack, especially useful on Windows
58
+ # arch: i386
59
+ # arch: x86_64
60
+ #
61
+ # Extra directories used by stack for building
62
+ # extra-include-dirs: [/path/to/dir]
63
+ # extra-lib-dirs: [/path/to/dir]
64
+ #
65
+ # Allow a newer minor version of GHC than the snapshot specifies
66
+ # compiler-check: newer-minor
@@ -0,0 +1,2 @@
1
+ main :: IO ()
2
+ main = putStrLn "Test suite not yet implemented"
@@ -0,0 +1,2 @@
1
+ /target
2
+ /.reemo
@@ -0,0 +1,2 @@
1
+ target
2
+ target/*
@@ -0,0 +1,4 @@
1
+ [root]
2
+ name = "rust-project1"
3
+ version = "0.1.0"
4
+
@@ -0,0 +1,6 @@
1
+ [package]
2
+ name = "rust-project1"
3
+ version = "0.1.0"
4
+ authors = ["Ryo Ota <nwtgck@gmail.com>"]
5
+
6
+ [dependencies]
@@ -0,0 +1,7 @@
1
+ image: rust:1.22
2
+
3
+ script: |
4
+ cargo run
5
+
6
+ cache_dirs:
7
+ - /workspace/target
@@ -0,0 +1,13 @@
1
+ // Hello world
2
+ // (from: https://www.rust-lang.org/)
3
+ fn main() {
4
+ let greetings = ["Hello", "Hola", "Bonjour",
5
+ "Ciao", "こんにちは", "안녕하세요",
6
+ "Cześć", "Olá", "Здравствуйте",
7
+ "Chào bạn", "您好", "Hallo",
8
+ "Hej"];
9
+
10
+ for greeting in greetings.iter() {
11
+ println!("{}", greeting);
12
+ }
13
+ }
metadata ADDED
@@ -0,0 +1,158 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: reemo
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.2.0.pre.SNAPSHOT
5
+ platform: ruby
6
+ authors:
7
+ - Ryo Ota
8
+ autorequire:
9
+ bindir: exe
10
+ cert_chain: []
11
+ date: 2018-01-14 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: multipart-post
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - ">="
18
+ - !ruby/object:Gem::Version
19
+ version: '0'
20
+ type: :runtime
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - ">="
25
+ - !ruby/object:Gem::Version
26
+ version: '0'
27
+ - !ruby/object:Gem::Dependency
28
+ name: minitar
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: buff-ignore
43
+ requirement: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - ">="
46
+ - !ruby/object:Gem::Version
47
+ version: '0'
48
+ type: :runtime
49
+ prerelease: false
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - ">="
53
+ - !ruby/object:Gem::Version
54
+ version: '0'
55
+ - !ruby/object:Gem::Dependency
56
+ name: thor
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: bundler
71
+ requirement: !ruby/object:Gem::Requirement
72
+ requirements:
73
+ - - "~>"
74
+ - !ruby/object:Gem::Version
75
+ version: '1.16'
76
+ type: :development
77
+ prerelease: false
78
+ version_requirements: !ruby/object:Gem::Requirement
79
+ requirements:
80
+ - - "~>"
81
+ - !ruby/object:Gem::Version
82
+ version: '1.16'
83
+ - !ruby/object:Gem::Dependency
84
+ name: rake
85
+ requirement: !ruby/object:Gem::Requirement
86
+ requirements:
87
+ - - "~>"
88
+ - !ruby/object:Gem::Version
89
+ version: '10.0'
90
+ type: :development
91
+ prerelease: false
92
+ version_requirements: !ruby/object:Gem::Requirement
93
+ requirements:
94
+ - - "~>"
95
+ - !ruby/object:Gem::Version
96
+ version: '10.0'
97
+ description: Write a longer description or delete this line.
98
+ email:
99
+ - nwtgck@gmail.com
100
+ executables:
101
+ - reemo
102
+ extensions: []
103
+ extra_rdoc_files: []
104
+ files:
105
+ - ".gitignore"
106
+ - Gemfile
107
+ - Gemfile.lock
108
+ - README.md
109
+ - Rakefile
110
+ - bin/console
111
+ - bin/setup
112
+ - exe/reemo
113
+ - lib/reemo.rb
114
+ - lib/reemo/version.rb
115
+ - reemo.gemspec
116
+ - sample_workspaces/gcc-project1/.gitignore
117
+ - sample_workspaces/gcc-project1/main.c
118
+ - sample_workspaces/gcc-project1/reemo.yaml
119
+ - sample_workspaces/haskell-stack-project1/.gitignore
120
+ - sample_workspaces/haskell-stack-project1/ChangeLog.md
121
+ - sample_workspaces/haskell-stack-project1/LICENSE
122
+ - sample_workspaces/haskell-stack-project1/README.md
123
+ - sample_workspaces/haskell-stack-project1/Setup.hs
124
+ - sample_workspaces/haskell-stack-project1/app/Main.hs
125
+ - sample_workspaces/haskell-stack-project1/package.yaml
126
+ - sample_workspaces/haskell-stack-project1/reemo.yaml
127
+ - sample_workspaces/haskell-stack-project1/stack.yaml
128
+ - sample_workspaces/haskell-stack-project1/test/Spec.hs
129
+ - sample_workspaces/rust-cargo-project1/.gitignore
130
+ - sample_workspaces/rust-cargo-project1/.reemoignore
131
+ - sample_workspaces/rust-cargo-project1/Cargo.lock
132
+ - sample_workspaces/rust-cargo-project1/Cargo.toml
133
+ - sample_workspaces/rust-cargo-project1/reemo.yaml
134
+ - sample_workspaces/rust-cargo-project1/src/main.rs
135
+ homepage: https://github.com/nwtgck/reemo-cli-ruby
136
+ licenses: []
137
+ metadata: {}
138
+ post_install_message:
139
+ rdoc_options: []
140
+ require_paths:
141
+ - lib
142
+ required_ruby_version: !ruby/object:Gem::Requirement
143
+ requirements:
144
+ - - ">="
145
+ - !ruby/object:Gem::Version
146
+ version: '0'
147
+ required_rubygems_version: !ruby/object:Gem::Requirement
148
+ requirements:
149
+ - - ">"
150
+ - !ruby/object:Gem::Version
151
+ version: 1.3.1
152
+ requirements: []
153
+ rubyforge_project:
154
+ rubygems_version: 2.6.12
155
+ signing_key:
156
+ specification_version: 4
157
+ summary: Write a short summary, because RubyGems requires one.
158
+ test_files: []