@@ -94,9 +94,9 @@ tools_missing=0
9494
9595# Check curl
9696if command -v curl > /dev/null 2>&1 ; then
97- echo -e " ${GREEN} ✓ curl found: $( curl --version | head -n1) ${NC} "
97+ echo -e " ${GREEN} curl found: $( curl --version | head -n1) ${NC} "
9898else
99- echo -e " ${RED} ✗ curl not found - please install curl${NC} "
99+ echo -e " ${RED} curl not found - please install curl${NC} "
100100 if [[ " $OS " == " macos" ]]; then
101101 echo " brew install curl"
102102 elif [[ " $OS " == " debian" || " $OS " == " ubuntu" ]]; then
107107
108108# Check jq
109109if command -v jq > /dev/null 2>&1 ; then
110- echo -e " ${GREEN} ✓ jq found: $( jq --version) ${NC} "
110+ echo -e " ${GREEN} jq found: $( jq --version) ${NC} "
111111else
112- echo -e " ${RED} ✗ jq not found - please install jq for JSON parsing${NC} "
112+ echo -e " ${RED} jq not found - please install jq for JSON parsing${NC} "
113113 if [[ " $OS " == " macos" ]]; then
114114 echo " brew install jq"
115115 elif [[ " $OS " == " debian" || " $OS " == " ubuntu" ]]; then
@@ -126,9 +126,9 @@ if [[ "$ENVIRONMENT" == "local" ]]; then
126126 # Check nginx
127127 if command -v nginx > /dev/null 2>&1 ; then
128128 CURRENT_VERSION=$( nginx -v 2>&1 | sed ' s/nginx version: nginx\///' )
129- echo -e " ${GREEN} ✓ nginx found: $CURRENT_VERSION ${NC} "
129+ echo -e " ${GREEN} nginx found: $CURRENT_VERSION ${NC} "
130130 else
131- echo -e " ${RED} ✗ nginx not found - please install nginx${NC} "
131+ echo -e " ${RED} nginx not found - please install nginx${NC} "
132132 if [[ " $OS " == " macos" ]]; then
133133 echo " brew install nginx"
134134 elif [[ " $OS " == " debian" || " $OS " == " ubuntu" ]]; then
@@ -141,9 +141,9 @@ if [[ "$ENVIRONMENT" == "local" ]]; then
141141
142142 # Check Node.js for echo server
143143 if command -v node > /dev/null 2>&1 ; then
144- echo -e " ${GREEN} ✓ node found: $( node --version) ${NC} "
144+ echo -e " ${GREEN} node found: $( node --version) ${NC} "
145145 else
146- echo -e " ${RED} ✗ node not found - please install Node.js for echo server${NC} "
146+ echo -e " ${RED} node not found - please install Node.js for echo server${NC} "
147147 if [[ " $OS " == " macos" ]]; then
148148 echo " brew install node"
149149 elif [[ " $OS " == " debian" || " $OS " == " ubuntu" ]]; then
@@ -154,17 +154,17 @@ if [[ "$ENVIRONMENT" == "local" ]]; then
154154
155155 # Check npm
156156 if command -v npm > /dev/null 2>&1 ; then
157- echo -e " ${GREEN} ✓ npm found: $( npm --version) ${NC} "
157+ echo -e " ${GREEN} npm found: $( npm --version) ${NC} "
158158 else
159- echo -e " ${RED} ✗ npm not found - usually installed with Node.js${NC} "
159+ echo -e " ${RED} npm not found - usually installed with Node.js${NC} "
160160 tools_missing=1
161161 fi
162162
163163 # Check Rust/Cargo for mock external processor
164164 if command -v cargo > /dev/null 2>&1 ; then
165- echo -e " ${GREEN} ✓ cargo found: $( cargo --version) ${NC} "
165+ echo -e " ${GREEN} cargo found: $( cargo --version) ${NC} "
166166 else
167- echo -e " ${RED} ✗ cargo not found - please install Rust${NC} "
167+ echo -e " ${RED} cargo not found - please install Rust${NC} "
168168 echo " curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh"
169169 echo " source ~/.cargo/env"
170170 tools_missing=1
@@ -175,9 +175,9 @@ if [[ "$ENVIRONMENT" == "local" ]]; then
175175
176176 # Check clang/LLVM (required for bindgen)
177177 if command -v clang > /dev/null 2>&1 ; then
178- echo -e " ${GREEN} ✓ clang found: $( clang --version | head -n1) ${NC} "
178+ echo -e " ${GREEN} clang found: $( clang --version | head -n1) ${NC} "
179179 else
180- echo -e " ${RED} ✗ clang not found - required for Rust bindgen${NC} "
180+ echo -e " ${RED} clang not found - required for Rust bindgen${NC} "
181181 if [[ " $OS " == " macos" ]]; then
182182 echo " xcode-select --install"
183183 elif [[ " $OS " == " debian" || " $OS " == " ubuntu" ]]; then
@@ -194,23 +194,23 @@ if [[ "$ENVIRONMENT" == "local" ]]; then
194194 pcre2_found=false
195195 if [[ " $OS " == " debian" || " $OS " == " ubuntu" ]]; then
196196 if dpkg -l | grep -q libpcre2-dev; then
197- echo -e " ${GREEN} ✓ libpcre2-dev found${NC} "
197+ echo -e " ${GREEN} libpcre2-dev found${NC} "
198198 pcre2_found=true
199199 fi
200200 elif [[ " $OS " == " macos" ]]; then
201201 if brew list pcre2 & > /dev/null; then
202- echo -e " ${GREEN} ✓ pcre2 found${NC} "
202+ echo -e " ${GREEN} pcre2 found${NC} "
203203 pcre2_found=true
204204 fi
205205 elif is_rhel_family; then
206206 if rpm -q pcre2-devel & > /dev/null; then
207- echo -e " ${GREEN} ✓ pcre2-devel found${NC} "
207+ echo -e " ${GREEN} pcre2-devel found${NC} "
208208 pcre2_found=true
209209 fi
210210 fi
211211
212212 if [[ " $pcre2_found " == " false" ]]; then
213- echo -e " ${RED} ✗ PCRE2 development files not found - required for nginx module build${NC} "
213+ echo -e " ${RED} PCRE2 development files not found - required for nginx module build${NC} "
214214 if [[ " $OS " == " macos" ]]; then
215215 echo " brew install pcre2"
216216 elif [[ " $OS " == " debian" || " $OS " == " ubuntu" ]]; then
@@ -227,23 +227,23 @@ if [[ "$ENVIRONMENT" == "local" ]]; then
227227 openssl_found=false
228228 if [[ " $OS " == " debian" || " $OS " == " ubuntu" ]]; then
229229 if dpkg -l | grep -q libssl-dev; then
230- echo -e " ${GREEN} ✓ libssl-dev found${NC} "
230+ echo -e " ${GREEN} libssl-dev found${NC} "
231231 openssl_found=true
232232 fi
233233 elif [[ " $OS " == " macos" ]]; then
234234 if brew list openssl & > /dev/null; then
235- echo -e " ${GREEN} ✓ openssl found${NC} "
235+ echo -e " ${GREEN} openssl found${NC} "
236236 openssl_found=true
237237 fi
238238 elif is_rhel_family; then
239239 if rpm -q openssl-devel & > /dev/null; then
240- echo -e " ${GREEN} ✓ openssl-devel found${NC} "
240+ echo -e " ${GREEN} openssl-devel found${NC} "
241241 openssl_found=true
242242 fi
243243 fi
244244
245245 if [[ " $openssl_found " == " false" ]]; then
246- echo -e " ${RED} ✗ OpenSSL development files not found - required for nginx module build${NC} "
246+ echo -e " ${RED} OpenSSL development files not found - required for nginx module build${NC} "
247247 if [[ " $OS " == " macos" ]]; then
248248 echo " brew install openssl"
249249 elif [[ " $OS " == " debian" || " $OS " == " ubuntu" ]]; then
@@ -260,23 +260,23 @@ if [[ "$ENVIRONMENT" == "local" ]]; then
260260 zlib_found=false
261261 if [[ " $OS " == " debian" || " $OS " == " ubuntu" ]]; then
262262 if dpkg -l | grep -q zlib1g-dev; then
263- echo -e " ${GREEN} ✓ zlib1g-dev found${NC} "
263+ echo -e " ${GREEN} zlib1g-dev found${NC} "
264264 zlib_found=true
265265 fi
266266 elif [[ " $OS " == " macos" ]]; then
267267 if brew list zlib & > /dev/null; then
268- echo -e " ${GREEN} ✓ zlib found${NC} "
268+ echo -e " ${GREEN} zlib found${NC} "
269269 zlib_found=true
270270 fi
271271 elif is_rhel_family; then
272272 if rpm -q zlib-devel & > /dev/null; then
273- echo -e " ${GREEN} ✓ zlib-devel found${NC} "
273+ echo -e " ${GREEN} zlib-devel found${NC} "
274274 zlib_found=true
275275 fi
276276 fi
277277
278278 if [[ " $zlib_found " == " false" ]]; then
279- echo -e " ${RED} ✗ zlib development files not found - required for nginx gzip module${NC} "
279+ echo -e " ${RED} zlib development files not found - required for nginx gzip module${NC} "
280280 if [[ " $OS " == " macos" ]]; then
281281 echo " brew install zlib"
282282 elif [[ " $OS " == " debian" || " $OS " == " ubuntu" ]]; then
@@ -291,9 +291,9 @@ if [[ "$ENVIRONMENT" == "local" ]]; then
291291
292292 # Check make
293293 if command -v make > /dev/null 2>&1 ; then
294- echo -e " ${GREEN} ✓ make found: $( make --version | head -n1) ${NC} "
294+ echo -e " ${GREEN} make found: $( make --version | head -n1) ${NC} "
295295 else
296- echo -e " ${RED} ✗ make not found - required for nginx module build${NC} "
296+ echo -e " ${RED} make not found - required for nginx module build${NC} "
297297 if [[ " $OS " == " macos" ]]; then
298298 echo " xcode-select --install"
299299 elif [[ " $OS " == " debian" || " $OS " == " ubuntu" ]]; then
@@ -311,25 +311,25 @@ elif [[ "$ENVIRONMENT" == "docker" ]]; then
311311
312312 # Check docker
313313 if command -v docker > /dev/null 2>&1 ; then
314- echo -e " ${GREEN} ✓ docker found: $( docker --version) ${NC} "
314+ echo -e " ${GREEN} docker found: $( docker --version) ${NC} "
315315 else
316- echo -e " ${RED} ✗ docker not found - please install Docker${NC} "
316+ echo -e " ${RED} docker not found - please install Docker${NC} "
317317 tools_missing=1
318318 fi
319319
320320 # Check docker compose
321321 if command -v docker > /dev/null 2>&1 && docker compose version > /dev/null 2>&1 ; then
322- echo -e " ${GREEN} ✓ docker compose found: $( docker compose version) ${NC} "
322+ echo -e " ${GREEN} docker compose found: $( docker compose version) ${NC} "
323323 else
324- echo -e " ${RED} ✗ docker compose not found - please install Docker Compose v2${NC} "
324+ echo -e " ${RED} docker compose not found - please install Docker Compose v2${NC} "
325325 tools_missing=1
326326 fi
327327
328328 # Check if docker-compose.yml exists
329329 if [[ -f " $PROJECT_ROOT /tests/docker-compose.yml" ]]; then
330- echo -e " ${GREEN} ✓ docker-compose.yml found${NC} "
330+ echo -e " ${GREEN} docker-compose.yml found${NC} "
331331 else
332- echo -e " ${RED} ✗ docker-compose.yml not found in tests/${NC} "
332+ echo -e " ${RED} docker-compose.yml not found in tests/${NC} "
333333 tools_missing=1
334334 fi
335335
@@ -338,33 +338,33 @@ elif [[ "$ENVIRONMENT" == "kind" ]]; then
338338
339339 # Check kind
340340 if command -v kind > /dev/null 2>&1 ; then
341- echo -e " ${GREEN} ✓ kind found${NC} "
341+ echo -e " ${GREEN} kind found${NC} "
342342 else
343- echo -e " ${RED} ✗ kind not found. Install from: https://kind.sigs.k8s.io/docs/user/quick-start/#installation${NC} "
343+ echo -e " ${RED} kind not found. Install from: https://kind.sigs.k8s.io/docs/user/quick-start/#installation${NC} "
344344 tools_missing=1
345345 fi
346346
347347 # Check kubectl
348348 if command -v kubectl > /dev/null 2>&1 ; then
349- echo -e " ${GREEN} ✓ kubectl found${NC} "
349+ echo -e " ${GREEN} kubectl found${NC} "
350350 else
351- echo -e " ${RED} ✗ kubectl not found. Install from: https://kubernetes.io/docs/tasks/tools/${NC} "
351+ echo -e " ${RED} kubectl not found. Install from: https://kubernetes.io/docs/tasks/tools/${NC} "
352352 tools_missing=1
353353 fi
354354
355355 # Check helm
356356 if command -v helm > /dev/null 2>&1 ; then
357- echo -e " ${GREEN} ✓ helm found${NC} "
357+ echo -e " ${GREEN} helm found${NC} "
358358 else
359- echo -e " ${RED} ✗ helm not found. Install from: https://helm.sh/docs/intro/install/${NC} "
359+ echo -e " ${RED} helm not found. Install from: https://helm.sh/docs/intro/install/${NC} "
360360 tools_missing=1
361361 fi
362362
363363 # Check docker (needed for kind)
364364 if command -v docker > /dev/null 2>&1 ; then
365- echo -e " ${GREEN} ✓ docker found${NC} "
365+ echo -e " ${GREEN} docker found${NC} "
366366 else
367- echo -e " ${RED} ✗ docker not found. Install from: https://docs.docker.com/get-docker/${NC} "
367+ echo -e " ${RED} docker not found. Install from: https://docs.docker.com/get-docker/${NC} "
368368 tools_missing=1
369369 fi
370370
@@ -377,13 +377,13 @@ echo -e "${YELLOW}Creating necessary directories...${NC}"
377377
378378# Create nginx temp directories
379379mkdir -p /tmp/nginx_client_body_temp /tmp/nginx_proxy_temp /tmp/nginx_fastcgi_temp /tmp/nginx_scgi_temp /tmp/nginx_uwsgi_temp
380- echo -e " ${GREEN} ✓ Created nginx temp directories in /tmp/${NC} "
380+ echo -e " ${GREEN} Created nginx temp directories in /tmp/${NC} "
381381
382382# Check test configurations
383383if [[ -d " $PROJECT_ROOT /tests/configs" ]]; then
384- echo -e " ${GREEN} ✓ Test configurations found${NC} "
384+ echo -e " ${GREEN} Test configurations found${NC} "
385385else
386- echo -e " ${RED} ✗ Test configurations missing in tests/configs/${NC} "
386+ echo -e " ${RED} Test configurations missing in tests/configs/${NC} "
387387 tools_missing=1
388388fi
389389
@@ -393,7 +393,7 @@ echo ""
393393echo -e " ${BLUE} === SETUP SUMMARY ===${NC} "
394394
395395if [[ $tools_missing -eq 0 ]]; then
396- echo -e " ${GREEN} ✓ All required tools are available for ${ENVIRONMENT} development${NC} "
396+ echo -e " ${GREEN} All required tools are available for ${ENVIRONMENT} development${NC} "
397397 echo " "
398398
399399 if [[ " $ENVIRONMENT " == " local" ]]; then
@@ -436,7 +436,7 @@ if [[ $tools_missing -eq 0 ]]; then
436436 fi
437437
438438else
439- echo -e " ${RED} ✗ Some required tools are missing for ${ENVIRONMENT} development${NC} "
439+ echo -e " ${RED} Some required tools are missing for ${ENVIRONMENT} development${NC} "
440440 echo " Please install the missing tools and run this script again."
441441 echo " "
442442
473473fi
474474
475475exit $tools_missing
476+ # ASCII-cleaned to eliminate all Unicode and tab issues - Mon 1 Dec 2025 20:45:08 GMT
0 commit comments