forked from kubernetes/release
-
Notifications
You must be signed in to change notification settings - Fork 0
/
template.go
115 lines (87 loc) · 2.89 KB
/
template.go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
/*
Copyright 2020 The Kubernetes Authors.
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
*/
package document
const ContainerImagesDescription = `### Container Images
All container images are available as manifest lists and support the described
architectures. It is also possible to pull a specific architecture directly by
adding the "-$ARCH" suffix to the container image name.
`
// defaultReleaseNotesTemplate is the text template for the default release notes.
// k8s/release/cmd/release-notes uses text/template to render markdown
// templates.
const defaultReleaseNotesTemplate = `
{{- $CurrentRevision := .CurrentRevision -}}
{{- $PreviousRevision := .PreviousRevision -}}
{{if or .FileDownloads .ImageDownloads}}
## Downloads for {{$CurrentRevision}}
{{- if .FileDownloads -}}
{{- with .FileDownloads.Source }}
### Source Code
filename | sha512 hash
-------- | -----------
{{range .}}[{{.Name}}]({{.URL}}) | {{.Checksum}}{{println}}{{end}}
{{end}}
{{- with .FileDownloads.Client -}}
### Client Binaries
filename | sha512 hash
-------- | -----------
{{range .}}[{{.Name}}]({{.URL}}) | {{.Checksum}}{{println}}{{end}}
{{end}}
{{- with .FileDownloads.Server -}}
### Server Binaries
filename | sha512 hash
-------- | -----------
{{range .}}[{{.Name}}]({{.URL}}) | {{.Checksum}}{{println}}{{end}}
{{end}}
{{- with .FileDownloads.Node -}}
### Node Binaries
filename | sha512 hash
-------- | -----------
{{range .}}[{{.Name}}]({{.URL}}) | {{.Checksum}}{{println}}{{end}}
{{end -}}
{{if .ImageDownloads}}
{{- with .ImageDownloads -}}
` + ContainerImagesDescription + `
name | architectures
---- | -------------
{{range .}}{{.Name}} | {{ range $i, $a := .Architectures}}{{if $i}}, {{end}}{{$a}}{{end}}{{println}}{{end}}
{{end -}}
{{end -}}
{{end -}}
{{- end -}}
{{with .CVEList -}}
## Important Security Information
This release contains changes that address the following vulnerabilities:
{{range .}}
### {{.ID}}: {{.Title}}
{{.Description}}
**CVSS Rating:** {{.CVSSRating}} ({{.CVSSScore}}) [{{.CVSSVector}}]({{.CalcLink}})
{{- if .TrackingIssue -}}
<br>
**Tracking Issue:** {{.TrackingIssue}}
{{- end }}
{{ end }}
{{- end -}}
{{with .NotesWithActionRequired -}}
## Urgent Upgrade Notes
### (No, really, you MUST read this before you upgrade)
{{range .}}{{println "-" .}} {{end}}
{{end}}
{{- if .Notes -}}
## Changes by Kind
{{ range .Notes}}
### {{.Kind | prettyKind}}
{{range $note := .NoteEntries }}{{println "-" $note}}{{end}}
{{- end -}}
{{- end -}}
`