summaryrefslogtreecommitdiffstats
path: root/tools/c2m.sh
diff options
context:
space:
mode:
Diffstat (limited to 'tools/c2m.sh')
-rwxr-xr-xtools/c2m.sh53
1 files changed, 40 insertions, 13 deletions
diff --git a/tools/c2m.sh b/tools/c2m.sh
index 0861eda84..371b348c5 100755
--- a/tools/c2m.sh
+++ b/tools/c2m.sh
@@ -58,10 +58,13 @@
###
### CHANGELOG (LATEST ON TOP)
###
+### 1.2.0 (2021-08-02) Corrections to http/https proxy handling and support to
+### get Confluence credentials from env variables instead of
+### directly from the code.
### 1.1.0 (2020-03-10) added support for http/https proxy and anonymous wiki
### access. thx to eric, nicolas and sylvain (orange, france)
### confluence2md jar file now has to be in the same path as
-### c2m.
+### c2m.
### 1.0.0 (2020-03-09) initial release
###
@@ -104,13 +107,22 @@
### some initial variables
###
-script_version="1.1.0 (2020-03-10)"
+script_version="1.2.0 (2021-08-02)"
- user="*****"; # replace ***** with your wiki login name
- passwd="*****"; # replace ***** with your wiki password
- credentials="${user}":"${passwd}";
- server="https://wiki.onap.org";
- rst_editor="retext --preview";
+if [[ -z "$CONFLUENCE_USERNAME" || -z "$CONFLUENCE_PASSWORD" ]]
+then
+ echo "Mandatory environment variables:"
+ echo " CONFLUENCE_USERNAME: Confluence username"
+ echo " CONFLUENCE_PASSWORD: Confluence password."
+ echo "Be aware! Setting bash debuging on will print credentials."
+ exit
+fi
+
+user="${CONFLUENCE_USERNAME}";
+passwd="${CONFLUENCE_PASSWORD}";
+credentials="${user}":"${passwd}";
+server="https://wiki.onap.org";
+rst_editor="retext --preview";
# remove credentials for those using anonymous access
test "${credentials}" = "*****:*****" && credentials=""
@@ -205,12 +217,27 @@ function pull_pages_from_wiki {
#out_file="${page_title}-id${page_id}";
out_file="${page_title}";
- # set proxy for those who need
- test -n "${http_proxy}" && proxy="$(echo $http_proxy |sed -e 's,http://,-Dhttp.proxyHost=,' -e 's/:/ -Dhttp.proxyPort=/' -e 's:/$::')"
- test -n "${https_proxy}" && proxy="$proxy $(echo $https_proxy |sed -e 's,http://,-Dhttps.proxyHost=,' -e 's/:/ -Dhttps.proxyPort=/' -e 's:/$::')"
+ # set proxy if needed
+ if [[ -v http_proxy && ! -z "$http_proxy" ]]; then
+ proxy_to_parse="${http_proxy/http:\/\//""}";
+ echo "http_proxy is set to \"${proxy_to_parse}\"";
+ elif [[ -v https_proxy && ! -z "$https_proxy" ]]; then
+ proxy_to_parse="${https_proxy/https:\/\//""}";
+ echo "https_proxy is set to \"${proxy_to_parse}\"";
+ fi
+
+ if [[ $proxy_to_parse =~ ^([\.0-9]+) ]]; then
+ java_options=" -Dhttp.proxyHost=${BASH_REMATCH[1]}"
+ echo "${java_options}"
+ fi
+ if [[ $proxy_to_parse =~ .*:([0-9]+) ]]; then
+ java_options="${java_options} -Dhttps.proxyPort=${BASH_REMATCH[1]}"
+ echo "${java_options}"
+ fi
+ # TODO: -depth
# pull pages from wiki and convert to markdown (as a source for conversion by pandoc)
- java $proxy -jar "${basedir}"/confluence2md-2.1-fat.jar +H true +T false +RootPageTitle false +FootNotes true -maxHeaderDepth 7 -depth $depth -v true -o ${out_file}.md -u "${credentials}" -server $server $page_id
+ java $java_options -jar "${basedir}"/confluence2md-2.1-fat.jar +H true +T false +RootPageTitle false +FootNotes true -maxHeaderDepth 7 -depth $depth -v true -o ${out_file}.md -u "${credentials}" -server $server $page_id
}
###
@@ -282,7 +309,7 @@ done
# the main loop reads the page_array line by line and processes the content
for line in "${page_array[@]}"
do
-
+ echo "INFO - bupp $line"
# cut out values from the current line (delimiter is now the "|") and assign them to the correct variables
hierarchy=$(echo $line | cut -f1 -d\|)
page_id=$(echo $line | cut -f2 -d\|)
@@ -314,7 +341,7 @@ do
echo "INFO page_id = \"$page_id\""
echo "INFO page_title = \"$page_title\""
echo "INFO depth = \"$depth\""
-
+
# create working directory - done for every! "hierarchy 0" entry of page_list
if [ "$hierarchy" == "0" ]
then