dyndoc-ruby 0.5.8 → 0.6.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 (4) hide show
  1. checksums.yaml +4 -4
  2. data/bin/dyn +37 -2
  3. data/bin/dyn-init +15 -6
  4. metadata +62 -2
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: ba8376453c50218d025b3d7d2c62c4fdcd4f0c6d
4
- data.tar.gz: 8f5ac8caa76a86bd8cfa035682363d590047b344
3
+ metadata.gz: 462a9ae3c7f3fea53ae7e6d9b30c87ef2dc2bc6b
4
+ data.tar.gz: 55562e445ffbdf8f2144dc372e33c8f51be681ed
5
5
  SHA512:
6
- metadata.gz: 1424361e7471cc2990f88146fe198d44b1e0ca7cb24429e419442b2fb656671870cbfc6c6ce0a172e026e5c1f908f2f87658e49eee45248203615e141bd36730
7
- data.tar.gz: 288e73035861a2a67da1d9f2d60730c94994ee88824f61392fcf0a81fe37a2df917ca74ba79d4d988979603c122f277f06b1506200d08ab4b08035a0b0bba7cd
6
+ metadata.gz: f37d7d539a1a3e55e81d176985162b613a8adaeac3f41c22b1ffe6c410a50c398f2accee2079b412e692371f43b87fbd97f9b0eaaa889dd815e40006f8c6653a
7
+ data.tar.gz: 9663a14fcb3c1e805d0791d1e113b93af786caa3217e66aa8a0217b8ea5d910c1dbbf6e852aba1a28191381215e7cfa121def68b09226c52cc8b4a6ed0d13926
data/bin/dyn CHANGED
@@ -3,6 +3,9 @@ require 'dyndoc/document'
3
3
 
4
4
  ## p Dyndoc.cfg_dir
5
5
 
6
+ ## To be used for remote at the end
7
+ args_saved=ARGV.dup
8
+
6
9
  args=ARGV.select{|name|
7
10
  if (name[0,2]!="--" and name.include? "=")
8
11
  key,*val=name.split("=")
@@ -74,6 +77,38 @@ end.parse!(args)
74
77
  ## ARGV is consumed before except
75
78
  doc=args[0]
76
79
 
77
- d=Dyndoc::TemplateDocument.new(doc)
80
+ # Example remote call
81
+ # dyn <options> dyn://<room-id>/<dyndoc-file>[.dyn]
82
+ if doc=~ /^dyn\:\/\/([^\/]*)\/(.*)(?:\.dyn)?$/
83
+ room_id,dyn_file=$1,$2
84
+
85
+ room_sync=File.join(ENV["HOME"],"dyndoc","etc",".room_sync")
86
+ if File.exists? room_sync
87
+ room_dirs=eval(File.read(room_sync))
88
+ room_dir=room_dirs[room_id]
89
+ if room_dir
90
+ dyn_file=File.expand_path(dyn_file)
91
+ dyn_dir=File.dirname dyn_file
92
+ dyn_base=File.basename dyn_file,".dyn"
93
+ ## Copy files first
94
+ [".dyn",".dyn_lib"].each do |ext|
95
+ file=dyn_base+ext
96
+ if File.exists? (file_to_copy=File.join(dyn_dir,file))
97
+ require 'fileutils'
98
+ FileUtils.cp file_to_copy,File.join(room_dir[:local],file)
99
+ end
100
+ end
101
+ ## create task after ##TODO cheksum: to check that required files are present
102
+ task=[{cmd: "dyn", workdir: File.join("..","rooms",room_dir[:remote]), source: dyn_base+".dyn", options: args[0...-1].join(" ")}]
103
+ File.open(File.join(room_dir[:local],"..",".run",dyn_base+".task_dyn"),"w") do |f|
104
+ f << task.inspect
105
+ end
106
+ end
107
+ end
108
+
109
+ else
110
+
111
+ d=Dyndoc::TemplateDocument.new(doc)
78
112
 
79
- d.make_all
113
+ d.make_all
114
+ end
data/bin/dyn-init CHANGED
@@ -7,12 +7,11 @@ arg="path" if !arg or arg.empty?
7
7
  case arg
8
8
  when "help"
9
9
  puts <<-DOC
10
- launchctl helpers to launch dyn-srv service.
11
- Usage: dyn-init path => create ~/dyndoc folder
12
- dyn-init srv new|load => create when not existing the dyn-srv service
13
- dyn-init srv unload => unload existing service
14
- dyn-init srv start/stop => start/stop the dyn-srv service
15
- dyn-init srv [list] => list dyn-srv service
10
+ Usage:
11
+ ## create ~/dyndoc folder and initialize some sharing
12
+ dyn-init path
13
+ ## add room folder
14
+ dyn-init sync <room_id>:<room_folder_full_path>@<room_remote_wordir>
16
15
  DOC
17
16
  when "path"
18
17
  share_path=File.expand_path("../../share", __FILE__)
@@ -23,4 +22,14 @@ when "path"
23
22
  else
24
23
  puts "Warning: #{dyndoc_path} folder already exists!"
25
24
  end
25
+ when "sync"
26
+ require 'fileutils'
27
+ FileUtils.mkdir_p (etc=File.join(ENV["HOME"],"dyndoc","etc"))
28
+ room_sync=File.join(etc,".room_sync")
29
+ room_dirs=(File.exists? room_sync) ? eval(File.read(room_sync)) : {}
30
+ if ARGV[1] =~ /([^\:@]*)\:([^\:@]*)@([^\:@]*)/
31
+ room_id,room_local,room_remote=$1,$2,$3
32
+ room_dirs[room_id]={local: room_local, remote: room_remote}
33
+ File.open(room_sync,"w") {|f| f << room_dirs.inspect }
34
+ end
26
35
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: dyndoc-ruby
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.5.8
4
+ version: 0.6.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - CQLS
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2016-03-16 00:00:00.000000000 Z
11
+ date: 2016-04-04 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: R4rb
@@ -90,6 +90,66 @@ dependencies:
90
90
  - - '>='
91
91
  - !ruby/object:Gem::Version
92
92
  version: 0.1.0
93
+ - !ruby/object:Gem::Dependency
94
+ name: dyntask-ruby
95
+ requirement: !ruby/object:Gem::Requirement
96
+ requirements:
97
+ - - ~>
98
+ - !ruby/object:Gem::Version
99
+ version: '0.3'
100
+ - - '>='
101
+ - !ruby/object:Gem::Version
102
+ version: 0.3.3
103
+ type: :runtime
104
+ prerelease: false
105
+ version_requirements: !ruby/object:Gem::Requirement
106
+ requirements:
107
+ - - ~>
108
+ - !ruby/object:Gem::Version
109
+ version: '0.3'
110
+ - - '>='
111
+ - !ruby/object:Gem::Version
112
+ version: 0.3.3
113
+ - !ruby/object:Gem::Dependency
114
+ name: dyn-ruby-launchctl
115
+ requirement: !ruby/object:Gem::Requirement
116
+ requirements:
117
+ - - ~>
118
+ - !ruby/object:Gem::Version
119
+ version: '0.1'
120
+ - - '>='
121
+ - !ruby/object:Gem::Version
122
+ version: 0.1.0
123
+ type: :runtime
124
+ prerelease: false
125
+ version_requirements: !ruby/object:Gem::Requirement
126
+ requirements:
127
+ - - ~>
128
+ - !ruby/object:Gem::Version
129
+ version: '0.1'
130
+ - - '>='
131
+ - !ruby/object:Gem::Version
132
+ version: 0.1.0
133
+ - !ruby/object:Gem::Dependency
134
+ name: asciidoctor
135
+ requirement: !ruby/object:Gem::Requirement
136
+ requirements:
137
+ - - ~>
138
+ - !ruby/object:Gem::Version
139
+ version: '1.5'
140
+ - - '>='
141
+ - !ruby/object:Gem::Version
142
+ version: 1.5.3
143
+ type: :runtime
144
+ prerelease: false
145
+ version_requirements: !ruby/object:Gem::Requirement
146
+ requirements:
147
+ - - ~>
148
+ - !ruby/object:Gem::Version
149
+ version: '1.5'
150
+ - - '>='
151
+ - !ruby/object:Gem::Version
152
+ version: 1.5.3
93
153
  description: |2
94
154
  Provide templating in text document.
95
155
  email: rdrouilh@gmail.com