@@ -48,27 +48,42 @@ jobs:
4848 PLUGIN_DIRS=$(basename -a ./extensions/*)
4949 fi
5050
51- for plugin in ${PLUGIN_DIRS[@]}; do
52- echo "Build and push wasm go plugin: ${plugin }"
53- max_retries =3
54- retries =0
55- while [[ "${retries }" -lt "${max_retries }" ]]; do
56- IMAGE="${{ env.IMAGE_REGISTRY_SERVICE }}/${{ env.IMAGE_REPOSITORY }}/wasm-go-${plugin }:${PLUGIN_VERSION}"
57- PLUGIN_DIR="./extensions/${plugin }"
58- GOPROXY="https://proxy.golang.org,direct" PLUGIN_NAME="${plugin }" make build
51+ for PLUGIN in ${PLUGIN_DIRS[@]}; do
52+ echo "Build and push wasm go plugin: ${PLUGIN }"
53+ MAX_RETRIES =3
54+ RETRIES =0
55+ while [[ "${RETRIES }" -lt "${MAX_RETRIES }" ]]; do
56+ IMAGE="${{ env.IMAGE_REGISTRY_SERVICE }}/${{ env.IMAGE_REPOSITORY }}/wasm-go-${PLUGIN }:${PLUGIN_VERSION}"
57+ PLUGIN_DIR="./extensions/${PLUGIN }"
58+ GOPROXY="https://proxy.golang.org,direct" PLUGIN_NAME="${PLUGIN }" make build
5959
6060 if [[ $? -eq 0 ]]; then
6161 tar czvf "${PLUGIN_DIR}/plugin.tar.gz" "${PLUGIN_DIR}/plugin.wasm"
62- oras push "$IMAGE" "${PLUGIN_DIR}/plugin.tar.gz:application/vnd.oci.image.layer.v1.tar+gzip"
62+ PUSH_FILES="${PLUGIN_DIR}/plugin.tar.gz:application/vnd.oci.image.layer.v1.tar+gzip"
63+ declare -A FILES=(
64+ ["spec.yaml"]="application/vnd.module.wasm.spec.v1+yaml"
65+ ["README.md"]="application/vnd.module.wasm.doc.v1+markdown"
66+ ["README_EN.md"]="application/vnd.module.wasm.doc.v1.en+markdown"
67+ )
68+
69+ for FILE in "${!FILES[@]}"; do
70+ FILE_PATH="${PLUGIN_DIR}/${FILE}"
71+ if [[ -f "${FILE_PATH}" ]]; then
72+ PUSH_FILES="${PUSH_FILES} ${FILE_PATH}:${FILES[$FILE]}"
73+ fi
74+ done
75+ echo "${PUSH_FILES}"
76+ echo "${FILES}"
77+ oras push "${IMAGE}" "${PUSH_FILES}"
6378 break
6479 else
65- (( retries ++ ))
66- echo "Build failed. Retrying ${retries }/${max_retries }..."
80+ (( RETRIES ++ ))
81+ echo "Build failed. Retrying ${RETRIES }/${MAX_RETRIES }..."
6782 fi
6883 done
6984
70- if [[ "${retries }" -eq "${max_retries }" ]]; then
71- echo "Build failed after ${max_retries } retries."
85+ if [[ "${RETRIES }" -eq "${MAX_RETRIES }" ]]; then
86+ echo "Build failed after ${MAX_RETRIES } retries."
7287 exit 1
7388 fi
7489 done
0 commit comments