Auto-generate section index pages. (#61)

This commit is contained in:
Martin Taillefer 2017-04-25 11:10:43 -07:00 committed by GitHub
parent 106c44fc3f
commit 2219751a44
16 changed files with 77 additions and 60 deletions

View File

@ -1,7 +1,8 @@
---
category: Concepts
title: Architecture
overview: Highlights Istio's core architectural structure and components.
parent: What is Istio?
order: 30

View File

@ -1,7 +1,8 @@
---
category: Concepts
title: Attributes
overview: Explains the important notion of attributes, which is a central mechanism for how policies and control are applied to services within the mesh.
parent: Policies and Control
order: 10

View File

@ -1,7 +1,8 @@
---
category: Concepts
title: Fault Injection
overview: Introduces the idea of systematic fault injection that can be used to unconver conflicting failure recovery policies across services.
parent: Traffic Management
order: 40

View File

@ -1,7 +1,8 @@
---
category: Concepts
title: Design Goals
overview: Describes the core principles that Istio's design adheres to.
parent: What is Istio?
order: 20

View File

@ -1,7 +1,8 @@
---
category: Concepts
title: Handling Failures
overview: An overview of failure recovery capabilities in Envoy that can be leveraged by unmodified applications to improve robustness and prevent cascading failures.
parent: Traffic Management
order: 30

View File

@ -16,51 +16,4 @@ type: markdown
Concepts help you learn about the different parts
of the Istio system and the abstractions it uses.
- What Is Istio?
- [Overview](./overview.html). Provides a broad overview of what
problems Istio is designed to solve.
- [Design Goals](./goals.html). Describes the core principles that
Istio's design adheres to.
- [Architecture](./architecture.html). Highlights Istio's core
architectural structure and components.
- Traffic Management
- [Overview](./traffic-management-overview.html). Provides a conceptual overview of
traffic management principles in Istio and the kind of features
enabled by these principles.
- [Istio-Manager](./manager.html). Introduces the Istio-Manager, the
component responsible for managing a distributed deployment of Envoy
proxies in the service mesh.
- [Service Model](./service-model.html). Describes how services are
modeled within the Istio mesh, the notion of multiple versions of a
service, and the communiction model between services.
- [Handling Failures](./handling-failures.html). An overview of failure
recovery capabilities in Envoy that can be leveraged by unmodified
applications to improve robustness and prevent cascading failures.
- [Fault Injection](./fault-injection.html). Introduces the idea of
systematic fault injection that can be used to unconver conflicting
failure recovery policies across services.
- [Rules Configuration](./rules-configuration.html). Provides a high-level
overview of the domain-specific language used by Istio to configure
traffic management rules in the service mesh.
- Policies and Control
- [Attributes](./attributes.html). Explains the important notion of attributes, which
is a central mechanism for how policies and control are applied to services within the
mesh.
- [Mixer](./mixer.html). Architectural deep-dive into the design of Mixer, which provides
the policy and control mechanisms within the service mesh.
- [Mixer Configuration](./mixer-config.html). An overview of the key concepts used to configure
Mixer.
{% include section-index.html %}

View File

@ -1,7 +1,8 @@
---
category: Concepts
title: Istio-Manager
overview: Introduces the Istio-Manager, the component responsible for managing a distributed deployment of Envoy proxies in the service mesh.
parent: Traffic Management
order: 10

View File

@ -1,7 +1,8 @@
---
category: Concepts
title: Mixer Configuration
overview: An overview of the key concepts used to configure Mixer.
parent: Policies and Control
order: 30

View File

@ -1,7 +1,8 @@
---
category: Concepts
title: Mixer
overview: Architectural deep-dive into the design of Mixer, which provides the policy and control mechanisms within the service mesh.
parent: Policies and Control
order: 20

View File

@ -1,7 +1,8 @@
---
category: Concepts
title: Overview
overview: Provides a broad overview of what problems Istio is designed to solve.
parent: What is Istio?
order: 15

View File

@ -1,7 +1,8 @@
---
category: Concepts
title: Rules Configuration
overview: Provides a high-level overview of the domain-specific language used by Istio to configure traffic management rules in the service mesh.
parent: Traffic Management
order: 50

View File

@ -1,7 +1,8 @@
---
category: Concepts
title: Service Model
overview: Describes how services are modeled within the Istio mesh, the notion of multiple versions of a service, and the communication model between services.
parent: Traffic Management
order: 20

View File

@ -1,7 +1,8 @@
---
category: Concepts
title: Overview
overview: Provides a conceptual overview of traffic management principles in Istio and the kind of features enabled by these principles.
parent: Traffic Management
order: 0

View File

@ -0,0 +1,29 @@
<ul class="section-index">
{% assign current = page.url | downcase | split: '/' %}
{% assign cats = site.docs | where:"category",page.category | sort:"order" %}
{% for cat in cats %}
{% assign cat_name = cat.title | default: "EMPTY" %}
{% assign cat_parent = cat.parent | default: "EMPTY" %}
{% unless cat.url contains "index" %}
{% if cat_name != "EMPTY" %}
{% if cat.marker == true %}
<li class="section-index-list-item">
{{ cat_name }}
<ul class="list-unstyled tree">
{% assign children = site.docs | where:"parent",cat.title | sort:"order" %}
{% for child in children %}
<p><li><a class="child-link" href="{{child.url}}">{{ child.title }}</a>. {{ child.overview }}</li></p>
{% endfor %}
</ul>
</li>
{% endif %}
{% if cat.marker != true and cat_parent == "EMPTY" %}
<li class="section-index-list-item">
<a href="{{ cat.url }}">{{ cat_name }}</a>
</li>
{% endif %}
{% endif %}
{% endunless %}
{% endfor %}
</ul>

View File

@ -0,0 +1,22 @@
.section-index {
margin-bottom: 20px;
@media (min-width: $tablet) {
margin-bottom: 0;
padding: $spacing--xs 0 $spacing--xl;
}
.section-index-list-item {
display: inline-block;
padding: 2px;
width: 100%;
a {
font-weight: 400;
}
}
.child-link {
font-size: 110%;
}
}

View File

@ -19,6 +19,7 @@
@import "modules/_hero";
@import "modules/_nav";
@import "modules/_contribute-links";
@import "modules/_section-index";
@import "modules/_subscribe-form";
@import "pages/_blog";