diff --git a/.github/workflows/push.yml b/.github/workflows/push.yml index 5dc1c427..daa2b3ff 100644 --- a/.github/workflows/push.yml +++ b/.github/workflows/push.yml @@ -243,17 +243,19 @@ jobs: - name: Check Wazuh manager start run: | for NODE in "${{ env.MANAGER_NODES }}"; do - services="`curl -k -s -X GET "https://0.0.0.0:55000/cluster/$NODE/status?pretty=true" -H "Authorization: Bearer ${{env.TOKEN}}" | jq -r .data.affected_items | grep running | wc -l`" - if [[ $services -gt 9 ]]; then - echo "Wazuh Manager $NODE Services: ${services}" - echo "OK" - else - curl -k -X GET "https://0.0.0.0:55000/cluster/$NODE/status?pretty=true" -H "Authorization: Bearer ${{env.TOKEN}}" | jq -r .data.affected_items - exit 1 - fi + for i in {1..20}; do + TOKEN=$(curl -s -u ${{ env.API_USERNAME }}:${{ env.API_PASSWORD }} -k -X GET "https://0.0.0.0:55000/security/user/authenticate?raw=true") + services="`curl -k -s -X GET "https://0.0.0.0:55000/cluster/$NODE/status?pretty=true" -H "Authorization: Bearer ${{env.TOKEN}}" | jq -r .data.affected_items | grep running | wc -l`" + if [[ $services -gt 9 ]]; then + echo "Wazuh Manager $NODE Services: ${services}" + echo "OK" + else + curl -k -X GET "https://0.0.0.0:55000/cluster/$NODE/status?pretty=true" -H "Authorization: Bearer ${{env.TOKEN}}" | jq -r .data.affected_items + echo "Wazuh Manager $NODE Services: ${services}. Retrying in 30s" + [ $i -lt 20 ] && sleep 30 + fi + done done - env: - TOKEN: $(curl -s -u ${{ env.API_USERNAME }}:${{ env.API_PASSWORD }} -k -X GET "https://0.0.0.0:55000/security/user/authenticate?raw=true") - name: Check Wazuh dashboard service URL run: | @@ -478,17 +480,19 @@ jobs: run: | IFS=',' for NODE in "${{ env.MANAGER_NODES }}"; do - services="`curl -k -s -X GET "https://0.0.0.0:55000/cluster/$NODE/status?pretty=true" -H "Authorization: Bearer ${{env.TOKEN}}" | jq -r .data.affected_items | grep running | wc -l`" - if [[ $services -gt 9 ]]; then - echo "Wazuh Manager $NODE Services: ${services}" - echo "OK" - else - curl -k -X GET "https://0.0.0.0:55000/cluster/$NODE/status?pretty=true" -H "Authorization: Bearer ${{env.TOKEN}}" | jq -r .data.affected_items - exit 1 - fi + for i in {1..20}; do + TOKEN=$(curl -s -u ${{ env.API_USERNAME }}:${{ env.API_PASSWORD }} -k -X GET "https://0.0.0.0:55000/security/user/authenticate?raw=true") + services="`curl -k -s -X GET "https://0.0.0.0:55000/cluster/$NODE/status?pretty=true" -H "Authorization: Bearer ${{env.TOKEN}}" | jq -r .data.affected_items | grep running | wc -l`" + if [[ $services -gt 9 ]]; then + echo "Wazuh Manager $NODE Services: ${services}" + echo "OK" + else + curl -k -X GET "https://0.0.0.0:55000/cluster/$NODE/status?pretty=true" -H "Authorization: Bearer ${{env.TOKEN}}" | jq -r .data.affected_items + echo "Wazuh Manager $NODE Services: ${services}. Retrying in 30s" + [ $i -lt 20 ] && sleep 30 + fi + done done - env: - TOKEN: $(curl -s -u ${{ env.API_USERNAME }}:${{ env.API_PASSWORD }} -k -X GET "https://0.0.0.0:55000/security/user/authenticate?raw=true") - name: Check Wazuh dashboard service URL run: |