sbag 0.2.2 → 2.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.
Files changed (5) hide show
  1. checksums.yaml +4 -4
  2. data/lib/sbag.rb +117 -0
  3. data/lib/sbag/version.rb +1 -1
  4. data/sbag.gemspec +2 -1
  5. metadata +16 -2
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: d369708e775ba61d186d1c82f3945def825e6991
4
- data.tar.gz: f086664db9243bd94c22e727bfa8b8f8c20af55e
3
+ metadata.gz: 0157498ab505430d1a74494e83d4685ac9f6c28c
4
+ data.tar.gz: 5e4a919d138c6a3babec530fa5bad6a42a43b471
5
5
  SHA512:
6
- metadata.gz: 8058d834127f52440cc49c857fd911617dadf2125c49ae7fe807117b47eb2ee0eece5e68c1edf4fed1f367f6a323137e42da132bd3cb969ed418f0e3773dc61d
7
- data.tar.gz: cdd8296c8b9c1a4c85f59c1e487091d21e565339aa426f4bec39a2bc95939f6a36bdecb9ccb34a517bf96033baa495c7f0287ce9e1c86c2aee61e3ab29c401d8
6
+ metadata.gz: a2e347e7e8cd53366e314430bba8ae0c0832721bc2c59ae87444234921fd2cac81a08eba39623f2f8b474f35a293d270cdc8c83f17ea2e58ab908d64d947669b
7
+ data.tar.gz: 55fb54c1a9100535ce6866a106eb2f5d15176dc22a318f64c463ff7e614b0980e5aadac23481a381a1f41f402939c44b75229b64867050063c0d8bf84a29f6a8
data/lib/sbag.rb CHANGED
@@ -1,6 +1,9 @@
1
1
  require "sbag/version"
2
2
  require 'thor'
3
3
  require "colorize"
4
+ require "MDownloader"
5
+ require "fileutils"
6
+
4
7
  module Sbag
5
8
 
6
9
  class C < Thor
@@ -13,6 +16,7 @@ method_option :newfile, :aliases => "-c" , :desc => "Use newfile command to crea
13
16
  puts "New file created => *#{file}*".green
14
17
  end
15
18
  #========================END===============================#
19
+
16
20
  #Delete File Command =====================================>>>
17
21
  desc "delfile", "Delete the existing file"
18
22
  method_option :delfile, :aliases => "-d", :desc => "Use delfile command to delete existing file. Usage: [file_name].[file_extension]"
@@ -22,6 +26,7 @@ method_option :delfile, :aliases => "-d", :desc => "Use delfile command to delet
22
26
  puts "Existing file deleted => *#{file}*".green
23
27
  end
24
28
  #========================END===============================#
29
+
25
30
  #Time Display Command =====================================>>>
26
31
  desc "time" , "Display current time"
27
32
  method_option :time, :aliases => "-t", :desc => "Use time command to display the current time"
@@ -31,6 +36,7 @@ method_option :time, :aliases => "-t", :desc => "Use time command to display the
31
36
  puts "Current time => *#{time}*".green
32
37
  end
33
38
  #========================END===============================#
39
+
34
40
  #Current Location Command =====================================>>>
35
41
  desc "locate", "Current directory or folder path"
36
42
  method_option :locate, :aliases => "-loc", :desc => "Use locate command to find the current directory or folder path"
@@ -40,6 +46,7 @@ method_option :locate, :aliases => "-loc", :desc => "Use locate command to find
40
46
  puts "Current Location => *#{location}*".green
41
47
  end
42
48
  #========================END===============================#
49
+
43
50
  #Make new Directory Command =====================================>>>
44
51
  desc "newdir", "Create a new directory or folder"
45
52
  method_option :newdir, :aliases => "-nd", :desc => "Use newdir command to create a new directory or folder in the current path"
@@ -50,6 +57,7 @@ method_option :newdir, :aliases => "-nd", :desc => "Use newdir command to create
50
57
  puts "New Directory created => *#{new_dir}* at *#{location}*".green
51
58
  end
52
59
  #========================END===============================#
60
+
53
61
  #Directory Listing Command =====================================>>>
54
62
  desc "entries", "Files and directory Listing Command"
55
63
  method_option :entries, :aliases => "-entries", :desc => "Use entries command to list all the files and directories in current path"
@@ -59,6 +67,7 @@ method_option :entries, :aliases => "-entries", :desc => "Use entries command to
59
67
  puts "#{location}".green
60
68
  end
61
69
  #========================END===============================#
70
+
62
71
  #Delete Directory Command =====================================>>>
63
72
  desc "deldir", "Delete directory or folder Command"
64
73
  method_option :deldir, :aliases => "-ddir", :desc => "Use deldir command to delete the folder and directory in current path"
@@ -68,5 +77,113 @@ method_option :deldir, :aliases => "-ddir", :desc => "Use deldir command to dele
68
77
  puts "Deleted directory => *#{del_dir}*".green
69
78
  end
70
79
  #========================END===============================#
80
+
81
+ # start command Starts===================================>>>
82
+ desc "start" ,"Initialize empty Kit depository in the current project folder"
83
+
84
+ method_option :start, :aliases => "-start" , :desc => "Use kit init command to make a directory of content in Kit depository. You can do this in any directory at any time, completelylocally."
85
+
86
+ def start(new_depository = 'kit')
87
+
88
+ if Dir.exist?('kit') == true
89
+
90
+ puts "Depository *Kit* already exists!!! Please use add command to continue working on your project. Start command can be used only once.".red
91
+
92
+ else
93
+
94
+ Dir.mkdir("#{new_depository}")
95
+ location = Dir.pwd
96
+ puts "Depository *Kit* intialized for your project at *#{location}*".green
97
+
98
+ end
99
+
100
+ end
101
+ # init command Ends===================================>>>
102
+
103
+ # clone command Starts=================================>>>
104
+ desc "clone", "Copy the project on which you want to work"
105
+
106
+ method_option :clone , :alises => "-clone" , :desc => "Use the kit clone [URL] command with URL of the project you want to copy."
107
+
108
+ def clone(url)
109
+
110
+ array_url = url.split('/')
111
+ puts array_url.last
112
+ location = Dir.pwd
113
+ path = location.to_s + "/#{array_url.last}"
114
+ options = Hash.new
115
+ options[:retry] = :any #retry times, :any(any times retry), 0(no retry), or custom numbers(int)
116
+ options[:resume] = true #true or false, resume continue download, break point resume download
117
+
118
+ result, error = MDownloader.download(url, path, options) do |report|
119
+ puts "Progress:#{report[:percent]}% Cloning:#{report[:min]} #{url} #{report[:sec]}"
120
+
121
+ end
122
+
123
+ if result
124
+
125
+ puts 'Cloning Finished!'
126
+
127
+ else
128
+
129
+ puts 'Error in cloning #{url}'
130
+ puts error
131
+
132
+ end
133
+
134
+ end
135
+ # clone command Ends=====================================>>>
136
+
137
+ # add command Starts=====================================>>>
138
+ desc "add" ,"Add file contents to your project before you can make them. Usage : add [version number] Eg: add 1.0.1"
139
+
140
+ method_option :add , :alises => "-add", :desc => "Use the kit add command to intially add the file to your current project, but even if the file is already tracked"
141
+
142
+ def add(version)
143
+ source = FileUtils.pwd()
144
+ dir_last = source.split("/")
145
+ current_dir = dir_last.last
146
+ structure_data = Dir["**/*"]
147
+ data = Dir["*"]
148
+ data.delete("kit")
149
+ puts "-------- Process for adding Kit started --------"
150
+ puts "Checking current depository files ==============>"
151
+ puts structure_data
152
+ puts "-------- Checking completed --------"
153
+
154
+ if Dir.exist?("kit") == false
155
+ puts "Kit depository not found!!! Use start command first.".red
156
+ else
157
+
158
+ Dir.chdir "kit"
159
+ changed_dir = FileUtils.pwd()
160
+
161
+ if Dir.exist?("v#{version}") == true
162
+ puts "Kit *v#{version}* already exists!!! Please increment the version."
163
+ else
164
+ Dir.mkdir("v#{version}")
165
+ destination = changed_dir + "/v#{version}"
166
+ Dir.chdir(destination)
167
+
168
+ structure_file = "structure.txt"
169
+ File.new("#{structure_file}", "w+")
170
+ File.open("#{structure_file}","w") do |f|
171
+
172
+ structure_data.each do |ch|
173
+
174
+ f.write("#{ch}\n")
175
+
176
+ end
177
+
178
+ end
179
+ puts "Structure.txt file created successfully".yellow
180
+ Dir.chdir(source)
181
+
182
+ puts "Adding Kit for your Depository with v#{version} completed successfully.".green
183
+ FileUtils.cp_r data, destination
184
+ end
185
+ end
186
+ end
187
+ # add command Ends=======================================>>>
71
188
  end
72
189
  end
data/lib/sbag/version.rb CHANGED
@@ -1,3 +1,3 @@
1
1
  module Sbag
2
- VERSION = "0.2.2"
2
+ VERSION = "2.2.0"
3
3
  end
data/sbag.gemspec CHANGED
@@ -24,7 +24,8 @@ Gem::Specification.new do |spec|
24
24
 
25
25
  spec.add_dependency 'thor', "~>0.19.1"
26
26
  spec.add_dependency 'colorize', "~>0.7.5"
27
-
27
+ spec.add_dependency 'MDownloader'
28
+
28
29
  spec.add_development_dependency "bundler", "~> 1.8"
29
30
  spec.add_development_dependency "rake", "~>10.4.2"
30
31
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: sbag
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.2
4
+ version: 2.2.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Shubham
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-02-12 00:00:00.000000000 Z
11
+ date: 2015-02-14 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: thor
@@ -38,6 +38,20 @@ dependencies:
38
38
  - - "~>"
39
39
  - !ruby/object:Gem::Version
40
40
  version: 0.7.5
41
+ - !ruby/object:Gem::Dependency
42
+ name: MDownloader
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'
41
55
  - !ruby/object:Gem::Dependency
42
56
  name: bundler
43
57
  requirement: !ruby/object:Gem::Requirement