dyndoc-ruby 1.3.0 → 1.3.2
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/bin/dyn-rebase-url +46 -0
- data/bin/dyn-site +7 -0
- data/share/dyn-site/dyn-site.sh +167 -0
- metadata +6 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 4f13ef78daad4f7cab557c33988cf7da1100320cdb7a19ab211ee99abde8f8bf
|
4
|
+
data.tar.gz: af4977f95ec0bc87dde2656419de2168f908cc65433eb0f6e0a2b0f447ab7226
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 239ba8a18e7282920922051dad37a42a8fc8d3bb836aad7a42bb75176a056db398668d7cfb99afcc4a2f02b9bcb63b852486bfa41b1a453c6b5cd5334885a6ea
|
7
|
+
data.tar.gz: 532883f4d9a29d228bdd7169699bad36b7dbe48fe369b535bf5f92dce0486ef683bd254a19de7a3c64d1c036fddc23890d4c34fb4ee18d462fe93e2821fca756
|
data/bin/dyn-rebase-url
ADDED
@@ -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
|
data/bin/dyn-site
ADDED
@@ -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.
|
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
|