osdn-cli 0.0.9 → 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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 4701f982fd5c1699eb693d696ab1fbd7351233fc
4
- data.tar.gz: f5046cd39d77dc412f8f030088b6fbba589114ff
3
+ metadata.gz: b112818b94a14506ce16587ecca79060d8fd447e
4
+ data.tar.gz: 15c6f3d06ca910ebae2dda3abd5d8b22c1c2169b
5
5
  SHA512:
6
- metadata.gz: 2bf16853bc8860cb220885b68ed3a4e89d81d6fd7d0cc28cc662558cb038191fe1821c0506690be0cd7d2b2a704c63f436e37ad74e69e73642e250a2d3b0e9b5
7
- data.tar.gz: b25246d8bff81023221afc632cb983b3eff8b39ed9b16f6f2c6d1d53997148e4701922cc8e11bd8cf759e3d56d3dd394f8c2a65507315ad6f835521c542dbf86
6
+ metadata.gz: 4820389e4c6957b86eaec4f07707764560a29d7b586c1419208a881b3b323dba5517fad4716470ffb4a81310ca507d3a277d421594baa4f76de76870e03cb583
7
+ data.tar.gz: 6650387119977cda48219b8e1c75d685d0591d3fbd78220e4d845986529caabc32d5badbdc77d49b89ed1c6e4427f9bd7ae497d99bf0afc5a88e52ea23a3ace9
data/ChangeLog CHANGED
@@ -1,3 +1,8 @@
1
+ 2016-03-25 Tatsuki Sugiura <sugi@nemui.org>
2
+
3
+ * Version 0.1.0
4
+ * frs_uplaod: Add check for vanishing server package or release.
5
+
1
6
  2016-03-23 Tatsuki Sugiura <sugi@nemui.org>
2
7
 
3
8
  * Version 0.0.8
@@ -51,6 +51,10 @@ module OSDN; module CLI; module Command
51
51
  end
52
52
  logger.info "Making directory for release #{rname}"
53
53
  rdir = pdir + rname
54
+ if rdir.exist? && !rdir.directory?
55
+ logger.error "'#{rdir}' exists but it is not a directory. Please check and delete it."
56
+ next
57
+ end
54
58
  FileUtils.mkdir_p(rdir)
55
59
  update_variables rdir, release_id: release.id
56
60
  end
@@ -49,7 +49,23 @@ module OSDN; module CLI; module Command
49
49
  proj_info = api.get_project target_proj # check project existance
50
50
 
51
51
  Pathname.glob(@target_dir+'*').sort.each do |pdir|
52
- unless load_variables(pdir).package_id
52
+ if cur_pkgid = load_variables(pdir).package_id
53
+ # check package existance on server
54
+ begin
55
+ api.get_package target_proj, target_package(pdir)
56
+ rescue OSDNClient::ApiError => e
57
+ begin
58
+ err = JSON.parse(e.response_body)
59
+ rescue
60
+ raise e
61
+ end
62
+ if err['status'] == 404
63
+ logger.warn "Package ##{cur_pkgid} has been deleted on server and local directory '#{pdir}' remains. You can delete the local directory or delete '#{pdir}/.osdn.vars' file to create a package again with new ID."
64
+ next
65
+ end
66
+ raise e
67
+ end
68
+ else
53
69
  logger.info "Createing new package '#{pdir.basename}'"
54
70
  if @dry_run
55
71
  pinfo = Hashie::Mash.new id: '(dry-run)', name: pdir.basename, url: '(dry-run)'
@@ -69,7 +85,20 @@ module OSDN; module CLI; module Command
69
85
  vars = load_variables(rdir)
70
86
  rinfo = nil
71
87
  if vars.release_id
72
- rinfo = api.get_release target_proj, target_package(rdir), target_release(rdir)
88
+ begin
89
+ rinfo = api.get_release target_proj, target_package(rdir), target_release(rdir)
90
+ rescue OSDNClient::ApiError => e
91
+ begin
92
+ err = JSON.parse(e.response_body)
93
+ rescue
94
+ raise e
95
+ end
96
+ if err['status'] == 404
97
+ logger.warn "Release ##{vars.release_id} has been deleted on server and local directory '#{rdir}' remains. You can delete the local directory or delete '#{rdir}/.osdn.vars' file to create a release again with new ID."
98
+ next
99
+ end
100
+ raise e
101
+ end
73
102
  else vars.release_id
74
103
  logger.info "Createing new release '#{rdir.basename}'"
75
104
  if @dry_run
@@ -1,5 +1,5 @@
1
1
  module OSDN
2
2
  module CLI
3
- VERSION = "0.0.9"
3
+ VERSION = "0.1.0"
4
4
  end
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: osdn-cli
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.9
4
+ version: 0.1.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - OSDN
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2016-03-23 00:00:00.000000000 Z
11
+ date: 2016-03-25 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler