On my build I have a UI test code to execute after my web widget is fullu initialized.
So, I have to wait for my widget services to be live.
I try to query this service with wget . However wget returns exit code as 8 if my service is fully accessible. I try to set exit code to 0 with below logic. But not able to set it to 0 as circle ci still gets exit code as 8
- run:
background: true
command: java -jar target/chatbot.jar
- run: |
wget --waitretry=5 --retry-connrefused --tries=12 -v http://localhost:3011/
RESULT="$?"
if [[ "$RESULT" = "8" ]]; then exit 0
fi
- run:
name: Integration Test
command: testcafe chrome:headless test/integration/*.js
Hi @nesatuf and welcome to the developer’s forum!
To recap, you would like the exit 8 to translate to an exit 0, but the job is still exiting with code 8. Is that correct?
This is most likely happening because the job ends after a non-0 exit code. So that means when this command wget --waitretry=5 --retry-connrefused --tries=12 -v http://localhost:3011/ returns an exit 8, the job ends and it does not continue to the “RESULT” command.
We do currently have a feature request open to allow for additional exit codes: https://ideas.circleci.com/ideas/CCI-I-955
Our product managers review feature requests regularly, and if a request that you voted on has been implemented as a feature, you will automatically receive an e-mail updating you.
For future reference to others;
Run your code at once like below:
bash -c “wget --waitretry=5 --retry-connrefused --tries=12 -v http://localhost:3011/; if [[ $? -eq 8 ]] ; then exit 0 ; else exit 1 ; fi”