dyndoc-ruby 1.3.0 → 1.3.2

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
  SHA256:
3
- metadata.gz: 9ead83e394d38dcc18626162ada3e9fc5077d1e5673a6992227811bfda153fd5
4
- data.tar.gz: be7ce6c24f93febcfddf6822aaf30e4dad4978cbbc8e88e47c02d6902cff525e
3
+ metadata.gz: 4f13ef78daad4f7cab557c33988cf7da1100320cdb7a19ab211ee99abde8f8bf
4
+ data.tar.gz: af4977f95ec0bc87dde2656419de2168f908cc65433eb0f6e0a2b0f447ab7226
5
5
  SHA512:
6
- metadata.gz: 924604a6f99dd1fc71ec45c2fb7d062b4564ae569bc8d6328ddbf2ae7e1ed88326aa607e8e62f7ba99f95ed68cef0e46732bcbc9468d8caa5ffa0b3abf039524
7
- data.tar.gz: 015316465d1ac2db277a1390e4566a525e5005fdb45b9ea333e89b61014a8f870cdc6305a8301772bf5c8a70e5f0634704410fc26068f365fdd3da5c6356842d
6
+ metadata.gz: 239ba8a18e7282920922051dad37a42a8fc8d3bb836aad7a42bb75176a056db398668d7cfb99afcc4a2f02b9bcb63b852486bfa41b1a453c6b5cd5334885a6ea
7
+ data.tar.gz: 532883f4d9a29d228bdd7169699bad36b7dbe48fe369b535bf5f92dce0486ef683bd254a19de7a3c64d1c036fddc23890d4c34fb4ee18d462fe93e2821fca756
@@ -0,0 +1,46 @@
1
+ #!/usr/bin/env ruby
2
+
3
+ cur=0
4
+ opts={mode: :default, to: ""}
5
+
6
+ ##p ARGV
7
+
8
+ while ["--dir","--mode","--from","--to","--help","--ext"].include? ARGV[cur]
9
+ ##p [:cur,ARGV[cur]]
10
+ case ARGV[cur]
11
+ when "--dir","--help"
12
+ opts[ARGV[cur].to_sym]=true
13
+ cur += 1
14
+ when "--mode"
15
+ opts[:mode]==ARGV[cur+1].to_sym if ["default","href"].include? ARGV[cur+1]
16
+ cur += 2
17
+ when "--from","--to"
18
+ opts[ARGV[cur][2..-1].to_sym]=ARGV[cur+1]
19
+ cur += 2
20
+ when "--ext"
21
+ opts[ARGV[cur].to_sym]=ARGV[cur+1]
22
+ cur += 2
23
+ end
24
+ end
25
+
26
+ file=ARGV[cur]
27
+ opts[:help]=true unless file
28
+ if opts[:help]
29
+ puts "rebase_url [--dir] [--from <from_path>] [--to <to_path>] [--ext <extension>] file"
30
+ else
31
+ ext=opts[:ext] ? "."+opts[:ext] : ""
32
+ files=opts[:dir] ? Dir[File.join(file,"*"+ext)] : [file]
33
+ ##p files
34
+ ##p opts
35
+ files.each do |filename|
36
+ content=File.read(filename)
37
+ File.open(filename,"w") do |f|
38
+ case opts[:mode]
39
+ when :href
40
+ f << content.gsub(/\ href="#{opts[:from]}/," href=\""+opts[:to])
41
+ else
42
+ f << content.gsub(/#{opts[:from]}/,opts[:to])
43
+ end
44
+ end
45
+ end
46
+ end
@@ -0,0 +1,7 @@
1
+ #!/usr/bin/env ruby
2
+
3
+ cmd=::File.expand_path('../../share/dyn-site/dyn-site.sh', __FILE__)+" "+ARGV.join(" ")
4
+
5
+ out=`/bin/bash -c "#{cmd}"`
6
+
7
+ puts out unless out.empty?
@@ -0,0 +1,167 @@
1
+ #!/bin/bash
2
+
3
+
4
+ RootSrv=$HOME/RodaSrv
5
+
6
+ if [ "$1" = "--root" ];then
7
+ shift
8
+ RootSrv=$1
9
+ if [ $RootSrv = "cfg" ]; then
10
+ RootSrv=`ruby -e 'require "yaml";puts YAML::load_file(File.join(ENV["HOME"],"dyndoc/etc/dyn-html.yml"))["root"]'`
11
+ fi
12
+ shift
13
+ fi
14
+
15
+ Cmd=$1
16
+
17
+ #echo "Command: $Cmd"
18
+
19
+ if [ "$Cmd" = "" ]; then
20
+ Cmd="help"
21
+ fi
22
+
23
+
24
+ case $Cmd in
25
+ set-root)
26
+ new-root=$2
27
+ ## Config file
28
+ echo "---" > $HOME/dyndoc/etc/dyn-html.yml
29
+ echo "root: $new-root" >> $HOME/dyndoc/etc/dyn-html.yml
30
+ ;;
31
+ help)
32
+ echo "Aide:"
33
+ echo "----"
34
+ echo " dyn-site [--root <cfg|ROOT>] first (création de l'arborescence de base)"
35
+ echo " dyn-site [--root <cfg|ROOT>] init [zip|link <PATH>](installation de tools et system)"
36
+ echo " dyn-site [--root <cfg|ROOT>] add <User> (ajout d'un utilisateur <User>)"
37
+ echo " dyn-site [--root <cfg|ROOT>] rebase <Conf> (cas de workshop où <Conf>=<User>)"
38
+ echo " dyn-site [--root <cfg|ROOT>] rebase-subdir <Subdir> <Prj> (Subdir=<User>/<PrjPath>)"
39
+ echo " dyn-site vscode [--update] (install vscode plugin for dyndoc)"
40
+ ## DANGEROUS!: echo " dyn-site set-root <new-root>"
41
+ ;;
42
+ first)
43
+ ## Not necessary for docker
44
+ mkdir -p $RootSrv/edit
45
+ mkdir -p $RootSrv/public/users
46
+ ;;
47
+ init)
48
+ installmode=$2
49
+ case $installmode in
50
+ zip)
51
+ ## Install Specfic stuff inside
52
+ mkdir -p $RootSrv/install/RodaSrvTools
53
+ cd ${RootSrv}/install
54
+ if ! [ -d DynRodaSystem ]; then git clone https://toltex-gogs.dyndoc.fr/rcqls/DynRodaSystem.git; fi
55
+ if ! [ -f RodaSrvTools.zip ]; then
56
+ wget https://toltex-seafile.dyndoc.fr/f/128ced4435/?raw=1 -O RodaSrvTools.zip
57
+ cd RodaSrvTools
58
+ unzip ../RodaSrvTools.zip
59
+ fi
60
+ ## Create links
61
+ cd ${RootSrv}
62
+ ln -sf install/DynRodaSystem system
63
+ cd public
64
+ ln -sf ../install/RodaSrvTools tools
65
+ ;;
66
+ link)
67
+ rodatools_path=$2
68
+ ## Create links
69
+ cd ${RootSrv}
70
+ ln -sf $rodatools_path/system system
71
+ cd public
72
+ ln -sf $rodatools_path/tools tools
73
+ esac
74
+ ;;
75
+ add)
76
+ RodaWebUser=$2
77
+ if [ "$RodaWebUser" != "" ]; then
78
+ mkdir -p ${RootSrv}/edit/${RodaWebUser}
79
+ mkdir -p ${RootSrv}/public/pages
80
+ mkdir -p ${RootSrv}/public/users/${RodaWebUser}/.pages
81
+ cd ${RootSrv}/public/pages
82
+ ln -s ../users/${RodaWebUser}/.pages ${RodaWebUser}
83
+ fi
84
+ ;;
85
+ rebase)
86
+ Conf=$2
87
+ if [ "${Conf}" = "" ]; then
88
+ exit
89
+ fi
90
+ PUBLIC_ROOT="$HOME/RodaSrv/public/users/${Conf}"
91
+ SITE_ROOT="$HOME/RodaSrv/.site/$Conf"
92
+ PAGES_ROOT="$SITE_ROOT/pages"
93
+ mkdir -p ${SITE_ROOT}
94
+ cp -R ${PUBLIC_ROOT}/* ${SITE_ROOT}/
95
+ cd ${PAGES_ROOT}
96
+ pages=$(ls *.html)
97
+ echo "pages to process: $pages"
98
+ for html in $pages
99
+ do
100
+ rebase_url --from /users/$Conf/ --to / $html
101
+ rebase_url --from /$Conf/ --to / $html
102
+ mv $html ..
103
+ done
104
+ cd $SITE_ROOT
105
+ rm -fr pages
106
+ ;;
107
+ rebase-subdir)
108
+ Subdir=$2
109
+ if [ "${Subdir}" = "" ]; then
110
+ echo "Subdir doit être non vide!"
111
+ exit
112
+ fi
113
+ Prj=$3
114
+ if [ "${Prj}" = "" ]; then
115
+ echo "Prj doit être non vide!"
116
+ exit
117
+ fi
118
+ PUBLIC_ASSETS="$HOME/RodaSrv/public/users/${Subdir}/${Prj}"
119
+ PUBLIC_PAGES="$HOME/RodaSrv/public/pages/${Subdir}/${Prj}"
120
+ SITE_ROOT="$HOME/RodaSrv/.site/$Prj"
121
+ PAGES_ROOT="$SITE_ROOT/pages"
122
+ if [ -d ${SITE_ROOT} ]; then
123
+ rm -fr ${SITE_ROOT}
124
+ fi
125
+ mkdir -p ${PAGES_ROOT}
126
+ cp -R ${PUBLIC_PAGES}/* ${PAGES_ROOT}/
127
+ cp -R ${PUBLIC_ASSETS}/* ${SITE_ROOT}/
128
+ cd ${PAGES_ROOT}
129
+ pages=$(find . -name '*.html')
130
+ echo "pages to process: $pages"
131
+ for html in $pages
132
+ do
133
+ rebase_url --from /users/${Subdir}/${Prj}/ --to / $html
134
+ rebase_url --from /${Subdir}/${Prj}/ --to / $html
135
+ done
136
+ cd $SITE_ROOT
137
+ mv pages/* .
138
+ rm -fr pages
139
+ ;;
140
+ vscode)
141
+ if [ -d ~/.vscode/extensions ]; then
142
+ cd ~/.vscode/extensions
143
+ mkdir tmp
144
+ cd tmp
145
+ git clone https://github.com/rcqls/dyndoc-syntax
146
+ cd ..
147
+ if [ -d dyndoc ]; then
148
+ if [ "$2" = "--update" ]; then
149
+ rm -fr dyndoc
150
+ mv tmp/dyndoc-syntax/vscode/dyndoc dyndoc
151
+ rm -fr tmp
152
+ fi
153
+ else
154
+ mv tmp/dyndoc-syntax/vscode/dyndoc dyndoc
155
+ rm -fr tmp
156
+ fi
157
+ fi
158
+ ;;
159
+ # deploy)
160
+ # Conf=$2
161
+ # url="sfdsmqrk@ftp.sfds.asso.fr:$Conf/"
162
+ # if [ "$3" != "" ]; then
163
+ # url="$3"
164
+ # fi
165
+ # rsync -az $SITE_ROOT/* $url
166
+ # ;;
167
+ esac
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: dyndoc-ruby
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.3.0
4
+ version: 1.3.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - RCqls
@@ -187,6 +187,8 @@ executables:
187
187
  - dyn-ctl
188
188
  - dyn-4ever
189
189
  - dyn-yml
190
+ - dyn-rebase-url
191
+ - dyn-site
190
192
  extensions: []
191
193
  extra_rdoc_files: []
192
194
  files:
@@ -200,7 +202,9 @@ files:
200
202
  - bin/dyn-http
201
203
  - bin/dyn-init
202
204
  - bin/dyn-lint
205
+ - bin/dyn-rebase-url
203
206
  - bin/dyn-scan
207
+ - bin/dyn-site
204
208
  - bin/dyn-srv
205
209
  - bin/dyn-task
206
210
  - bin/dyn-x
@@ -225,6 +229,7 @@ files:
225
229
  - share/demo/testBeamer.dyn
226
230
  - share/demo/testBeamer_lib.dyn
227
231
  - share/demo/test_atom.dyn
232
+ - share/dyn-site/dyn-site.sh
228
233
  - share/dyndoc.yml/README.md
229
234
  - share/dyndoc.yml/example.dyndoc.yml
230
235
  - share/dyntasks/clean_task.dyn