2020-01-28 14:25:52 +00:00
{{ title item .ID }}
2020-02-19 19:26:38 +00:00
<AppView @class="instance show">
<BlockSlot @name="notification" as |status type|>
2019-03-22 17:24:40 +00:00
{{ partial 'dc/services/notifications' }}
2020-02-19 19:26:38 +00:00
</BlockSlot>
<BlockSlot @name="breadcrumbs">
2019-02-21 13:10:53 +00:00
<ol>
<li><a data-test-back href= {{ href-to 'dc.services' }} >All Services</a></li>
<li><a data-test-back href= {{ href-to 'dc.services.show' }} >Service ( {{ item .Service }} )</a></li>
<li><strong>Instance</strong></li>
</ol>
2020-02-19 19:26:38 +00:00
</BlockSlot>
<BlockSlot @name="header">
2019-02-21 13:10:53 +00:00
<h1>
{{ item .ID }}
2020-02-11 10:04:49 +00:00
{{ # let ( service / external-source item ) as | externalSource | }}
{{ # if externalSource }}
<span data-test-external-source= {{ externalSource }} style= {{ concat 'background-image: var(--' externalSource '-icon)' }} data-tooltip="Registered via {{ externalSource }} ">Registered via {{ externalSource }} </span>
2019-02-21 13:10:53 +00:00
{{ / if }}
2020-02-11 10:04:49 +00:00
{{ / let }}
2019-03-22 17:01:10 +00:00
{{ # if ( eq item .Kind 'connect-proxy' ) }}
<span class="kind-proxy">Proxy</span>
2019-07-05 08:07:25 +00:00
{{ else if ( eq item .Kind 'mesh-gateway' ) }}
<span class="kind-proxy">Mesh Gateway</span>
2019-03-22 17:01:10 +00:00
{{ / if }}
2019-02-21 13:10:53 +00:00
</h1>
<dl>
<dt>Service Name</dt>
<dd><a href=" {{ href-to 'dc.services.show' item .Service }} "> {{ item .Service }} </a></dd>
</dl>
<dl>
<dt>Node Name</dt>
<dd><a href=" {{ href-to 'dc.nodes.show' item .Node .Node }} "> {{ item .Node .Node }} </a></dd>
</dl>
2019-03-22 17:24:40 +00:00
{{ # if proxy .ServiceName }}
2019-02-21 13:10:53 +00:00
<dl>
2019-06-20 08:37:17 +00:00
{{ # if proxy .ServiceProxy .DestinationServiceID }}
<dt data-test-proxy-type="sidecar-proxy">Sidecar Proxy</dt>
<dd><a href=" {{ href-to 'dc.services.instance' proxy .ServiceName proxy .Node proxy .ServiceID }} "> {{ proxy .ServiceID }} </a></dd>
{{ else }}
<dt data-test-proxy-type="proxy">Proxy</dt>
<dd><a href=" {{ href-to 'dc.services.show' proxy .ServiceName }} "> {{ proxy .ServiceName }} </a></dd>
{{ / if }}
2019-02-21 13:10:53 +00:00
</dl>
{{ / if }}
{{ # if ( eq item .Kind 'connect-proxy' ) }}
2019-03-07 10:51:39 +00:00
{{ # if item .Proxy .DestinationServiceID }}
2019-02-21 13:10:53 +00:00
<dl>
2019-03-07 10:51:39 +00:00
<dt data-test-proxy-destination="instance">Dest. Service Instance</dt>
2019-06-20 08:37:17 +00:00
<dd><a href=" {{ href-to 'dc.services.instance' item .Proxy .DestinationServiceName item .Node .Node item .Proxy .DestinationServiceID }} "> {{ item .Proxy .DestinationServiceID }} </a></dd>
2019-02-21 13:10:53 +00:00
</dl>
<dl>
<dt>Local Service Address</dt>
<dd> {{ item .Proxy .LocalServiceAddress }} : {{ item .Proxy .LocalServicePort }} </dd>
</dl>
2019-03-07 10:51:39 +00:00
{{ else }}
<dl>
<dt data-test-proxy-destination="service">Dest. Service</dt>
<dd><a href=" {{ href-to 'dc.services.show' item .Proxy .DestinationServiceName }} "> {{ item .Proxy .DestinationServiceName }} </a></dd>
</dl>
{{ / if }}
2019-02-21 13:10:53 +00:00
{{ / if }}
2020-02-19 19:26:38 +00:00
</BlockSlot>
<BlockSlot @name="content">
<TabNav @items= {{ compact ( array "Service Checks" "Node Checks" ( if ( eq item .Kind "connect-proxy" ) "Upstreams" "" ) ( if ( and ( eq item .Kind "connect-proxy" ) ( gt item .Proxy .Expose .Paths .length 0 ) ) "Exposed Paths" "" ) ( if ( eq item .Kind "mesh-gateway" ) "Addresses" "" ) "Tags" "Meta Data" ) }} @selected= {{ selectedTab }} />
2019-02-21 13:10:53 +00:00
{{ # each
(compact
(array
2019-07-05 08:07:25 +00:00
(hash id=(slugify 'Service Checks') partial='dc/services/servicechecks')
(hash id=(slugify 'Node Checks') partial='dc/services/nodechecks')
(if
(eq item.Kind 'connect-proxy')
(hash id=(slugify 'Upstreams') partial='dc/services/upstreams') ''
)
2019-11-25 18:45:10 +00:00
(if
(and (eq item.Kind 'connect-proxy') (gt item.Proxy.Expose.Paths.length 0))
(hash id=(slugify 'Exposed Paths') partial='dc/services/exposedpaths') ''
)
2019-07-05 08:07:25 +00:00
(if
(eq item.Kind 'mesh-gateway')
(hash id=(slugify 'Addresses') partial='dc/services/addresses') ''
)
(hash id=(slugify 'Tags') partial='dc/services/tags')
2019-08-02 11:53:52 +00:00
(hash id=(slugify 'Meta Data') partial='dc/services/metadata')
2019-02-21 13:10:53 +00:00
)
2020-03-31 13:58:59 +00:00
) key="id" as |panel|
2019-02-21 13:10:53 +00:00
}}
2020-02-19 19:26:38 +00:00
<TabSection @id= {{ panel .id }} @selected= {{ eq ( if selectedTab selectedTab "" ) panel .id }} @onchange= {{ action "change" }} >
2019-02-21 13:10:53 +00:00
{{ partial panel .partial }}
2020-02-19 19:26:38 +00:00
</TabSection>
2019-02-21 13:10:53 +00:00
{{ / each }}
2020-02-19 19:26:38 +00:00
</BlockSlot>
</AppView>