@@ -74,17 +74,16 @@ jobs:
7474 OUTPUT_VAR_NAME : DEPS_COMPILER_ARGS
7575 run : |
7676 handleDep() {
77- local dep="$1"
78- echo "dep: '$dep'"
77+ echo "dep: '$1'"
7978
80- local REPO="${dep %%@*}"
79+ REPO="${1 %%@*}"
8180 echo "- REPO='$REPO'"
8281
83- local TAG="${dep #*@}"
82+ TAG="${1 #*@}"
8483 TAG="${TAG%%:*}"
8584 echo "- TAG='$TAG'"
8685
87- local OVERRIDE_INCLUDE_PATH="${TAG#*:}"
86+ OVERRIDE_INCLUDE_PATH="${TAG#*:}"
8887 echo "- OVERRIDE_INCLUDE_PATH='$OVERRIDE_INCLUDE_PATH'"
8988
9089
@@ -93,53 +92,45 @@ jobs:
9392 exit 1
9493 fi
9594
96- local INIT_PWD=$(pwd)
97- mkdir -p dep/" ${REPO}"
98- cd dep/" ${REPO}"
95+ INIT_PWD=$(pwd)
96+ mkdir -p dep/${REPO}
97+ cd dep/${REPO}
9998
10099 if [ -z "$2" ]; then
101- TAG=$( curl --silent " https://api.github.com/repos/${REPO}/releases/latest" | jq -r .tag_name)
100+ TAG=` curl --silent https://api.github.com/repos/${REPO}/releases/latest | jq .tag_name -r`
102101 else
103- TAG="$2"
102+ TAG=$2
104103 fi
105104
106- echo "Downloading tag: $TAG"
105+ wget https://github.com/${REPO}/archive/refs/tags/${TAG}.zip
106+ 7z x ${TAG}.zip
107107
108- wget "https://github.com/ ${REPO}/archive/refs/tags/${TAG}.zip"
109- 7z x "${ TAG}.zip"
108+ REPO_NAME=`echo " ${REPO}" | grep -Po '(?<=\/).+'`
109+ INCLUDE_PATH='$(pwd)/${REPO_NAME}-${ TAG}/${OVERRIDE_INCLUDE_PATH:-amxmodx/scripting/include}'
110110
111- # Безопасный REPO_NAME без grep -P
112- local REPO_NAME="${REPO#*/}"
113- echo "- REPO_NAME='$REPO_NAME'"
111+ echo "-i\"${INCLUDE_PATH}\""
114112
115- local INCLUDE_PATH="$(pwd)/${REPO_NAME}-${TAG}/${OVERRIDE_INCLUDE_PATH:-amxmodx/scripting/include}"
116- echo "- INCLUDE_PATH='$INCLUDE_PATH'"
117-
118- # Возвращаем путь для аппенда
119- echo "-i\\\"${INCLUDE_PATH}\\\""
120-
121- cd "$INIT_PWD"
122- echo "\n\n"
113+ cd $INIT_PWD
123114 }
124- export -f handleDep
125115
126- # Инициализируем локальную переменную
127- local_args =""
116+ # Собираем все аргументы в локальную переменную
117+ DEPS_COMPILER_ARGS =""
128118
129- deps=$(echo " ${DEPS_LIST}" | tr ";" "\n")
119+ deps=$(echo ${DEPS_LIST} | tr ";" "\n")
130120 echo "deps: \n${deps}"
131- echo "\n\n"
121+ echo "-"
122+ echo "-"
123+
124+ for dep in $deps
125+ do
126+ # Вызываем функцию, но перенаправляем её вывод в локальную переменную
127+ path_arg=$(handleDep "$dep" | grep -o ' -i\\".*\\"')
128+ DEPS_COMPILER_ARGS="${DEPS_COMPILER_ARGS} ${path_arg}"
129+ done
132130
133- while IFS= read -r dep; do
134- if [ -n "$dep" ]; then
135- path_arg=$(handleDep "$dep")
136- local_args="${local_args} ${path_arg}"
137- fi
138- done <<< "$deps"
139-
140- # Записываем один раз в env
141- echo "$OUTPUT_VAR_NAME=\"$local_args\"" >> $GITHUB_ENV
142- echo "Final $OUTPUT_VAR_NAME: $local_args"
131+ # Записываем финальную переменную
132+ echo "${OUTPUT_VAR_NAME}=\"${DEPS_COMPILER_ARGS}\"" >> $GITHUB_ENV
133+ echo "Final ${OUTPUT_VAR_NAME}: ${DEPS_COMPILER_ARGS}"
143134
144135 - name : Setup AMXXPawn Compiler
145136 uses : wopox1337/setup-amxxpawn@v1.1.0
0 commit comments