117 lines
6.7 KiB
PHP
117 lines
6.7 KiB
PHP
<nav wire:poll.5000ms="check_status">
|
|
<x-resources.breadcrumbs :resource="$application" :parameters="$parameters" />
|
|
<div class="navbar-main">
|
|
<nav class="flex gap-4 overflow-x-scroll items-center min-h-10 flex-shrink-0">
|
|
<a href="{{ route('project.application.configuration', $parameters) }}">
|
|
Configuration
|
|
</a>
|
|
<a href="{{ route('project.application.deployment.index', $parameters) }}">
|
|
<button>Deployments</button>
|
|
</a>
|
|
<a href="{{ route('project.application.logs', $parameters) }}">
|
|
<button>Logs</button>
|
|
</a>
|
|
@if (!$application->destination->server->isSwarm())
|
|
<a href="{{ route('project.application.command', $parameters) }}">
|
|
<button>Command</button>
|
|
</a>
|
|
@endif
|
|
<x-applications.links :application="$application" />
|
|
</nav>
|
|
<div class="flex items-center gap-2 order-first md:order-last flex-wrap md:flex-nowrap">
|
|
@if ($application->build_pack === 'dockercompose' && is_null($application->docker_compose_raw))
|
|
<div>Please load a Compose file.</div>
|
|
@else
|
|
@if (!$application->destination->server->isSwarm())
|
|
<div class="md:order-first order-last">
|
|
<x-applications.advanced :application="$application" />
|
|
</div>
|
|
@endif
|
|
<div class="flex gap-2 flex-wrap">
|
|
@if (!str($application->status)->startsWith('exited'))
|
|
@if (!$application->destination->server->isSwarm())
|
|
<x-forms.button title="With rolling update if possible" wire:click='deploy'>
|
|
<svg xmlns="http://www.w3.org/2000/svg" class="w-5 h-5 dark:text-orange-400"
|
|
viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none"
|
|
stroke-linecap="round" stroke-linejoin="round">
|
|
<path stroke="none" d="M0 0h24v24H0z" fill="none"></path>
|
|
<path
|
|
d="M10.09 4.01l.496 -.495a2 2 0 0 1 2.828 0l7.071 7.07a2 2 0 0 1 0 2.83l-7.07 7.07a2 2 0 0 1 -2.83 0l-7.07 -7.07a2 2 0 0 1 0 -2.83l3.535 -3.535h-3.988">
|
|
</path>
|
|
<path d="M7.05 11.038v-3.988"></path>
|
|
</svg>
|
|
Redeploy
|
|
</x-forms.button>
|
|
@endif
|
|
@if ($application->build_pack !== 'dockercompose')
|
|
@if ($application->destination->server->isSwarm())
|
|
<x-forms.button title="Redeploy Swarm Service (rolling update)" wire:click='deploy'>
|
|
<svg class="w-5 h-5 dark:text-warning" viewBox="0 0 24 24"
|
|
xmlns="http://www.w3.org/2000/svg">
|
|
<g fill="none" stroke="currentColor" stroke-linecap="round"
|
|
stroke-linejoin="round" stroke-width="2">
|
|
<path
|
|
d="M19.933 13.041a8 8 0 1 1-9.925-8.788c3.899-1 7.935 1.007 9.425 4.747" />
|
|
<path d="M20 4v5h-5" />
|
|
</g>
|
|
</svg>
|
|
Update Service
|
|
</x-forms.button>
|
|
@else
|
|
<x-forms.button title="Restart without rebuilding" wire:click='restart'>
|
|
<svg class="w-5 h-5 dark:text-warning" viewBox="0 0 24 24"
|
|
xmlns="http://www.w3.org/2000/svg">
|
|
<g fill="none" stroke="currentColor" stroke-linecap="round"
|
|
stroke-linejoin="round" stroke-width="2">
|
|
<path
|
|
d="M19.933 13.041a8 8 0 1 1-9.925-8.788c3.899-1 7.935 1.007 9.425 4.747" />
|
|
<path d="M20 4v5h-5" />
|
|
</g>
|
|
</svg>
|
|
Restart
|
|
</x-forms.button>
|
|
@endif
|
|
@endif
|
|
<x-modal-confirmation @click="$wire.dispatch('stopEvent')">
|
|
<x-slot:button-title>
|
|
<svg xmlns="http://www.w3.org/2000/svg" class="w-5 h-5 text-error" viewBox="0 0 24 24"
|
|
stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round"
|
|
stroke-linejoin="round">
|
|
<path stroke="none" d="M0 0h24v24H0z" fill="none"></path>
|
|
<path
|
|
d="M6 5m0 1a1 1 0 0 1 1 -1h2a1 1 0 0 1 1 1v12a1 1 0 0 1 -1 1h-2a1 1 0 0 1 -1 -1z">
|
|
</path>
|
|
<path
|
|
d="M14 5m0 1a1 1 0 0 1 1 -1h2a1 1 0 0 1 1 1v12a1 1 0 0 1 -1 1h-2a1 1 0 0 1 -1 -1z">
|
|
</path>
|
|
</svg>
|
|
Stop
|
|
</x-slot:button-title>
|
|
This application will be stopped. <br>Please think again.
|
|
</x-modal-confirmation>
|
|
@else
|
|
<x-forms.button wire:click='deploy'>
|
|
<svg xmlns="http://www.w3.org/2000/svg" class="w-5 h-5 dark:text-warning"
|
|
viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor" fill="none"
|
|
stroke-linecap="round" stroke-linejoin="round">
|
|
<path stroke="none" d="M0 0h24v24H0z" fill="none" />
|
|
<path d="M7 4v16l13 -8z" />
|
|
</svg>
|
|
Deploy
|
|
</x-forms.button>
|
|
@endif
|
|
</div>
|
|
@endif
|
|
</div>
|
|
|
|
</div>
|
|
@script
|
|
<script>
|
|
$wire.$on('stopEvent', () => {
|
|
$wire.$dispatch('info', 'Stopping application.');
|
|
$wire.$call('stop');
|
|
});
|
|
</script>
|
|
@endscript
|
|
</nav>
|