zupload 0.0.1

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 +7 -0
  2. data/bin/zupload +5 -0
  3. data/lib/QNConfig.rb +8 -0
  4. data/lib/ZUpload.rb +58 -0
  5. metadata +61 -0
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: 5e8ef086774c8289ac079f2ad129641978a133b4
4
+ data.tar.gz: ebd40ec1596e49fb62ea367a8d5f5afabb6a6f7c
5
+ SHA512:
6
+ metadata.gz: 14bd35c0a7c54ef180230b4ead7906c1529d699ea84d5be313a35e7ed016c73e5374b51d6ddef186acbad55c8e1107d49ea398a0aae524e2dfc59aaac751ec42
7
+ data.tar.gz: 41824814d46b7d696aaafacd80736837d9bf546a458ea69a846b985f243cbe97d170358fefcbaa9475beb88d90902712770ebb80aea5601b968f8923872f7d6c
@@ -0,0 +1,5 @@
1
+ #!/usr/bin/env ruby
2
+
3
+ require 'ZUpload'
4
+
5
+ ZUpload.new.up ARGV
@@ -0,0 +1,8 @@
1
+ module QNConfig
2
+ AccessKey = ENV['QNAccessKey']
3
+ SecretKey = ENV['QNSecretKey']
4
+ BucketKey = ENV['QNBucketKey']
5
+ ValidExtension = ENV['QNValidExtension']
6
+ RemoteUrl = ENV['QNRemoteUrl']
7
+ end
8
+
@@ -0,0 +1,58 @@
1
+ require 'qiniu'
2
+ require 'QNConfig'
3
+
4
+ class ZUpload
5
+ def initialize
6
+ @matchExtension = { dir: "/*.#{QNConfig::ValidExtension}",
7
+ rdir: "/**/*.#{QNConfig::ValidExtension}",
8
+ file: "" }
9
+ end
10
+
11
+ def up args
12
+ Qiniu.establish_connection! access_key: QNConfig::AccessKey, secret_key: QNConfig::SecretKey
13
+ filePath = handleParams args
14
+ Dir.glob(filePath).each do |file_name|
15
+ ZUpload.new.upload file_name
16
+ end
17
+ end
18
+
19
+ def upload fileName
20
+ put_policy = Qiniu::Auth::PutPolicy.new(
21
+ QNConfig::BucketKey,
22
+ fileName,
23
+ 3600
24
+ )
25
+
26
+ uptoken = Qiniu::Auth.generate_uptoken(put_policy)
27
+
28
+ _, result, _ = Qiniu::Storage.upload_with_token_2(
29
+ uptoken,
30
+ fileName,
31
+ fileName,
32
+ nil,
33
+ { bucket: QNConfig::BucketKey }
34
+ )
35
+ puts QNConfig::RemoteUrl + result['key']
36
+ end
37
+
38
+ private
39
+
40
+ def handleParams args
41
+ case args.count
42
+ when 0
43
+ return '.' + @matchExtension[:dir]
44
+ when 1
45
+ return removeLastSlash(args[0]) + @matchExtension[:dir]
46
+ when 2
47
+ argument = { '-f' => :file, '-r' => :rdir }
48
+ return removeLastSlash(args[1]) + @matchExtension[argument[args[0]]]
49
+ else
50
+ exit(0)
51
+ end
52
+ end
53
+
54
+ def removeLastSlash str
55
+ str&.chomp('/') || ''
56
+ end
57
+
58
+ end
metadata ADDED
@@ -0,0 +1,61 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: zupload
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.0.1
5
+ platform: ruby
6
+ authors:
7
+ - Zkun
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+ date: 2016-07-26 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: qiniu
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - ">="
18
+ - !ruby/object:Gem::Version
19
+ version: 6.8.0
20
+ type: :runtime
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - ">="
25
+ - !ruby/object:Gem::Version
26
+ version: 6.8.0
27
+ description:
28
+ email: zhukun615090@outlook.com
29
+ executables:
30
+ - zupload
31
+ extensions: []
32
+ extra_rdoc_files: []
33
+ files:
34
+ - bin/zupload
35
+ - lib/QNConfig.rb
36
+ - lib/ZUpload.rb
37
+ homepage:
38
+ licenses:
39
+ - MIT
40
+ metadata: {}
41
+ post_install_message:
42
+ rdoc_options: []
43
+ require_paths:
44
+ - lib
45
+ required_ruby_version: !ruby/object:Gem::Requirement
46
+ requirements:
47
+ - - ">="
48
+ - !ruby/object:Gem::Version
49
+ version: '0'
50
+ required_rubygems_version: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - ">="
53
+ - !ruby/object:Gem::Version
54
+ version: '0'
55
+ requirements: []
56
+ rubyforge_project:
57
+ rubygems_version: 2.5.1
58
+ signing_key:
59
+ specification_version: 4
60
+ summary: a util update image file to qiniu
61
+ test_files: []