Skip to content

Commit

Permalink
docker: allow soft failure when running controller start/stop
Browse files Browse the repository at this point in the history
  • Loading branch information
saltydk committed Jul 22, 2024
1 parent 9cd456b commit 3f1a9a3
Show file tree
Hide file tree
Showing 3 changed files with 40 additions and 10 deletions.
25 changes: 20 additions & 5 deletions resources/tasks/docker/start_saltbox_docker_containers.yml
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@
---
- name: Start Saltbox Docker Containers
ansible.builtin.uri:
url: "{{ docker_controller_url }}/start{{ _query_var if _query_var is defined else '' }}"
url: "{{ docker_controller_url }}/start{{ query_var if query_var is defined else '' }}"
method: POST
register: start_docker_controller_job
ignore_errors: true
Expand All @@ -22,11 +22,26 @@
until: start_job_status.json.status in ['completed', 'failed']
retries: 120
delay: 5
when: start_docker_controller_job is success
when:
- start_docker_controller_job is success
- start_docker_controller_job.json.job_id is defined
ignore_errors: true

- name: Check job status
- name: Check job status (new version)
ansible.builtin.debug:
msg: "Failed starting Saltbox Docker containers"
msg: "Status of starting Saltbox Docker containers: {{ start_job_status.json.status | default('unknown') }}"
when:
- start_docker_controller_job is success
- start_job_status.json.status == 'failed'
- start_docker_controller_job.json.job_id is defined

- name: Check operation status (old version)
ansible.builtin.debug:
msg: "Status of starting Saltbox Docker containers: {{ start_docker_controller_job.json.message | default('unknown') }}"
when:
- start_docker_controller_job is success
- start_docker_controller_job.json.job_id is not defined

- name: Check for operation failure
ansible.builtin.debug:
msg: "Failed to start Saltbox Docker containers"
when: start_docker_controller_job is failed
23 changes: 19 additions & 4 deletions resources/tasks/docker/stop_saltbox_docker_containers.yml
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@
---
- name: Stop Saltbox Docker Containers
ansible.builtin.uri:
url: "{{ docker_controller_url }}/stop{{ _query_var if _query_var is defined else '' }}"
url: "{{ docker_controller_url }}/stop{{ query_var if query_var is defined else '' }}"
method: POST
register: stop_docker_controller_job
ignore_errors: true
Expand All @@ -22,11 +22,26 @@
until: stop_job_status.json.status in ['completed', 'failed']
retries: 120
delay: 5
when: stop_docker_controller_job is success
when:
- stop_docker_controller_job is success
- stop_docker_controller_job.json.job_id is defined
ignore_errors: true

- name: Check job status
ansible.builtin.debug:
msg: "Failed stopping Saltbox Docker containers"
msg: "Status of stopping Saltbox Docker containers: {{ stop_job_status.json.status | default('unknown') }}"
when:
- stop_docker_controller_job is success
- stop_job_status.json.status == 'failed'
- stop_docker_controller_job.json.job_id is defined

- name: Check operation status (legacy)
ansible.builtin.debug:
msg: "Status of stopping Saltbox Docker containers: {{ stop_docker_controller_job.json.message | default('unknown') }}"
when:
- stop_docker_controller_job is success
- stop_docker_controller_job.json.job_id is not defined

- name: Check for operation failure
ansible.builtin.debug:
msg: "Failed to stop Saltbox Docker containers"
when: stop_docker_controller_job is failed
2 changes: 1 addition & 1 deletion scripts/saltbox_docker_controller.py
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
import time
import logging
import logging.config
from typing import List, Dict, Set, Union, Optional
from typing import List, Dict, Set, Optional
from fastapi import FastAPI, HTTPException, Query, BackgroundTasks
from fastapi.responses import JSONResponse
from contextlib import asynccontextmanager
Expand Down

0 comments on commit 3f1a9a3

Please sign in to comment.