This commit is contained in:
egarette@silique.fr 2026-06-14 09:33:16 +02:00
parent 7f44b505c9
commit 6d48b74eba
241 changed files with 772 additions and 500 deletions

View file

@ -16,11 +16,12 @@ from rougail.output_doc import RougailOutputDoc
if __name__ == "__main__": if __name__ == "__main__":
builder_dir = sys.argv[1] builder_dir = Path(sys.argv[1])
previous = Path(builder_dir) / "previous.yml" previous = builder_dir / "previous.yml"
with Path("install.txt").open() as fh: with Path("install.txt").open() as fh:
cmd = fh.read() cmd = fh.read()
commit_id = sys.argv[2] commit_id = sys.argv[2]
has_new_type = sys.argv[3] == 'true'
# rougailconfig = RougailConfig.copy() # rougailconfig = RougailConfig.copy()
rougailconfig = get_rougail_config(backward_compatibility=False, add_extra_options=False) rougailconfig = get_rougail_config(backward_compatibility=False, add_extra_options=False)
rougailconfig['main_structural_directories'] = ['firefox'] rougailconfig['main_structural_directories'] = ['firefox']
@ -91,6 +92,14 @@ if __name__ == "__main__":
with tree.open("w") as fh: with tree.open("w") as fh:
fh.write(tree_content) fh.write(tree_content)
display_yml = None display_yml = None
if has_new_type:
display_yml = Path('types/proxy/00-type.yml')
doc += f"Contents of the {str(display_yml)} type file"
doc += '\n\n```yml\n'
with display_yml.open(encoding="utf8") as file_fh:
doc += file_fh.read()
doc += '\n```\n'
doc += "\n***\n"
if not (Path(".") / 'NODISPLAY').is_file(): if not (Path(".") / 'NODISPLAY').is_file():
for f in Path(".").iterdir(): for f in Path(".").iterdir():
if f.name.startswith('DISPLAY_'): if f.name.startswith('DISPLAY_'):
@ -114,7 +123,7 @@ if __name__ == "__main__":
doc += "\n***\n" doc += "\n***\n"
rougailconfig['step.output'] = 'doc' rougailconfig['step.output'] = 'doc'
rougailconfig["doc.title_level"] = 4 rougailconfig["doc.title_level"] = 4
inv_doc = inventory.run()[1] # inv_doc = inventory.run()[1]
CMD = "rougail -m firefox/ " CMD = "rougail -m firefox/ "
if has_namespace: if has_namespace:
CMD += "-s Firefox " CMD += "-s Firefox "
@ -124,21 +133,24 @@ if __name__ == "__main__":
CMD += "--types " + " ".join(rougailconfig["types"]) + " " CMD += "--types " + " ".join(rougailconfig["types"]) + " "
if has_mode: if has_mode:
CMD += "--modes_level basic standard advanced " CMD += "--modes_level basic standard advanced "
if inv_doc: # if inv_doc:
doc += inv_formatter.title("Let's generate the documentation", 3) if Path('DOCUMENTATION.md').is_file():
doc += inv_formatter.title("Let's generate the documentation", 3) + "\n\n"
cmd = CMD + "-o doc" cmd = CMD + "-o doc"
doc += f'```shell\n{cmd}\n```\n' doc += f'```shell\n{cmd}\n```\n'
doc += inv_doc doc += "[View the documentation file](DOCUMENTATION.md)\n\n"
# doc += inv_doc
doc += "\n***\n" doc += "\n***\n"
if previous.is_file(): if previous.is_file():
rougailconfig["doc.contents"] = ["changelog"] # rougailconfig["doc.contents"] = ["changelog"]
rougailconfig["doc.changelog.previous_json_file"] = str(previous) # rougailconfig["doc.changelog.previous_json_file"] = str(previous)
inv_doc = inventory.run()[1] # inv_doc = inventory.run()[1]
if inv_doc: if Path('CHANGELOG.md').is_file():
doc += inv_formatter.title("Let's generate the changelog", 3) doc += inv_formatter.title("Let's generate the changelog", 3) + "\n\n"
cmd = CMD + "-o doc --doc.contents changelog --doc.changelog.previous_json_file previous.yml" cmd = CMD + "-o doc --doc.contents changelog --doc.changelog.previous_json_file previous.yml"
doc += f'```shell\n{cmd}\n```\n' doc += f'```shell\n{cmd}\n```\n'
doc += inv_doc + "\n" doc += "[View the changelog file](CHANGELOG.md)\n\n"
# doc += inv_doc + "\n"
doc += "***\n" doc += "***\n"
# save PREVIOUS # save PREVIOUS
rougailconfig["doc.contents"] = ["variables"] rougailconfig["doc.contents"] = ["variables"]
@ -151,7 +163,7 @@ if __name__ == "__main__":
rougailconfig['step.output'] = 'display' rougailconfig['step.output'] = 'display'
config_dir = Path('config') config_dir = Path('config')
if config_dir.is_dir(): if config_dir.is_dir():
doc += inv_formatter.title('User datas', 2) doc += inv_formatter.title('User datas', 2) + "\n\n"
configs = list(config_dir.iterdir()) configs = list(config_dir.iterdir())
configs.sort() configs.sort()
for idx, dirname in enumerate(configs): for idx, dirname in enumerate(configs):
@ -159,8 +171,8 @@ if __name__ == "__main__":
continue continue
for filename in dirname.iterdir(): for filename in dirname.iterdir():
if filename.name.endswith('.yml') or filename.name.endswith('.yaml'): if filename.name.endswith('.yml') or filename.name.endswith('.yaml'):
doc += inv_formatter.title(f'Example {idx + 1}', 3) doc += inv_formatter.title(f'Example {idx + 1}', 3) + "\n\n"
doc += inv_formatter.title(str(filename), 4) doc += inv_formatter.title(str(filename), 4) + "\n\n"
doc += '\n```yml\n' doc += '\n```yml\n'
with filename.open(encoding="utf8") as file_fh: with filename.open(encoding="utf8") as file_fh:
doc += file_fh.read() doc += file_fh.read()
@ -183,12 +195,12 @@ if __name__ == "__main__":
) )
console = export.run()[1] console = export.run()[1]
conv = Ansi2HTMLConverter(inline=True) conv = Ansi2HTMLConverter(inline=True)
doc += inv_formatter.title('Output', 4) doc += inv_formatter.title('Output', 4) + "\n\n"
cmd = CMD + f"-u yaml -yf {filename}" cmd = CMD + f"-u yaml -yf {filename}"
with (dirname / "cmd_ro.txt").open("w") as fh: with (dirname / "cmd_ro.txt").open("w") as fh:
fh.write(cmd) fh.write(cmd)
doc += f"```shell\n{cmd}\n```\n" doc += f"```shell\n{cmd}\n```\n"
conv_data = '<pre>' + conv.convert(console, full=False) + "</pre>\n" conv_data = '<pre>' + conv.convert(console, full=False).replace('#ffd700', '#ff4d00') + "</pre>\n"
with open(dirname / 'output_ro.html', 'w') as fh_output: with open(dirname / 'output_ro.html', 'w') as fh_output:
fh_output.write(conv_data) fh_output.write(conv_data)
rougailconfig['display.output_format'] = "github" rougailconfig['display.output_format'] = "github"
@ -212,12 +224,12 @@ if __name__ == "__main__":
) )
console = export.run()[1] console = export.run()[1]
conv = Ansi2HTMLConverter(inline=True) conv = Ansi2HTMLConverter(inline=True)
doc += inv_formatter.title('Output when invalid user data is an error', 4) doc += inv_formatter.title('Output when invalid user data is an error', 4) + "\n\n"
cmd2 = cmd + " --cli.invalid_user_data_error" cmd2 = cmd + " --cli.invalid_user_data_error"
with (dirname / "cmd_invalid.txt").open("w") as fh: with (dirname / "cmd_invalid.txt").open("w") as fh:
fh.write(cmd2) fh.write(cmd2)
doc += f"```shell\n{cmd2}\n```\n" doc += f"```shell\n{cmd2}\n```\n"
conv_data = '<pre>' + conv.convert(console, full=False) + "</pre>\n" conv_data = '<pre>' + conv.convert(console, full=False).replace('#ffd700', '#ff4d00') + "</pre>\n"
with open(dirname / 'output_invalid.html', 'w') as fh_output: with open(dirname / 'output_invalid.html', 'w') as fh_output:
fh_output.write(conv_data) fh_output.write(conv_data)
rougailconfig['display.output_format'] = "github" rougailconfig['display.output_format'] = "github"
@ -242,12 +254,12 @@ if __name__ == "__main__":
) )
console = export.run()[1] console = export.run()[1]
conv = Ansi2HTMLConverter(inline=True) conv = Ansi2HTMLConverter(inline=True)
doc += inv_formatter.title('Output when unknown user data is an error', 4) doc += inv_formatter.title('Output when unknown user data is an error', 4) + "\n\n"
cmd2 = cmd + " --cli.unknown_user_data_error" cmd2 = cmd + " --cli.unknown_user_data_error"
with (dirname / "cmd_unknown.txt").open("w") as fh: with (dirname / "cmd_unknown.txt").open("w") as fh:
fh.write(cmd2) fh.write(cmd2)
doc += f"```shell\n{cmd2}\n```\n" doc += f"```shell\n{cmd2}\n```\n"
conv_data = '<pre>' + conv.convert(console, full=False) + "</pre>\n" conv_data = '<pre>' + conv.convert(console, full=False).replace('#ffd700', '#ff4d00') + "</pre>\n"
with open(dirname / 'output_unknown.html', 'w') as fh_output: with open(dirname / 'output_unknown.html', 'w') as fh_output:
fh_output.write(conv_data) fh_output.write(conv_data)
trougailconfig['display.output_format'] = "github" trougailconfig['display.output_format'] = "github"
@ -278,12 +290,12 @@ if __name__ == "__main__":
) )
console = export.run()[1] console = export.run()[1]
conv = Ansi2HTMLConverter(inline=True) conv = Ansi2HTMLConverter(inline=True)
doc += inv_formatter.title(f'Output for "{root_path}"', 4) doc += inv_formatter.title(f'Output for "{root_path}"', 4) + "\n\n"
cmd2 = cmd + f" --cli.root {root_path}" cmd2 = cmd + f" --cli.root {root_path}"
with (dirname / "cmd_root.txt").open("w") as fh: with (dirname / "cmd_root.txt").open("w") as fh:
fh.write(cmd2) fh.write(cmd2)
doc += f"```shell\n{cmd2}\n```\n" doc += f"```shell\n{cmd2}\n```\n"
conv_data = '<pre>' + conv.convert(console, full=False) + "</pre>\n" conv_data = '<pre>' + conv.convert(console, full=False).replace('#ffd700', '#ff4d00') + "</pre>\n"
with open(dirname / 'output_root.html', 'w') as fh_output: with open(dirname / 'output_root.html', 'w') as fh_output:
fh_output.write(conv_data) fh_output.write(conv_data)
trougailconfig['display.output_format'] = "github" trougailconfig['display.output_format'] = "github"
@ -307,12 +319,12 @@ if __name__ == "__main__":
) )
console = export.run()[1] console = export.run()[1]
conv = Ansi2HTMLConverter(inline=True) conv = Ansi2HTMLConverter(inline=True)
doc += inv_formatter.title('Output in read write mode', 4) doc += inv_formatter.title('Output in read write mode', 4) + "\n\n"
cmd2 = cmd + " --cli.read_write" cmd2 = cmd + " --cli.read_write"
with (dirname / "cmd_rw.txt").open("w") as fh: with (dirname / "cmd_rw.txt").open("w") as fh:
fh.write(cmd2) fh.write(cmd2)
doc += f"```shell\n{cmd2}\n```\n" doc += f"```shell\n{cmd2}\n```\n"
conv_data = '<pre>' + conv.convert(console, full=False) + "</pre>\n" conv_data = '<pre>' + conv.convert(console, full=False).replace('#ffd700', '#ff4d00') + "</pre>\n"
with open(dirname / 'output_rw.html', 'w') as fh_output: with open(dirname / 'output_rw.html', 'w') as fh_output:
fh_output.write(conv_data) fh_output.write(conv_data)
trougailconfig['display.output_format'] = "github" trougailconfig['display.output_format'] = "github"

View file

@ -29,20 +29,21 @@ cp "$BUILDER"/firefox.png .
cp "$BUILDER"/foxyproxy.png . cp "$BUILDER"/foxyproxy.png .
cp "$BUILDER"/summary.md . cp "$BUILDER"/summary.md .
cp "$BUILDER"/install.txt . cp "$BUILDER"/install.txt .
EMPTY=$(echo -e "\n")
touch README.md touch README.md
"$BUILDER"/build.py "$BUILDER" "$VERSION" "$BUILDER"/build.py "$BUILDER" "$VERSION" "false"
rm -rf summary.md rm -rf summary.md
rm -rf summary_total.md rm -rf summary_total.md
rm -rf jinja_caches rm -rf jinja_caches
git init -b "$VERSION" git init -b "$VERSION" > /dev/null
git add . git add .
git commit -am"$(cat $BUILDER/TITLE)" git commit -am"$(cat $BUILDER/TITLE)" > /dev/null
#old_commit_id="$(git rev-parse HEAD)" #old_commit_id="$(git rev-parse HEAD)"
cd - > /dev/null cd - > /dev/null
for i in $(ls -d "examples"/* | sort); do for i in $(ls -d "examples"/* | sort); do
num=$(echo $(basename "$i")) num=$(echo $(basename "$i"))
echo "$num" # echo "$num"
commit_id="v${VERSION}_$num" commit_id="v${VERSION}_$num"
title="$(head -n 1 $i/README.md)" title="$(head -n 1 $i/README.md)"
summary="[tutorial $commit_id] $title" summary="[tutorial $commit_id] $title"
@ -54,19 +55,19 @@ for i in $(ls -d "examples"/* | sort); do
base_url_doc=$(cat $i/URL) base_url_doc=$(cat $i/URL)
fi fi
if [ -f "$i/TITLE.md" ]; then if [ -f "$i/TITLE.md" ]; then
echo "- $(head -n 1 $i/TITLE.md) ([doc]($base_url_doc))" >> summary.md echo "- $(head -n 1 $i/TITLE.md)" >> summary.md
fi fi
if [ -f "$i/SUBTITLE.md" ]; then if [ -f "$i/SUBTITLE.md" ]; then
echo " - $(head -n 1 $i/SUBTITLE.md)" >> summary.md echo " - $(head -n 1 $i/SUBTITLE.md) ([doc]($base_url_doc))" >> summary.md
fi fi
if [ -f "$i/README.md" ]; then if [ -f "$i/README.md" ]; then
rm -rf "$DEST/config" "$DEST/tree.html" rm -rf "$DEST/config" "$DEST/tree.html"
num=$(echo $(basename "$i")) num=$(echo $(basename "$i"))
echo "$num" echo "=== $num ==="
commit_id="v${VERSION}_$num" commit_id="v${VERSION}_$num"
title=$(head -n 1 $i/README.md) title=$(head -n 1 $i/README.md)
summary="[tutorial $commit_id] $title" summary="[tutorial $commit_id] $title"
url_doc="$base_url_doc#$(echo $title | tr A-Z a-z | sed 's/ /-/g' | sed 's//-/g' | sed 's/\"//g')" url_doc="$base_url_doc#$(echo $title | tr A-Z a-z | sed 's/ /-/g' | sed 's//-/g' | sed 's/\"//g' | sed 's/://g' | sed 's/_/-/g')"
diff_url="https://forge.cloud.silique.fr/stove/rougail-tutorials/compare/${commit_id}~1..$commit_id" diff_url="https://forge.cloud.silique.fr/stove/rougail-tutorials/compare/${commit_id}~1..$commit_id"
echo " - [$summary](https://forge.cloud.silique.fr/stove/rougail-tutorials/src/commit/$commit_id/README.md) ([doc]($url_doc) - [diff]($diff_url))" >> summary.md echo " - [$summary](https://forge.cloud.silique.fr/stove/rougail-tutorials/src/commit/$commit_id/README.md) ([doc]($url_doc) - [diff]($diff_url))" >> summary.md
cp "summary_total.md" "$DEST" cp "summary_total.md" "$DEST"
@ -88,6 +89,9 @@ for i in $(ls -d "examples"/* | sort); do
for j in $(ls -d ../types/* 2>/dev/null); do for j in $(ls -d ../types/* 2>/dev/null); do
cp -va "$j" "$DEST/types/" cp -va "$j" "$DEST/types/"
done done
has_new_type="true"
else
has_new_type="false"
fi fi
cd $DEST cd $DEST
tree -H $TUTO_ROOT/$commit_id/ -P "*.yml" > tree.html tree -H $TUTO_ROOT/$commit_id/ -P "*.yml" > tree.html
@ -95,7 +99,7 @@ for i in $(ls -d "examples"/* | sort); do
cp -v NODISPLAY DISPLAY_* "$DEST/" 2> /dev/null || true cp -v NODISPLAY DISPLAY_* "$DEST/" 2> /dev/null || true
cp -f ../README.md "$DEST" cp -f ../README.md "$DEST"
if [ -d ../config ]; then if [ -d ../config ]; then
cp -aL ../config "$DEST" cp -vaL ../config "$DEST"
fi fi
msg="[tutorial $commit_id] $(cat ../README.md)" msg="[tutorial $commit_id] $(cat ../README.md)"
[ -e ../firefox.png ] && cp ../firefox.png "$DEST" [ -e ../firefox.png ] && cp ../firefox.png "$DEST"
@ -104,23 +108,44 @@ for i in $(ls -d "examples"/* | sort); do
cd $BEFORE cd $BEFORE
cd "$DEST" cd "$DEST"
# #
echo "- [Summary](https://forge.cloud.silique.fr/stove/rougail-tutorials/src/branch/$VERSION/README.md)" > summary_before.md echo "- [List of all the tutorial steps](https://forge.cloud.silique.fr/stove/rougail-tutorials/src/branch/$VERSION/README.md)" > summary_before.md
if [ -n "$old_commit_id" ]; then if [ -n "$old_commit_id" ]; then
echo "- [$old_summary](https://forge.cloud.silique.fr/stove/rougail-tutorials/src/commit/$old_commit_id/README.md) ([diff]($diff_url))" >> summary_before.md echo "- [$(echo $old_summary| sed 's/\[tutorial /\[Previous tutorial /')](https://forge.cloud.silique.fr/stove/rougail-tutorials/src/commit/$old_commit_id/README.md) ([diff]($diff_url))" >> summary_before.md
fi fi
echo "" >> summary_before.md echo "" >> summary_before.md
echo "# $summary" >> summary_before.md echo "# $summary" >> summary_before.md
echo "" >> summary_before.md echo "" >> summary_before.md
echo "[Read the tutorial \"$title\" in the documentation]($url_doc)" >> summary_before.md echo "- [Read the tutorial \"$title\" in the documentation]($url_doc)" >> summary_before.md
echo "- [View the changes in the files]($diff_url)" >> summary_before.md
after=$(grep "commit/$commit_id/README.md" summary_total.md -A1 | wc -l) after=$(grep "commit/$commit_id/README.md" summary_total.md -A1 | wc -l)
if [ "$after" = "2" ]; then if [ "$after" = "2" ]; then
echo $(grep "commit/$commit_id/README.md" summary_total.md -A1 | tail -n 1) > summary_after.md echo $(grep "commit/$commit_id/README.md" summary_total.md -A1 | tail -n 1 | sed 's/\[tutorial /\[Next tutorial /') > summary_after.md
fi fi
# #
ENV="ROUGAILCLI_CLI.CONFIG_FILE=$BUILDER/rougailcli_common.yml"
if [ -d types ]; then
ENV="$ENV,$BUILDER/rougailcli_types.yml"
fi
if [ -f config/mode ]; then if [ -f config/mode ]; then
mv config/mode mode mv config/mode mode
fi fi
"$BUILDER"/build.py "$BUILDER" "$commit_id" if [ -f mode ]; then
ENV="$ENV,$BUILDER/rougailcli_mode.yml"
fi
if [ -f namespace ] || [ -d foxyproxy ]; then
ENV="$ENV,$BUILDER/rougailcli_namespace.yml"
if [ -d foxyproxy ]; then
ENV="$ENV,$BUILDER/rougailcli_namespace_foxyproxy.yml"
fi
fi
env $ENV,$BUILDER/rougailcli_documentation.yml rougail > DOCUMENTATION.md
if [ "$(cat DOCUMENTATION.md)" = "$EMPTY" ]; then rm DOCUMENTATION.md; echo "NO DOCUMENTATION"; fi
if [ -f "$BUILDER"/previous.yml ]; then
env $ENV,$BUILDER/rougailcli_documentation.yml,$BUILDER/rougailcli_changelog.yml rougail > CHANGELOG.md
if [ "$(cat CHANGELOG.md)" = "$EMPTY" ]; then rm CHANGELOG.md; fi
fi
if [ ! -f CHANGELOG.md ]; then echo "NO CHANGELOG"; fi
"$BUILDER"/build.py "$BUILDER" "$commit_id" "$has_new_type"
rm -rf config/*/README.md config/*/read_write namespace config/*/invalid DISPLAY_* NODISPLAY rm -rf config/*/README.md config/*/read_write namespace config/*/invalid DISPLAY_* NODISPLAY
rm -rf jinja_caches summary.md summary_before.md summary_after.md summary_total.md rm -rf jinja_caches summary.md summary_before.md summary_after.md summary_total.md
if [ -f mode ]; then if [ -f mode ]; then
@ -130,14 +155,16 @@ for i in $(ls -d "examples"/* | sort); do
MODE=0 MODE=0
fi fi
git add *.png README.md install.txt tree.html git add *.png README.md install.txt tree.html
git add DOCUMENTATION.md &> /dev/null || true
git add CHANGELOG.md &> /dev/null || true
if [ -d config ]; then if [ -d config ]; then
git add config git add config
else else
git status |grep -q config && git add config git status |grep -q config && git add config
fi fi
git commit -m"$summary (config and doc)" git commit -m"$summary (config and doc)" > /dev/null
git add . git add .
git commit -am"$msg" --allow-empty git commit -am"$msg" --allow-empty > /dev/null
git tag -a "$commit_id" -m"format version $VERSION: $num" git tag -a "$commit_id" -m"format version $VERSION: $num"
if [ "$MODE" = 1 ]; then if [ "$MODE" = 1 ]; then
touch mode touch mode
@ -146,7 +173,7 @@ for i in $(ls -d "examples"/* | sort); do
old_commit_id="$commit_id" old_commit_id="$commit_id"
old_summary="$summary" old_summary="$summary"
# echo "pouet $i" # echo "pouet $i"
# [ "$i" = "examples/120" ] && exit 1 # [ "$i" = "examples/002" ] && exit 1
if [ -f previous.yml ]; then cp -a previous.yml previous_old.yml; fi if [ -f previous.yml ]; then cp -a previous.yml previous_old.yml; fi
fi fi
done done

1
examples/000/SUBTITLE.md Normal file
View file

@ -0,0 +1 @@
Getting started

View file

@ -1 +1 @@
Getting started Configure Proxy Access to the Internet

View file

@ -1 +0,0 @@
The user data file is empty. So it's only default value that will be used.

View file

@ -1 +0,0 @@
The user data file is empty. So it's only default value that will be used.

View file

@ -1 +0,0 @@
The integer value "1" is invalid.

View file

@ -1 +0,0 @@
The user data file is empty. So it's only default value that will be used.

View file

@ -1 +0,0 @@
"foo" should be an invalid value for this variable.

View file

@ -1 +0,0 @@
The user data file is empty. So it's only default value that will be used.

View file

@ -1 +0,0 @@
"foo" should be an invalid value for this variable.

View file

@ -1 +0,0 @@
The user data file is empty. So it's only default value that will be used.

View file

@ -1 +0,0 @@
"foo" should be an invalid value for this variable.

1
examples/020/SUBTITLE.md Normal file
View file

@ -0,0 +1 @@
Group variables inside families

View file

@ -1 +1 @@
Group variables inside families Manual proxy configuration

View file

@ -1,5 +0,0 @@
---
manual:
http_proxy:
address: example.net
port: 3128

View file

@ -1 +1 @@
https://pedago.gwenaelremond.fr/bribes/rougail/tutorial/properties.html https://pedago.gwenaelremond.fr/bribes/rougail/tutorial/calculated.html

View file

@ -0,0 +1,9 @@
---
proxy_mode: Manual proxy configuration
manual:
http_proxy:
address: http.proxy.net
port: 3128
use_for_https: false
https_proxy:
address: https.proxy.net

View file

@ -1,2 +0,0 @@
If "use_for_https" is false, HTTPS variables are visible in read only mode and in read write mode.

1
examples/050/URL Normal file
View file

@ -0,0 +1 @@
https://pedago.gwenaelremond.fr/bribes/rougail/tutorial/properties.html

View file

@ -1,2 +0,0 @@
If "use_for_https" is false, HTTPS variables are visible in read only mode and in read write mode.

View file

@ -1,2 +0,0 @@
If "use_for_https" is false, HTTPS variables are visible in read only mode and in read write mode.

View file

@ -1,2 +0,0 @@
If "use_for_https" is false, HTTPS variables are visible in read only mode and in read write mode.

View file

@ -1,2 +0,0 @@
If "use_for_https" is false, HTTPS variables are visible in read only mode and in read write mode.

View file

@ -1,2 +0,0 @@
If "use_for_https" is false, HTTPS variables are visible in read only mode and in read write mode.

View file

@ -1,2 +0,0 @@
If "use_for_https" is false, HTTPS variables are visible in read only mode and in read write mode.

View file

@ -1 +1 @@
A dynamically built family Family: A dynamically built family

View file

@ -1 +1 @@
https://pedago.gwenaelremond.fr/bribes/rougail/tutorial/dynfam.html https://pedago.gwenaelremond.fr/bribes/rougail/tutorial/dynamic.html

View file

@ -1,2 +0,0 @@
If "use_for_https" is false, HTTPS variables are visible in read only mode and in read write mode.

View file

@ -1,2 +0,0 @@
If "use_for_https" is false, HTTPS variables are visible in read only mode and in read write mode.

View file

@ -1,2 +0,0 @@
If "use_for_https" is false, HTTPS variables are visible in read only mode and in read write mode.

View file

@ -1,2 +0,0 @@
If "use_for_https" is false, HTTPS variables are visible in read only mode and in read write mode.

View file

@ -1,2 +0,0 @@
If "use_for_https" is false, HTTPS variables are visible in read only mode and in read write mode.

View file

@ -1,2 +0,0 @@
If "use_for_https" is false, HTTPS variables are visible in read only mode and in read write mode.

View file

@ -1,2 +0,0 @@
If "use_for_https" is false, HTTPS variables are visible in read only mode and in read write mode.

1
examples/080/URL Normal file
View file

@ -0,0 +1 @@
https://pedago.gwenaelremond.fr/bribes/rougail/tutorial/customtype.html

View file

@ -1,2 +0,0 @@
If "use_for_https" is false, HTTPS variables are visible in read only mode and in read write mode.

View file

@ -9,11 +9,9 @@ proxy:
type: domainname type: domainname
params: params:
allow_ip: true allow_ip: true
mandatory: false
port: port:
description: Proxy port description: Proxy port
type: port type: port
default: 8080 default: 8080
mandatory: false
... ...

View file

@ -1 +1 @@
HTTPS and SOCKS Proxy HTTPS and SOCKS Proxy with "proxy" type

View file

@ -1,2 +0,0 @@
If "use_for_https" is false, HTTPS variables are visible in read only mode and in read write mode.

View file

@ -7,3 +7,5 @@ manual:
use_for_https: false use_for_https: false
https_proxy: https_proxy:
address: https.proxy.net address: https.proxy.net
socks_proxy:
address: socks.proxy.net

View file

@ -12,24 +12,7 @@ manual:
hidden: hidden:
variable: _.use_for_https variable: _.use_for_https
address:
default:
variable: __.http_proxy.address
mandatory: true
port:
default:
variable: __.http_proxy.port
mandatory: true
socks_proxy: socks_proxy:
description: SOCKS Proxy description: SOCKS Proxy
type: proxy type: proxy
version:
description: SOCKS host version used by proxy
choices:
- v4
- v5
default: v5
... ...

1
examples/082/README.md Normal file
View file

@ -0,0 +1 @@
Add a variable in a family with custom type

View file

@ -0,0 +1,11 @@
---
proxy_mode: Manual proxy configuration
manual:
http_proxy:
address: http.proxy.net
port: 3128
use_for_https: false
https_proxy:
address: https.proxy.net
socks_proxy:
address: socks.proxy.net

View file

@ -0,0 +1,25 @@
%YAML 1.2
---
version: 1.1
manual:
use_for_https: true # Also use this proxy for HTTPS
https_proxy:
description: HTTPS Proxy
type: proxy
hidden:
variable: _.use_for_https
socks_proxy:
description: SOCKS Proxy
type: proxy
version:
description: SOCKS host version used by proxy
choices:
- v4
- v5
default: v5
...

1
examples/083/README.md Normal file
View file

@ -0,0 +1 @@
Redefine default value in custom type variable

View file

@ -0,0 +1,9 @@
---
proxy_mode: Manual proxy configuration
manual:
http_proxy:
address: http.proxy.net
port: 3128
use_for_https: false
https_proxy:
address: https.proxy.net

View file

@ -0,0 +1,20 @@
%YAML 1.2
---
version: 1.1
manual:
description: Manual proxy configuration
disabled:
variable: _.proxy_mode
when_not: Manual proxy configuration
http_proxy:
description: HTTP Proxy
type: proxy
address:
default: null
port:
default: 8080
...

View file

@ -0,0 +1,20 @@
%YAML 1.2
---
version: 1.1
proxy:
address:
description: Proxy address
type: domainname
params:
allow_ip: true
default:
variable: __.http_proxy.address
port:
description: Proxy port
type: port
default:
variable: __.http_proxy.port
...

1
examples/084/README.md Normal file
View file

@ -0,0 +1 @@
Redefine other parameter in custom type for HTTP

View file

@ -0,0 +1,9 @@
---
proxy_mode: Manual proxy configuration
manual:
http_proxy:
address: http.proxy.net
port: 3128
use_for_https: false
https_proxy:
address: https.proxy.net

View file

@ -0,0 +1,24 @@
%YAML 1.2
---
version: 1.1
manual:
description: Manual proxy configuration
disabled:
variable: _.proxy_mode
when_not: Manual proxy configuration
http_proxy:
description: HTTP Proxy
type: proxy
address:
redefine: true
default: null
description: HTTP proxy address
port:
redefine: true
default: 8080
description: HTTP proxy port
...

View file

@ -0,0 +1,18 @@
%YAML 1.2
---
version: 1.1
proxy:
address:
type: domainname
params:
allow_ip: true
default:
variable: __.http_proxy.address
port:
type: port
default:
variable: __.http_proxy.port
...

1
examples/085/README.md Normal file
View file

@ -0,0 +1 @@
Redefine other parameter in custom type for HTTPS and SOCKS

View file

@ -0,0 +1,9 @@
---
proxy_mode: Manual proxy configuration
manual:
http_proxy:
address: http.proxy.net
port: 3128
use_for_https: false
https_proxy:
address: https.proxy.net

View file

@ -0,0 +1,41 @@
%YAML 1.2
---
version: 1.1
manual:
use_for_https: true # Also use this proxy for HTTPS
https_proxy:
description: HTTPS Proxy
type: proxy
hidden:
variable: _.use_for_https
address:
redefine: true
description: HTTPS proxy address
port:
redefine: true
description: HTTPS proxy port
socks_proxy:
description: SOCKS Proxy
type: proxy
address:
redefine: true
description: SOCKS proxy address
port:
redefine: true
description: SOCKS proxy port
version:
description: SOCKS host version used by proxy
choices:
- v4
- v5
default: v5
...

View file

@ -1 +1 @@
A conditional disabled variable with type web_address Variable with the value "null"

1
examples/090/SUBTITLE.md Normal file
View file

@ -0,0 +1 @@
Nullable variable

1
examples/090/URL Normal file
View file

@ -0,0 +1 @@
https://pedago.gwenaelremond.fr/bribes/rougail/tutorial/nullable.html

View file

@ -1 +0,0 @@
We cannot configure "auto" if "proxy_mode" is not "Automatic proxy configuration URL".

View file

@ -1,2 +1,5 @@
--- ---
auto: https://auto.proxy.net/wpad.dat proxy_mode: Manual proxy configuration
manual:
http_proxy:
address: http.proxy.net

View file

@ -1,2 +0,0 @@
---
proxy_mode: Automatic proxy configuration URL

Binary file not shown.

Before

Width:  |  Height:  |  Size: 113 KiB

View file

@ -0,0 +1,44 @@
%YAML 1.2
---
version: 1.1
manual:
use_for_https: true # Also use this proxy for HTTPS
https_proxy:
description: HTTPS Proxy
type: proxy
hidden:
variable: _.use_for_https
address:
redefine: true
description: HTTPS proxy address
port:
redefine: true
description: HTTPS proxy port
socks_proxy:
description: SOCKS Proxy
type: proxy
address:
redefine: true
description: SOCKS proxy address
default: null
mandatory: false
port:
redefine: true
description: SOCKS proxy port
default: 1080
version:
description: SOCKS host version used by proxy
choices:
- v4
- v5
default: v5
...

1
examples/091/README.md Normal file
View file

@ -0,0 +1 @@
Variables disabled when condition is null

View file

@ -4,4 +4,4 @@ manual:
http_proxy: http_proxy:
address: http.proxy.net address: http.proxy.net
socks_proxy: socks_proxy:
version: v4 adress: socks.proxy.net

View file

@ -0,0 +1,50 @@
%YAML 1.2
---
version: 1.1
manual:
use_for_https: true # Also use this proxy for HTTPS
https_proxy:
description: HTTPS Proxy
type: proxy
hidden:
variable: _.use_for_https
address:
redefine: true
description: HTTPS proxy address
port:
redefine: true
description: HTTPS proxy port
socks_proxy:
description: SOCKS Proxy
type: proxy
address:
redefine: true
description: SOCKS proxy address
default: null
mandatory: false
port:
redefine: true
description: SOCKS proxy port
default: 1080
disabled:
variable: _.address
when: null
version:
description: SOCKS host version used by proxy
choices:
- v4
- v5
default: v5
disabled:
variable: _.address
when: null
...

View file

@ -1 +1 @@
A conditional disabled variable with type domainname and parameters A conditional disabled variable with type web_address

View file

@ -1 +1 @@
A full documented variable with multiple values and not mandatory Automatic proxy configuration URL

1
examples/100/URL Normal file
View file

@ -0,0 +1 @@
https://pedago.gwenaelremond.fr/bribes/rougail/tutorial/webaddress.html

View file

@ -1 +1,2 @@
--- ---
auto: https://auto.proxy.net/wpad.dat

View file

@ -1,4 +1,2 @@
--- ---
proxy_mode: Automatic proxy configuration URL proxy_mode: Automatic proxy configuration URL
auto: https://auto.proxy.net/wpad.dat
no_proxy: 192.168.1.0/24

Binary file not shown.

Before

Width:  |  Height:  |  Size: 118 KiB

After

Width:  |  Height:  |  Size: 113 KiB

Binary file not shown.

View file

@ -1 +0,0 @@
A variable with multiple value

View file

@ -1,6 +0,0 @@
---
proxy_mode: Automatic proxy configuration URL
auto: https://auto.proxy.net/wpad.dat
no_proxy:
- example.net
- 192.168.1.0/24

View file

@ -1,17 +0,0 @@
%YAML 1.2
---
version: 1.1
no_proxy:
description: Address for which proxy will be desactivated
type: domainname
params:
allow_ip: true
allow_cidr_network: true
allow_without_dot: true
allow_startswith_dot: true
multi: true
disabled:
variable: _.proxy_mode
when: No proxy
...

View file

@ -1 +0,0 @@
A non mandatory variable

View file

@ -1,6 +0,0 @@
---
proxy_mode: Automatic proxy configuration URL
auto: https://auto.proxy.net/wpad.dat
no_proxy:
- example.net
- 192.168.1.0/24

View file

@ -1,3 +0,0 @@
---
proxy_mode: Automatic proxy configuration URL
auto: https://auto.proxy.net/wpad.dat

View file

@ -1 +0,0 @@
Examples

View file

@ -1,6 +0,0 @@
---
proxy_mode: Automatic proxy configuration URL
auto: https://auto.proxy.net/wpad.dat
no_proxy:
- example.net
- 192.168.1.0/24

View file

@ -1,3 +0,0 @@
---
proxy_mode: Automatic proxy configuration URL
auto: https://auto.proxy.net/wpad.dat

View file

@ -1,3 +0,0 @@
---
proxy_mode: Automatic proxy configuration URL
auto: https://auto.proxy.net/wpad.dat

View file

@ -1 +1 @@
A conditional disabled boolean variable A conditional disabled non mandatory variable with type domainname and parameters

1
examples/110/SUBTITLE.md Normal file
View file

@ -0,0 +1 @@
Variable with multiple values

Some files were not shown because too many files have changed in this diff Show more