@php $isBeta = str_contains($current, '-beta'); $tiles = []; if (isset($targets['continueBeta'])) { $tiles[] = ['target' => $targets['continueBeta'], 'label' => __('release.kind_continue'), 'icon' => 'rotate', 'primary' => true]; } $tiles[] = ['target' => $targets['patch'], 'label' => __('release.kind_patch'), 'icon' => 'tag', 'primary' => false]; $tiles[] = ['target' => $targets['minor'], 'label' => __('release.kind_minor'), 'icon' => 'tag', 'primary' => false]; $tiles[] = ['target' => $targets['major'], 'label' => __('release.kind_major'), 'icon' => 'git-branch', 'primary' => false]; @endphp
{{-- Header --}}

{{ __('release.eyebrow') }}

{{ __('release.heading') }}

{{ __('release.subtitle') }}

{{ __('release.dev_instance') }}
{{-- Left: current version + action --}}
{{-- Current version hero --}}

{{ __('release.current') }}

{{ $current }}

{{ __('release.channel') }}
{{ $isBeta ? 'beta' : 'stable' }}
{{ __('release.source') }}
Gitea
@if ($pendingId !== null) {{-- Running --}}

{{ __('release.running_title') }}

{{ __('release.running', ['target' => $pendingTarget]) }}

{{ __('release.in_progress') }}
@else @if ($lastTag !== null) {{-- Last successful push --}}
{{ __('release.staged_label') }} {{ $lastTag }} → Mirror → CI → Staging
@endif {{-- Option tiles --}}

{{ __('release.choose') }}

@foreach ($tiles as $t) @endforeach

{{ __('release.hint') }}

@endif @if ($isBeta) {{-- Publish the current beta --}}

{{ __('release.publish') }}

{{ __('release.deploy_public', ['tag' => $current]) }} {{ __('release.promote_stable', ['v' => $stableTarget]) }}

{{ __('release.publish_hint') }}

@endif {{-- Yank a public release --}}
{{ __('release.yank_title') }}
@forelse ($publicTags as $tag)
{{ $tag }} {{ __('release.yank') }}
@empty

{{ __('release.yank_empty') }}

@endforelse
{{-- Right: live pipeline rail --}} @if ($pipeline === null)

{{ __('release.no_beta_running') }}

@else
    @foreach ($pipeline['steps'] as $s) @php $names = [ 'tag' => 'Gitea', 'mirror' => 'GitHub-privat', 'ci' => 'CI', ]; $sub = [ 'tag' => __('release.pipe_sub_gitea'), 'mirror' => __('release.pipe_sub_mirror'), 'ci' => __('release.pipe_sub_ci'), ]; $detail = match ($s['state']) { 'done' => $s['detail'] ?? __('release.state_done'), 'running' => __('release.state_running'), 'failed' => __('release.state_failed'), 'pending' => __('release.state_pending'), default => __('release.state_unknown'), }; $detailClass = match ($s['state']) { 'done' => 'text-online', 'running' => 'text-warning', 'failed' => 'text-offline', default => 'text-ink-4', }; @endphp
  1. @if ($s['state'] === 'running') @elseif ($s['state'] === 'done') @elseif ($s['state'] === 'failed') @elseif ($s['state'] === 'pending') @else @endif @unless ($loop->last) @endunless
    ! $loop->last])>

    {{ $names[$s['key']] }}

    {{ $sub[$s['key']] }}

    @if ($s['key'] === 'ci' && $s['url']) {{ $detail }} @else

    {{ $detail }}

    @endif
  2. @endforeach
@if ($pipeline['ciRunning']) @endif @endif