{{title "Task " model.name}} {{task-subnav task=model}}
{{#if error}}

{{error.title}}

{{error.description}}

{{/if}}

{{model.name}} {{#if model.isConnectProxy}} {{proxy-tag class="bumper-left"}} {{/if}} {{model.state}}
{{#if model.isRunning}}
{{exec/open-button job=model.task.taskGroup.job taskGroup=model.task.taskGroup allocation=model.allocation task=model.task}}
{{two-step-button data-test-restart idleText="Restart" cancelText="Cancel" confirmText="Yes, Restart" confirmationMessage="Are you sure? This will restart the task in-place." awaitingConfirmation=restartTask.isRunning disabled=restartTask.isRunning onConfirm=(perform restartTask)}} {{/if}}

Task Details Started At {{format-ts model.startedAt}} {{#if model.finishedAt}} Finished At {{format-ts model.finishedAt}} {{/if}} Driver {{model.task.driver}}
Resource Utilization
{{#if model.isRunning}}
{{primary-metric resource=model metric="cpu"}}
{{primary-metric resource=model metric="memory"}}
{{else}}

Task isn't running

Only running tasks utilize resources.

{{/if}}
{{#if network.ports.length}}
Addresses
{{#list-table source=network.ports as |t|}} {{#t.head}} Dynamic? Name Address {{/t.head}} {{#t.body as |row|}} {{if row.model.isDynamic "Yes" "No"}} {{row.model.name}} {{network.ip}}:{{row.model.port}} {{/t.body}} {{/list-table}}
{{/if}} {{#if model.task.volumeMounts.length}}
Volumes
{{#list-table source=model.task.volumeMounts as |t|}} {{#t.head}} Name Destination Permissions Client Source {{/t.head}} {{#t.body as |row|}} {{row.model.volume}} {{row.model.destination}} {{if row.model.readOnly "Read" "Read/Write"}} {{row.model.source}} {{/t.body}} {{/list-table}}
{{/if}}
Recent Events
{{#list-table source=(reverse model.events) class="is-striped" as |t|}} {{#t.head}} Time Type Description {{/t.head}} {{#t.body as |row|}} {{format-ts row.model.time}} {{row.model.type}} {{#if row.model.message}} {{row.model.message}} {{else}} No message {{/if}} {{/t.body}} {{/list-table}}