{{- $apiReferenceMetaLinks := slice -}} {{- $apiReferenceText := T "api_reference_title" -}} {{ $.Store.Delete "apiReferenceMetaLinks" }} {{ $.Store.Delete "pageApiReferenceLinksMap" }} {{- $ignoreCondition := (printf "%T" .Page.Params.api_metadata | eq "[]interface {}") -}} {{- if and .Page.Params.api_metadata $ignoreCondition (not .Page.Params.simple_list) -}} {{- range $metadata := .Page.Params.api_metadata -}} {{- $apiVersion := $metadata.apiVersion -}} {{- $kind := $metadata.kind -}} {{- $version := $apiVersion -}} {{- $linkText := $metadata.override_link_text | default $kind -}} {{- $apiRefBaseDir := "docs/reference/kubernetes-api/" -}} {{- $apiRefSections := site.GetPage "section" $apiRefBaseDir -}} {{- range $apiRefSection := $apiRefSections.Sections -}} {{- $apiRefDir := $apiRefSection.RelPermalink -}} {{- $fragmentApiRefDir := split $apiRefDir "/docs" -}} {{- $apiRefDir := printf "/docs%s" (index ($fragmentApiRefDir) 1) -}} {{- $apiReferenceFiles := site.GetPage $apiRefDir -}} {{- range $apiRefFile := $apiReferenceFiles.RegularPages -}} {{- $apiRefFileDirPath:= printf "/%s" $apiRefFile.File.Dir -}} {{- if and (ne $apiRefFile.Section "") (in $apiRefFileDirPath $apiRefDir) -}} {{- with $apiRefFile.Params.api_metadata -}} {{- if and (eq .kind $kind) (eq .apiVersion $version) -}} {{- $link := printf "%s %s" $apiRefFile.Permalink $linkText $apiReferenceText -}} {{- $apiReferenceMetaLinks = $apiReferenceMetaLinks | append $link -}} {{- $.Store.SetInMap "pageApiReferenceLinksMap" $kind $link -}} {{- end -}} {{- end -}} {{- end -}} {{- end -}} {{- end -}} {{- end -}} {{- end -}} {{- if gt (len $apiReferenceMetaLinks) 0 -}} {{ $.Store.Add "apiReferenceMetaLinks" $apiReferenceMetaLinks }} {{- end -}}