@@ -17,6 +17,14 @@ GITLAB_URL="$2"
17
17
18
18
PROJECT_NAME=" $3 "
19
19
20
+ set +x
21
+ if [ -z ${CI_PAGES_TOKEN} ]
22
+ then
23
+ echo " CI_PAGES_TOKEN is unset"
24
+ exit 1
25
+ fi
26
+ set -ex
27
+
20
28
cd " $( mktemp -t -d WEB_DEPLOY.tmdir.XXXXXXXXXXXX || exit 1) "
21
29
WORK_DIR=" ${PWD} "
22
30
trap " cd '${DEPLOY_DIR} '; rm -rf '${WORK_DIR} '" EXIT
@@ -35,6 +43,10 @@ cat << EOF > "${WORK_DIR}/public/index.html"
35
43
<ul>
36
44
EOF
37
45
46
+
47
+ # #######################
48
+ # # GITLAB
49
+ # #######################
38
50
INERROR=true
39
51
ALLTAGS=" $( curl -fs " ${GITLAB_URL} /api/v4/projects/${PROJECT_NAME} /repository/tags" | tr ' ,' ' \n' | grep ' "name"' | tr ' "' ' ' | awk ' {print $4}' | grep ' ^[0-9]*\.[0-9]*\.[0-9]*$' | sort -rVu) "
40
52
for TAG_BASE in $( echo " ${ALLTAGS} " | sed ' s/^\([0-9]*\.[0-9]*\.\)[0-9]*$/\1/' | sort -rVu)
80
92
81
93
82
94
83
- mkdir -p " ${WORK_DIR} /master"
84
- cd " ${WORK_DIR} /master"
85
- curl -fso artifacts.zip " ${GITLAB_URL} /api/v4/projects/${PROJECT_NAME} /jobs/artifacts/master/download?job=pages"
86
- unzip -o artifacts.zip
95
+
96
+ # #######################
97
+ # # GITHUB
98
+ # #######################
99
+ # INERROR=true
100
+ # ALLTAGS="$(curl -H "Authorization: Bearer ${CI_PAGES_TOKEN}" -fs "https://api.github.com/repos/${PROJECT_NAME}/tags" | tr ',' '\n' | grep '"name"' | tr '"' ' ' | awk '{print $3}' | grep '^[0-9]*\.[0-9]*\.[0-9]*-gh$' | sort -rVu)"
101
+ # for TAG_BASE in $(echo "${ALLTAGS}" | sed 's/^\([0-9]*\.[0-9]*\.\)[0-9]*-gh$/\1/' | sort -rVu)
102
+ # do
103
+ # for TAG in $(echo "${ALLTAGS}" | fgrep "${TAG_BASE}" | sort -rVu)
104
+ # do
105
+ # cd "${WORK_DIR}"
106
+ # mkdir -p "${TAG}"
107
+ # cd "${TAG}"
108
+ # if curl -Lfso artifacts.zip "https://api.github.com/repos/${PROJECT_NAME}/zipball/refs/tags/${TAG}"
109
+ # then
110
+ # INERROR=false
111
+ # STAG="$(echo "${TAG}" | sed 's/\.[0-9]*$//')"
112
+ # unzip -o -d public artifacts.zip
113
+ # rm artifacts.zip
114
+ # if [ -d "public/${TAG}" ]
115
+ # then
116
+ # mv "public/${TAG}" "${WORK_DIR}/public/${STAG}"
117
+ # elif [ -d "${TAG}" ]
118
+ # then
119
+ # mv "${TAG}" "${WORK_DIR}/public/${STAG}"
120
+ # elif [ -d "public" ]
121
+ # then
122
+ # mv public "${WORK_DIR}/public/${STAG}"
123
+ # fi
124
+ # echo "<li><a href='${STAG}/'>version ${STAG}</a>" >> "${WORK_DIR}/public/index.html"
125
+ # cd "${WORK_DIR}"
126
+ # rm -rf "${WORK_DIR}/${TAG}"
127
+ # break
128
+ # fi
129
+ # cd "${WORK_DIR}"
130
+ # rm -rf "${WORK_DIR}/${TAG}"
131
+ # done
132
+ # done
133
+
134
+
135
+
136
+ # if [ true = "${INERROR}" ]
137
+ # then
138
+ # rm -rf "${WORK_DIR}"
139
+ # exit 1
140
+ # fi
141
+ #
142
+ #
143
+ #
144
+
145
+
146
+ mkdir -p " ${WORK_DIR} /main"
147
+ cd " ${WORK_DIR} /main"
148
+
149
+ DOWNLOAD_URL=$( curl -fs -H " Authorization: Bearer ${CI_PAGES_TOKEN} " https://api.github.com/repos/pdidev/pdi/actions/artifacts | jq -r ' .artifacts | .[] | select(.workflow_run.head_branch=="main") | .archive_download_url' )
150
+ curl -H " Authorization: Bearer ${CI_PAGES_TOKEN} " -Lfso artifacts.zip " ${DOWNLOAD_URL} "
151
+ unzip -o -d public artifacts.zip
87
152
rm artifacts.zip
88
- if [ -d " public/master " ]
153
+ if [ -d " public/main " ]
89
154
then
90
- mv " public/master " " ${WORK_DIR} /public/"
91
- elif [ -d " master " ]
155
+ mv " public/main " " ${WORK_DIR} /public/"
156
+ elif [ -d " main " ]
92
157
then
93
- mv " master " " ${WORK_DIR} /public/"
158
+ mv " main " " ${WORK_DIR} /public/"
94
159
elif [ -d " public" ]
95
160
then
96
- mv public " master "
97
- mv " master " " ${WORK_DIR} /public/"
161
+ mv public " main "
162
+ mv " main " " ${WORK_DIR} /public/"
98
163
fi
99
164
cd " ${WORK_DIR} "
100
- rm -rf " ${WORK_DIR} /master "
165
+ rm -rf " ${WORK_DIR} /main "
101
166
102
167
103
168
cat << EOF >> "${WORK_DIR} /public/index.html"
104
- <li><a href='master /'>latest from GIT</a>
169
+ <li><a href='main /'>latest from GIT</a>
105
170
</ul>
106
171
</body>
107
172
EOF
0 commit comments