Skip to content

Commit 9d18521

Browse files
authored
Determine latest component versions automatically (#327)
* determine latest release tag automatically Signed-off-by: Paul S. Schweigert <[email protected]> * don't break things on release branches Signed-off-by: Paul S. Schweigert <[email protected]> Signed-off-by: Paul S. Schweigert <[email protected]>
1 parent dae2660 commit 9d18521

File tree

3 files changed

+21
-11
lines changed

3 files changed

+21
-11
lines changed

hack/build-flags.sh

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,12 @@ function build_flags() {
2424
[[ -n "${commit}" ]] || (echo "error getting the current commit" && exit 1)
2525
version="v$(date +%Y%m%d)-local-${commit}"
2626
fi
27+
# Knative component versions
28+
local branch="`git branch --show-current | cut -d '-' f2`"
29+
local serving="`git ls-remote --tags --ref https://github.com/knative/serving.git | grep -F "${branch}" | cut -d '-' -f2 | cut -d 'v' -f2 | sort -Vr | head -n 1`"
30+
local kourier="`git ls-remote --tags --ref https://github.com/knative-sandbox/net-kourier.git | grep -F "${branch}" | cut -d '-' -f2 | cut -d 'v' -f2 | sort -Vr | head -n 1`"
31+
local eventing="`git ls-remote --tags --ref https://github.com/knative/eventing.git | grep -F "${branch}" | cut -d '-' -f2 | cut -d 'v' -f2 | sort -Vr | head -n 1`"
2732

28-
echo "-X '${VERSION_PACKAGE}.BuildDate=${now}' -X ${VERSION_PACKAGE}.Version=${version} -X ${VERSION_PACKAGE}.GitRevision=${rev}"
33+
34+
echo "-X '${VERSION_PACKAGE}.BuildDate=${now}' -X ${VERSION_PACKAGE}.Version=${version} -X ${VERSION_PACKAGE}.GitRevision=${rev} -X ${COMPONENT_PACKAGE}.ServingVersion=${serving} -X ${COMPONENT_PACKAGE}.KourierVersion=${kourier} -X ${COMPONENT_PACKAGE}.EventingVersion=${eventing}"
2935
}

hack/build.sh

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,9 @@ MAIN_SOURCE_DIR="cmd"
3131
# Package which holds the version variables
3232
VERSION_PACKAGE="knative.dev/kn-plugin-quickstart/internal/command"
3333

34+
# Package which holds the component variables
35+
COMPONENT_PACKAGE="knative.dev/kn-plugin-quickstart/pkg/install"
36+
3437
# =================================================
3538

3639
# Store for later

pkg/install/install.go

Lines changed: 11 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -21,15 +21,16 @@ import (
2121
"time"
2222
)
2323

24-
var servingVersion = "1.7.1"
25-
var kourierVersion = "1.7.0"
26-
var eventingVersion = "1.7.1"
24+
// Component versions are generated at buildtime via the hack/build.sh script
25+
var ServingVersion string
26+
var KourierVersion string
27+
var EventingVersion string
2728

2829
// Kourier installs Kourier networking layer from Github YAML files
2930
func Kourier() error {
30-
fmt.Println("🕸️ Installing Kourier networking layer v" + kourierVersion + " ...")
31+
fmt.Println("🕸️ Installing Kourier networking layer v" + KourierVersion + " ...")
3132

32-
if err := retryingApply("https://github.com/knative-sandbox/net-kourier/releases/download/knative-v" + kourierVersion + "/kourier.yaml"); err != nil {
33+
if err := retryingApply("https://github.com/knative-sandbox/net-kourier/releases/download/knative-v" + KourierVersion + "/kourier.yaml"); err != nil {
3334
return fmt.Errorf("wait: %w", err)
3435
}
3536
if err := waitForPodsReady("kourier-system"); err != nil {
@@ -94,7 +95,7 @@ spec:
9495
func KourierMinikube() error {
9596
fmt.Println("🕸 Configuring Kourier for Minikube...")
9697

97-
if err := retryingApply("https://github.com/knative/serving/releases/download/knative-v" + servingVersion + "/serving-default-domain.yaml"); err != nil {
98+
if err := retryingApply("https://github.com/knative/serving/releases/download/knative-v" + ServingVersion + "/serving-default-domain.yaml"); err != nil {
9899
return fmt.Errorf("default domain: %w", err)
99100
}
100101
if err := waitForPodsReady("knative-serving"); err != nil {
@@ -109,8 +110,8 @@ func KourierMinikube() error {
109110

110111
// Serving installs Knative Serving from Github YAML files
111112
func Serving() error {
112-
fmt.Println("🍿 Installing Knative Serving v" + servingVersion + " ...")
113-
baseURL := "https://github.com/knative/serving/releases/download/knative-v" + servingVersion
113+
fmt.Println("🍿 Installing Knative Serving v" + ServingVersion + " ...")
114+
baseURL := "https://github.com/knative/serving/releases/download/knative-v" + ServingVersion
114115

115116
if err := retryingApply(baseURL + "/serving-crds.yaml"); err != nil {
116117
return fmt.Errorf("wait: %w", err)
@@ -138,8 +139,8 @@ func Serving() error {
138139

139140
// Eventing installs Knative Eventing from Github YAML files
140141
func Eventing() error {
141-
fmt.Println("🔥 Installing Knative Eventing v" + eventingVersion + " ... ")
142-
baseURL := "https://github.com/knative/eventing/releases/download/knative-v" + eventingVersion
142+
fmt.Println("🔥 Installing Knative Eventing v" + EventingVersion + " ... ")
143+
baseURL := "https://github.com/knative/eventing/releases/download/knative-v" + EventingVersion
143144

144145
if err := retryingApply(baseURL + "/eventing-crds.yaml"); err != nil {
145146
return fmt.Errorf("wait: %w", err)

0 commit comments

Comments
 (0)