@@ -31,19 +31,73 @@ trap "cd '${DEPLOY_DIR}'; rm -rf '${WORK_DIR}'" EXIT
31
31
mkdir -p " ${WORK_DIR} /public/"
32
32
33
33
cat << EOF > "${WORK_DIR} /public/index.html"
34
- <!DOCTYPE html>
35
- <html>
34
+ <!doctype html>
35
+ <html lang=en >
36
36
<head>
37
- <meta charset="UTF-8">
38
- <meta name="viewport" content="width=device-width, initial-scale=1"/>
39
- <title>PDI: Documentation versions</title>
37
+ <meta charset=utf-8>
38
+ <title>PDI: Documentation versions</title>
40
39
</head>
41
40
<body>
42
- <p >PDI documentation for:</p >
41
+ <h1 >PDI documentation for:</h1 >
43
42
<ul>
44
43
EOF
45
44
46
45
46
+ # #######################
47
+ # # GITHUB
48
+ # #######################
49
+ DOWNLOAD_URL=$( curl -fsS -H " Authorization: Bearer ${CI_PAGES_TOKEN} " https://api.github.com/repos/${GH_PROJECT_NAME} /actions/artifacts \
50
+ | jq -r ' .artifacts
51
+ | map(select(.workflow_run.head_branch=="main" and .name == "pages"))
52
+ | sort_by(.created_at)
53
+ | last
54
+ | .archive_download_url' )
55
+ mkdir -p " ${WORK_DIR} /public/main"
56
+ cd " ${WORK_DIR} /public/main"
57
+ curl -H " Authorization: Bearer ${CI_PAGES_TOKEN} " -LfsSo artifacts.zip " ${DOWNLOAD_URL} "
58
+ unzip -o -d public artifacts.zip
59
+ rm artifacts.zip
60
+ while [ 1 -eq " $( find . -mindepth 1 -maxdepth 1| wc -l) " ]
61
+ do
62
+ SUBDIR=" $( find . -mindepth 1 -maxdepth 1) "
63
+ find " $SUBDIR " -mindepth 1 -maxdepth 1 -exec mv ' {}' . ' ;'
64
+ rmdir " $SUBDIR "
65
+ done
66
+ echo " <li><a href='main/'>latest version from GIT</a></li>" >> " ${WORK_DIR} /public/index.html"
67
+
68
+
69
+
70
+
71
+ curl -fsS -H " Authorization: Bearer ${CI_PAGES_TOKEN} " https://api.github.com/repos/${GH_PROJECT_NAME} /actions/artifacts \
72
+ | jq -cr ' .artifacts
73
+ | map(select(.name == "pages" and (.workflow_run.head_branch
74
+ | test("^v[0-9]+\\.[0-9]+$"))))
75
+ | group_by(.workflow_run.head_branch)
76
+ | map(sort_by(.created_at))
77
+ | map(last)
78
+ | map({url:.archive_download_url,branch:.workflow_run.head_branch})
79
+ | .[]' \
80
+ | while read TAG_INFO
81
+ do
82
+ DOWNLOAD_URL=" $( jq -r .url <<< " $TAG_INFO" ) "
83
+ TAG=" $( jq -r .branch <<< " $TAG_INFO" | sed ' s/^v//' ) "
84
+ mkdir -p " ${WORK_DIR} /public/${TAG} "
85
+ cd " ${WORK_DIR} /public/${TAG} "
86
+ curl -H " Authorization: Bearer ${CI_PAGES_TOKEN} " -LfsSo artifacts.zip " ${DOWNLOAD_URL} "
87
+ unzip -o -d public artifacts.zip
88
+ rm artifacts.zip
89
+ while [ 1 -eq " $( find . -mindepth 1 -maxdepth 1| wc -l) " ]
90
+ do
91
+ SUBDIR=" $( find . -mindepth 1 -maxdepth 1) "
92
+ find " $SUBDIR " -mindepth 1 -maxdepth 1 -exec mv ' {}' . ' ;'
93
+ rmdir " $SUBDIR "
94
+ done
95
+ echo " <li><a href='${TAG} /'>version ${TAG} </a></li>" >> " ${WORK_DIR} /public/index.html"
96
+ done
97
+
98
+
99
+
100
+
47
101
# #######################
48
102
# # GITLAB
49
103
# #######################
72
126
then
73
127
mv public " ${WORK_DIR} /public/${STAG} "
74
128
fi
75
- echo " <li><a href='${STAG} /'>version ${STAG} </a>" >> " ${WORK_DIR} /public/index.html"
129
+ echo " <li><a href='${STAG} /'>version ${STAG} </a></li> " >> " ${WORK_DIR} /public/index.html"
76
130
cd " ${WORK_DIR} "
77
131
rm -rf " ${WORK_DIR} /${TAG} "
78
132
break
93
147
94
148
95
149
96
- # #######################
97
- # # GITHUB
98
- # #######################
99
- curl -fsS -H " Authorization: Bearer ${CI_PAGES_TOKEN} " https://api.github.com/repos/${GH_PROJECT_NAME} /actions/artifacts \
100
- | jq -cr ' .artifacts
101
- | map(select(.name == "pages" and (.workflow_run.head_branch
102
- | test("^v[0-9]+\\.[0-9]+$"))))
103
- | group_by(.workflow_run.head_branch)
104
- | map(sort_by(.created_at))
105
- | map(last)
106
- | map({url:.archive_download_url,branch:.workflow_run.head_branch})
107
- | .[]' \
108
- | while read TAG_INFO
109
- do
110
- DOWNLOAD_URL=" $( jq -r .url <<< " $TAG_INFO" ) "
111
- TAG=" $( jq -r .branch <<< " $TAG_INFO" | sed ' s/^v//' ) "
112
- cd " ${WORK_DIR} "
113
- mkdir -p " public/${TAG} "
114
- cd " public/${TAG} "
115
- curl -H " Authorization: Bearer ${CI_PAGES_TOKEN} " -LfsSo artifacts.zip " ${DOWNLOAD_URL} "
116
- unzip -o -d public artifacts.zip
117
- rm artifacts.zip
118
- while [ 1 -eq " $( find . -mindepth 1 -maxdepth 1| wc -l) " ]
119
- do
120
- SUBDIR=" $( find . -mindepth 1 -maxdepth 1) "
121
- find " $SUBDIR " -mindepth 1 -maxdepth 1 -exec mv ' {}' . ' ;'
122
- rmdir " $SUBDIR "
123
- done
124
- echo " <li><a href='${TAG} /'>version ${TAG} </a>" >> " ${WORK_DIR} /public/index.html"
125
- done
126
-
127
-
128
-
129
- if [ true = " ${INERROR} " ]
130
- then
131
- rm -rf " ${WORK_DIR} "
132
- exit 1
133
- fi
134
-
135
-
136
-
137
-
138
-
139
- mkdir -p " ${WORK_DIR} /main"
140
- cd " ${WORK_DIR} /main"
141
-
142
- DOWNLOAD_URL=$( curl -fsS -H " Authorization: Bearer ${CI_PAGES_TOKEN} " https://api.github.com/repos/${GH_PROJECT_NAME} /actions/artifacts \
143
- | jq -r ' .artifacts
144
- | map(select(.workflow_run.head_branch=="main" and .name == "pages"))
145
- | sort_by(.created_at)
146
- | last
147
- | .archive_download_url' )
148
- curl -H " Authorization: Bearer ${CI_PAGES_TOKEN} " -LfsSo artifacts.zip " ${DOWNLOAD_URL} "
149
- unzip -o -d public artifacts.zip
150
- rm artifacts.zip
151
- if [ -d " public/main" ]
152
- then
153
- mv " public/main" " ${WORK_DIR} /public/"
154
- elif [ -d " main" ]
155
- then
156
- mv " main" " ${WORK_DIR} /public/"
157
- elif [ -d " public" ]
158
- then
159
- mv public " main"
160
- mv " main" " ${WORK_DIR} /public/"
161
- fi
162
- cd " ${WORK_DIR} "
163
- rm -rf " ${WORK_DIR} /main"
164
-
165
-
166
150
cat << EOF >> "${WORK_DIR} /public/index.html"
167
- <li><a href='main/'>latest from GIT</a>
168
151
</ul>
169
152
</body>
170
153
EOF
171
154
155
+
172
156
mv " ${WORK_DIR} /public" /* " ${DEPLOY_DIR} "
0 commit comments