From 02d087c63a83847ae53f1d10a2156989a6ee967c Mon Sep 17 00:00:00 2001 From: Ashwin Maroli Date: Fri, 20 Mar 2020 18:38:19 +0530 Subject: [PATCH] Stash computed data in a Liquid variable (#10462) * Stash computed data in a variable To avoid computing `site.data[include.datafolder][include.datafile]` multiple times for the same context. * Revert change to hard-tab whitespace --- _includes/cli.md | 62 +++++++++++++++++++++++++----------------------- 1 file changed, 32 insertions(+), 30 deletions(-) diff --git a/_includes/cli.md b/_includes/cli.md index 780b1795bd..d116d4eda9 100644 --- a/_includes/cli.md +++ b/_includes/cli.md @@ -2,25 +2,27 @@ {% capture dockerBaseDesc %}The base command for the Docker CLI.{% endcapture %} {% if include.datafolder and include.datafile %} +{% assign controller_data = site.data[include.datafolder][include.datafile] %} + ## Description {% if include.datafile=="docker" %} {{ dockerBaseDesc }} {% else %} -{{ site.data[include.datafolder][include.datafile].short }} +{{ controller_data.short }} {% endif %} -{% if site.data[include.datafolder][include.datafile].min_api_version %} +{% if controller_data.min_api_version %} -API {{ site.data[include.datafolder][include.datafile].min_api_version }}+  +API {{ controller_data.min_api_version }}+  The client and daemon API must both be at least -{{ site.data[include.datafolder][include.datafile].min_api_version }} +{{ controller_data.min_api_version }} to use this command. Use the `docker version` command on the client to check your client and daemon API versions. {% endif %} -{% if site.data[include.datafolder][include.datafile].deprecated %} +{% if controller_data.deprecated %} > This command is [deprecated](/engine/deprecated.md){: target="_blank" class="_"}. > @@ -38,7 +40,7 @@ your client and daemon API versions. {% endif %} -{% if site.data[include.datafolder][include.datafile].experimental %} +{% if controller_data.experimental %} > This command is experimental. > @@ -52,7 +54,7 @@ your client and daemon API versions. {% endif %} -{% if site.data[include.datafolder][include.datafile].experimentalcli %} +{% if controller_data.experimentalcli %} > This command is experimental on the Docker client. > @@ -67,12 +69,12 @@ your client and daemon API versions. {% endif %} {% capture command-orchestrator %} -{% if site.data[include.datafolder][include.datafile].swarm %} +{% if controller_data.swarm %} Swarm This command works with the Swarm orchestrator. {% endif %} -{% if site.data[include.datafolder][include.datafile].kubernetes %} +{% if controller_data.kubernetes %} Kubernetes This command works with the Kubernetes orchestrator. @@ -80,32 +82,32 @@ your client and daemon API versions. {% endcapture %}{{ command-orchestrator }} -{% if site.data[include.datafolder][include.datafile].usage %} +{% if controller_data.usage %} ## Usage ```none -{{ site.data[include.datafolder][include.datafile].usage | replace: tabChar,"" | strip }}{% if site.data[include.datafolder][include.datafile].cname %} COMMAND{% endif %} +{{ controller_data.usage | replace: tabChar,"" | strip }}{% if controller_data.cname %} COMMAND{% endif %} ``` {% endif %} -{% unless site.data[include.datafolder][include.datafile].long == site.data[include.datafolder][include.datafile].short %} +{% unless controller_data.long == controller_data.short %} ## Extended description -{{ site.data[include.datafolder][include.datafile].long }} +{{ controller_data.long }} {% endunless %} -{% if site.data[include.datafolder][include.datafile].examples %} +{% if controller_data.examples %} For example uses of this command, refer to the [examples section](#examples) below. {% endif %} -{% if site.data[include.datafolder][include.datafile].options %} - {% if site.data[include.datafolder][include.datafile].inherited_options %} - {% assign alloptions = site.data[include.datafolder][include.datafile].options | concat:site.data[include.datafolder][include.datafile].inherited_options %} +{% if controller_data.options %} + {% if controller_data.inherited_options %} + {% assign alloptions = controller_data.options | concat:controller_data.inherited_options %} {% else %} - {% assign alloptions = site.data[include.datafolder][include.datafile].options %} + {% assign alloptions = controller_data.options %} {% endif %} ## Options @@ -123,7 +125,7 @@ For example uses of this command, refer to the [examples section](#examples) bel {% capture deprecated-badge %}{% if option.deprecated %}deprecated{% endif %}{% endcapture %} {% capture experimental-daemon-badge %}{% if option.experimental %}experimental (daemon){% endif %}{% endcapture %} {% capture experimental-cli-badge %}{% if option.experimentalcli %}experimental (CLI){% endif %}{% endcapture %} - {% capture min-api %}{% if option.min_api_version %}API {{ option.min_api_version }}+{% endif %}{%endcapture%} + {% capture min-api %}{% if option.min_api_version %}API {{ option.min_api_version }}+{% endif %}{%endcapture%} {% capture flag-orchestrator %}{% if option.swarm %}Swarm{% endif %}{% if option.kubernetes %}Kubernetes{% endif %}{% endcapture %} {% capture all-badges %}{{ deprecated-badge }}{{ experimental-daemon-badge }}{{ experimental-cli-badge }}{{ min-api }}{{ flag-orchestrator }}{% endcapture %} @@ -142,11 +144,11 @@ For example uses of this command, refer to the [examples section](#examples) bel {% endif %} -{% if site.data[include.datafolder][include.datafile].examples %} +{% if controller_data.examples %} ## Examples -{{ site.data[include.datafolder][include.datafile].examples }} +{{ controller_data.examples }} {% endif %} {% else %} @@ -155,15 +157,15 @@ The include.datafolder or include.datafile was not set. {% endif %} -{% if site.data[include.datafolder][include.datafile].pname %} -{% unless site.data[include.datafolder][include.datafile].pname == include.datafile %} +{% if controller_data.pname %} +{% unless controller_data.pname == include.datafile %} ## Parent command -{% capture parentfile %}{{ site.data[include.datafolder][include.datafile].plink | replace: ".yaml", "" | replace: "docker_","" }}{% endcapture %} -{% capture parentdatafile %}{{ site.data[include.datafolder][include.datafile].plink | replace: ".yaml", "" }}{% endcapture %} +{% capture parentfile %}{{ controller_data.plink | replace: ".yaml", "" | replace: "docker_","" }}{% endcapture %} +{% capture parentdatafile %}{{ controller_data.plink | replace: ".yaml", "" }}{% endcapture %} -{% if site.data[include.datafolder][include.datafile].pname == "docker" %} +{% if controller_data.pname == "docker" %} {% capture parentDesc %}{{ dockerBaseDesc }}{% endcapture %} {% else %} {% capture parentDesc %}{{ site.data[include.datafolder][parentdatafile].short }}{% endcapture %} @@ -171,12 +173,12 @@ The include.datafolder or include.datafile was not set. | Command | Description | | ------- | ----------- | -| [{{ site.data[include.datafolder][include.datafile].pname }}]({{ parentfile }}) | {{ parentDesc }}| +| [{{ controller_data.pname }}]({{ parentfile }}) | {{ parentDesc }}| {% endunless %} {% endif %} -{% if site.data[include.datafolder][include.datafile].cname %} +{% if controller_data.cname %} ## Child commands @@ -188,7 +190,7 @@ The include.datafolder or include.datafile was not set. -{% for command in site.data[include.datafolder][include.datafile].cname %} +{% for command in controller_data.cname %} {% capture dataFileName %}{{ command | strip | replace: " ","_" }}{% endcapture %} [{{ command }}]({{ dataFileName | replace: "docker_","" }}/) @@ -199,7 +201,7 @@ The include.datafolder or include.datafile was not set. {% endif %} -{% unless site.data[include.datafolder][include.datafile].pname == "docker" or site.data[include.datafolder][include.datafile].pname == "dockerd" or include.datafile=="docker" %} +{% unless controller_data.pname == "docker" or controller_data.pname == "dockerd" or include.datafile=="docker" %} ## Related commands