Skip to content

Commit 7254e49

Browse files
committed
Merge remote-tracking branch 'origin/main' into k0s-1-29
2 parents 59c5fb2 + d262e03 commit 7254e49

File tree

292 files changed

+9617
-17599
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

292 files changed

+9617
-17599
lines changed

.github/workflows/ci.yaml

Lines changed: 28 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -64,7 +64,6 @@ jobs:
6464
runs-on: ubuntu-latest
6565
needs:
6666
- int-tests-kind
67-
- int-tests-manager
6867
steps:
6968
- name: Succeed if all tests passed
7069
run: echo "Integration tests succeeded"
@@ -89,21 +88,6 @@ jobs:
8988
run: |
9089
make -C tests/integration test-kind
9190
92-
int-tests-manager:
93-
name: Integration tests (manager)
94-
runs-on: ubuntu-latest
95-
steps:
96-
- name: Checkout
97-
uses: actions/checkout@v4
98-
- name: Setup go
99-
uses: actions/setup-go@v5
100-
with:
101-
go-version-file: go.mod
102-
cache-dependency-path: "**/*.sum"
103-
- name: Run tests
104-
run: |
105-
make -C tests/integration test-manager
106-
10791
dryrun-tests:
10892
name: Dryrun tests
10993
runs-on: ubuntu-latest
@@ -187,7 +171,7 @@ jobs:
187171

188172
- name: Install dagger
189173
run: |
190-
curl -fsSL https://dl.dagger.io/dagger/install.sh | DAGGER_VERSION=v0.14.0 sh
174+
curl -fsSL https://dl.dagger.io/dagger/install.sh | sh
191175
sudo mv ./bin/dagger /usr/local/bin/dagger
192176
193177
- name: Build
@@ -326,7 +310,7 @@ jobs:
326310

327311
- name: Install dagger
328312
run: |
329-
curl -fsSL https://dl.dagger.io/dagger/install.sh | DAGGER_VERSION=v0.14.0 sh
313+
curl -fsSL https://dl.dagger.io/dagger/install.sh | sh
330314
sudo mv ./bin/dagger /usr/local/bin/dagger
331315
332316
- name: Build
@@ -431,7 +415,7 @@ jobs:
431415

432416
- name: Install dagger
433417
run: |
434-
curl -fsSL https://dl.dagger.io/dagger/install.sh | DAGGER_VERSION=v0.14.0 sh
418+
curl -fsSL https://dl.dagger.io/dagger/install.sh | sh
435419
sudo mv ./bin/dagger /usr/local/bin/dagger
436420
437421
- name: Build
@@ -587,6 +571,24 @@ jobs:
587571
export APP_VERSION="appver-${SHORT_SHA}"
588572
export RELEASE_YAML_DIR=e2e/kots-release-install
589573
./scripts/ci-release-app.sh
574+
575+
# then install a version with alternate unsupported overrides
576+
export EC_VERSION="$(git describe --tags --abbrev=4 --match='[0-9]*.[0-9]*.[0-9]*')"
577+
export APP_VERSION="appver-${SHORT_SHA}-unsupported-overrides"
578+
export RELEASE_YAML_DIR=e2e/kots-release-unsupported-overrides
579+
./scripts/ci-release-app.sh
580+
581+
# then install a version with additional failing host preflights
582+
export EC_VERSION="$(git describe --tags --abbrev=4 --match='[0-9]*.[0-9]*.[0-9]*')"
583+
export APP_VERSION="appver-${SHORT_SHA}-failing-preflights"
584+
export RELEASE_YAML_DIR=e2e/kots-release-install-failing-preflights
585+
./scripts/ci-release-app.sh
586+
587+
# then install a version with additional warning host preflights
588+
export EC_VERSION="$(git describe --tags --abbrev=4 --match='[0-9]*.[0-9]*.[0-9]*')"
589+
export APP_VERSION="appver-${SHORT_SHA}-warning-preflights"
590+
export RELEASE_YAML_DIR=e2e/kots-release-install-warning-preflights
591+
./scripts/ci-release-app.sh
590592
591593
# promote a release with improved dr support
592594
export EC_VERSION="$(git describe --tags --abbrev=4 --match='[0-9]*.[0-9]*.[0-9]*')-legacydr"
@@ -640,6 +642,12 @@ jobs:
640642
export RELEASE_YAML_DIR=e2e/kots-release-install-legacydr
641643
./scripts/ci-release-app.sh
642644
645+
# then a noop upgrade
646+
export EC_VERSION="$(git describe --tags --abbrev=4 --match='[0-9]*.[0-9]*.[0-9]*')"
647+
export APP_VERSION="appver-${SHORT_SHA}-noop"
648+
export RELEASE_YAML_DIR=e2e/kots-release-install
649+
./scripts/ci-release-app.sh
650+
643651
# and finally an app upgrade
644652
export EC_VERSION="$(git describe --tags --abbrev=4 --match='[0-9]*.[0-9]*.[0-9]*')-upgrade"
645653
export APP_VERSION="appver-${SHORT_SHA}-upgrade"
@@ -701,10 +709,9 @@ jobs:
701709
- TestSingleNodeUpgradePreviousStable
702710
- TestInstallFromReplicatedApp
703711
- TestUpgradeFromReplicatedApp
704-
- TestInstallWithoutEmbed
705712
- TestUpgradeEC18FromReplicatedApp
706713
- TestResetAndReinstall
707-
- TestOldVersionUpgrade
714+
# - TestOldVersionUpgrade
708715
- TestInstallSnapshotFromReplicatedApp
709716
- TestMultiNodeInstallation
710717
- TestMultiNodeHAInstallation

.github/workflows/image-scan.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@ jobs:
3030

3131
- name: Install dagger
3232
run: |
33-
curl -fsSL https://dl.dagger.io/dagger/install.sh | DAGGER_VERSION=v0.14.0 sh
33+
curl -fsSL https://dl.dagger.io/dagger/install.sh | sh
3434
sudo mv ./bin/dagger /usr/local/bin/dagger
3535
3636
- name: Build and push local-artifact-mirror image

.github/workflows/release-prod.yaml

Lines changed: 30 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -69,7 +69,7 @@ jobs:
6969

7070
- name: Install dagger
7171
run: |
72-
curl -fsSL https://dl.dagger.io/dagger/install.sh | DAGGER_VERSION=v0.14.0 sh
72+
curl -fsSL https://dl.dagger.io/dagger/install.sh | sh
7373
sudo mv ./bin/dagger /usr/local/bin/dagger
7474
7575
- name: Build and push operator image
@@ -114,7 +114,7 @@ jobs:
114114

115115
- name: Install dagger
116116
run: |
117-
curl -fsSL https://dl.dagger.io/dagger/install.sh | DAGGER_VERSION=v0.14.0 sh
117+
curl -fsSL https://dl.dagger.io/dagger/install.sh | sh
118118
sudo mv ./bin/dagger /usr/local/bin/dagger
119119
120120
- name: Build and push local-artifact-mirror image
@@ -171,7 +171,6 @@ jobs:
171171
VERSION=${{ needs.get-tag.outputs.tag-name }} \
172172
LOCAL_ARTIFACT_MIRROR_IMAGE=proxy.replicated.com/anonymous/${{ needs.publish-images.outputs.local-artifact-mirror }}
173173
tar -C output/bin -czvf build/embedded-cluster-linux-amd64.tgz embedded-cluster
174-
tar -C output/bins -czvf build/manager-linux-amd64.tgz manager
175174
176175
- name: Output Metadata
177176
run: |
@@ -305,17 +304,35 @@ jobs:
305304
export APP_VERSION="appver-${{ github.ref_name }}"
306305
export RELEASE_YAML_DIR=e2e/kots-release-install
307306
./scripts/ci-release-app.sh
307+
308+
# then install a version with alternate unsupported overrides
309+
export EC_VERSION="$(git describe --tags --abbrev=4 --match='[0-9]*.[0-9]*.[0-9]*')"
310+
export APP_VERSION="appver-${SHORT_SHA}-unsupported-overrides"
311+
export RELEASE_YAML_DIR=e2e/kots-release-unsupported-overrides
312+
./scripts/ci-release-app.sh
313+
314+
# then install a version with additional failing host preflights
315+
export EC_VERSION="$(git describe --tags --abbrev=4 --match='[0-9]*.[0-9]*.[0-9]*')"
316+
export APP_VERSION="appver-${SHORT_SHA}-failing-preflights"
317+
export RELEASE_YAML_DIR=e2e/kots-release-install-failing-preflights
318+
./scripts/ci-release-app.sh
319+
320+
# then install a version with additional warning host preflights
321+
export EC_VERSION="$(git describe --tags --abbrev=4 --match='[0-9]*.[0-9]*.[0-9]*')"
322+
export APP_VERSION="appver-${SHORT_SHA}-warning-preflights"
323+
export RELEASE_YAML_DIR=e2e/kots-release-install-warning-preflights
324+
./scripts/ci-release-app.sh
308325
309326
# then a noop upgrade
310327
export EC_VERSION="${{ github.ref_name }}"
311328
export APP_VERSION="appver-${{ github.ref_name }}-noop"
312329
export RELEASE_YAML_DIR=e2e/kots-release-install
313330
./scripts/ci-release-app.sh
314331
315-
# and finally an app upgrade
332+
# and finally an app upgrade
316333
export EC_VERSION="${{ github.ref_name }}"
317334
export APP_VERSION="appver-${{ github.ref_name }}-upgrade"
318-
export RELEASE_YAML_DIR=e2e/kots-release-upgrade
335+
export RELEASE_YAML_DIR=e2e/kots-release-upgrade
319336
./scripts/ci-release-app.sh
320337
321338
- name: Create airgap releases
@@ -344,7 +361,13 @@ jobs:
344361
export RELEASE_YAML_DIR=e2e/kots-release-install
345362
./scripts/ci-release-app.sh
346363
347-
# and finally an app upgrade
364+
# then a noop upgrade
365+
export EC_VERSION="${{ github.ref_name }}"
366+
export APP_VERSION="appver-${{ github.ref_name }}-noop"
367+
export RELEASE_YAML_DIR=e2e/kots-release-install
368+
./scripts/ci-release-app.sh
369+
370+
# and finally an app upgrade
348371
export EC_VERSION="${{ github.ref_name }}"
349372
export APP_VERSION="appver-${{ github.ref_name }}-upgrade"
350373
export RELEASE_YAML_DIR=e2e/kots-release-upgrade
@@ -454,7 +477,7 @@ jobs:
454477
- TestInstallWithoutEmbed
455478
# - TestUpgradeEC18FromReplicatedApp
456479
- TestResetAndReinstall
457-
- TestOldVersionUpgrade
480+
# - TestOldVersionUpgrade
458481
- TestInstallSnapshotFromReplicatedApp
459482
- TestMultiNodeInstallation
460483
- TestMultiNodeHAInstallation

Makefile

Lines changed: 8 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ PREVIOUS_K0S_GO_VERSION ?= v1.28.14+k0s.0
1717
K0S_BINARY_SOURCE_OVERRIDE =
1818
TROUBLESHOOT_VERSION = v0.112.1
1919

20-
KOTS_VERSION = v$(shell awk '/^version/{print $$2}' pkg/addons/adminconsole/static/metadata.yaml | sed -E 's/([0-9]+\.[0-9]+\.[0-9]+).*/\1/')
20+
KOTS_VERSION = v$(shell awk '/^version/{print $$2}' pkg/addons2/adminconsole/static/metadata.yaml | sed -E 's/([0-9]+\.[0-9]+\.[0-9]+).*/\1/')
2121
# When updating KOTS_BINARY_URL_OVERRIDE, also update the KOTS_VERSION above or
2222
# scripts/ci-upload-binaries.sh may find the version in the cache and not upload the overridden binary.
2323
KOTS_BINARY_URL_OVERRIDE =
@@ -28,7 +28,6 @@ LOCAL_ARTIFACT_MIRROR_IMAGE ?= proxy.replicated.com/anonymous/replicated/embedde
2828
# These are used to override the binary urls in dev and e2e tests
2929
METADATA_K0S_BINARY_URL_OVERRIDE =
3030
METADATA_KOTS_BINARY_URL_OVERRIDE =
31-
METADATA_MANAGER_BINARY_URL_OVERRIDE =
3231
METADATA_OPERATOR_BINARY_URL_OVERRIDE =
3332

3433
ifeq ($(K0S_VERSION),v1.30.5+k0s.0-ec.1)
@@ -50,15 +49,14 @@ LD_FLAGS = \
5049
-X github.com/replicatedhq/embedded-cluster/pkg/versions.LocalArtifactMirrorImage=$(LOCAL_ARTIFACT_MIRROR_IMAGE) \
5150
-X github.com/replicatedhq/embedded-cluster/pkg/versions.K0sBinaryURLOverride=$(METADATA_K0S_BINARY_URL_OVERRIDE) \
5251
-X github.com/replicatedhq/embedded-cluster/pkg/versions.KOTSBinaryURLOverride=$(METADATA_KOTS_BINARY_URL_OVERRIDE) \
53-
-X github.com/replicatedhq/embedded-cluster/pkg/versions.ManagerBinaryURLOverride=$(METADATA_MANAGER_BINARY_URL_OVERRIDE) \
5452
-X github.com/replicatedhq/embedded-cluster/pkg/versions.OperatorBinaryURLOverride=$(METADATA_OPERATOR_BINARY_URL_OVERRIDE) \
55-
-X github.com/replicatedhq/embedded-cluster/pkg/addons/adminconsole.ChartRepoOverride=$(ADMIN_CONSOLE_CHART_REPO_OVERRIDE) \
56-
-X github.com/replicatedhq/embedded-cluster/pkg/addons/adminconsole.KurlProxyImageOverride=$(ADMIN_CONSOLE_KURL_PROXY_IMAGE_OVERRIDE) \
57-
-X github.com/replicatedhq/embedded-cluster/pkg/addons/adminconsole.KotsVersion=$(KOTS_VERSION) \
58-
-X github.com/replicatedhq/embedded-cluster/pkg/addons/adminconsole.AdminConsoleChartRepoOverride=$(ADMIN_CONSOLE_CHART_REPO_OVERRIDE) \
59-
-X github.com/replicatedhq/embedded-cluster/pkg/addons/adminconsole.AdminConsoleImageOverride=$(ADMIN_CONSOLE_IMAGE_OVERRIDE) \
60-
-X github.com/replicatedhq/embedded-cluster/pkg/addons/adminconsole.AdminConsoleMigrationsImageOverride=$(ADMIN_CONSOLE_MIGRATIONS_IMAGE_OVERRIDE) \
61-
-X github.com/replicatedhq/embedded-cluster/pkg/addons/adminconsole.AdminConsoleKurlProxyImageOverride=$(ADMIN_CONSOLE_KURL_PROXY_IMAGE_OVERRIDE)
53+
-X github.com/replicatedhq/embedded-cluster/pkg/addons2/adminconsole.ChartRepoOverride=$(ADMIN_CONSOLE_CHART_REPO_OVERRIDE) \
54+
-X github.com/replicatedhq/embedded-cluster/pkg/addons2/adminconsole.KurlProxyImageOverride=$(ADMIN_CONSOLE_KURL_PROXY_IMAGE_OVERRIDE) \
55+
-X github.com/replicatedhq/embedded-cluster/pkg/addons2/adminconsole.KotsVersion=$(KOTS_VERSION) \
56+
-X github.com/replicatedhq/embedded-cluster/pkg/addons2/adminconsole.AdminConsoleChartRepoOverride=$(ADMIN_CONSOLE_CHART_REPO_OVERRIDE) \
57+
-X github.com/replicatedhq/embedded-cluster/pkg/addons2/adminconsole.AdminConsoleImageOverride=$(ADMIN_CONSOLE_IMAGE_OVERRIDE) \
58+
-X github.com/replicatedhq/embedded-cluster/pkg/addons2/adminconsole.AdminConsoleMigrationsImageOverride=$(ADMIN_CONSOLE_MIGRATIONS_IMAGE_OVERRIDE) \
59+
-X github.com/replicatedhq/embedded-cluster/pkg/addons2/adminconsole.AdminConsoleKurlProxyImageOverride=$(ADMIN_CONSOLE_KURL_PROXY_IMAGE_OVERRIDE)
6260
DISABLE_FIO_BUILD ?= 0
6361

6462
export PATH := $(shell pwd)/bin:$(PATH)
@@ -142,13 +140,6 @@ ifneq ($(DISABLE_FIO_BUILD),1)
142140
cp output/bins/fio-$(FIO_VERSION)-$(ARCH) $@
143141
endif
144142

145-
.PHONY: cmd/installer/goods/bins/manager
146-
cmd/installer/goods/bins/manager:
147-
mkdir -p cmd/installer/goods/bins
148-
CGO_ENABLED=0 GOOS=$(OS) GOARCH=$(ARCH) go build -ldflags="-s -w $(LD_FLAGS) -extldflags=-static" -o output/bins/manager ./cmd/manager
149-
cp output/bins/manager $@
150-
touch $@
151-
152143
.PHONY: cmd/installer/goods/internal/bins/kubectl-kots
153144
cmd/installer/goods/internal/bins/kubectl-kots:
154145
mkdir -p cmd/installer/goods/internal/bins
@@ -223,7 +214,6 @@ static: cmd/installer/goods/bins/k0s \
223214
cmd/installer/goods/bins/kubectl-support_bundle \
224215
cmd/installer/goods/bins/local-artifact-mirror \
225216
cmd/installer/goods/bins/fio \
226-
cmd/installer/goods/bins/manager \
227217
cmd/installer/goods/internal/bins/kubectl-kots
228218

229219
.PHONY: static-dryrun
@@ -234,7 +224,6 @@ static-dryrun:
234224
cmd/installer/goods/bins/kubectl-support_bundle \
235225
cmd/installer/goods/bins/local-artifact-mirror \
236226
cmd/installer/goods/bins/fio \
237-
cmd/installer/goods/bins/manager \
238227
cmd/installer/goods/internal/bins/kubectl-kots
239228

240229
.PHONY: embedded-cluster-linux-amd64
@@ -381,10 +370,6 @@ bin/installer:
381370
@mkdir -p bin
382371
go build -o bin/installer ./cmd/installer
383372

384-
.PHONY: bin/manager
385-
bin/manager:
386-
go build -o bin/manager ./cmd/manager
387-
388373
# make test-embed channel=<channelid> app=<appslug>
389374
.PHONY: test-embed
390375
test-emded: export OS=linux

cmd/buildtools/adminconsole.go

Lines changed: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,8 @@ import (
44
"fmt"
55
"strings"
66

7-
"github.com/replicatedhq/embedded-cluster/pkg/addons/adminconsole"
7+
"github.com/replicatedhq/embedded-cluster/pkg/addons2/adminconsole"
8+
"github.com/replicatedhq/embedded-cluster/pkg/helm"
89
"github.com/replicatedhq/embedded-cluster/pkg/release"
910
"github.com/sirupsen/logrus"
1011
"github.com/urfave/cli/v2"
@@ -36,6 +37,12 @@ var updateAdminConsoleAddonCommand = &cli.Command{
3637
Action: func(c *cli.Context) error {
3738
logrus.Infof("updating admin console addon")
3839

40+
hcli, err := NewHelm()
41+
if err != nil {
42+
return fmt.Errorf("failed to create helm client: %w", err)
43+
}
44+
defer hcli.Close()
45+
3946
logrus.Infof("getting admin console latest tag")
4047
latest, err := GetLatestGitHubTag(c.Context, "replicatedhq", "kots-helm")
4148
if err != nil {
@@ -64,7 +71,7 @@ var updateAdminConsoleAddonCommand = &cli.Command{
6471

6572
logrus.Infof("extracting images from chart")
6673
withproto := fmt.Sprintf("oci://%s", upstream)
67-
images, err := GetImagesFromOCIChart(withproto, "adminconsole", latest, values)
74+
images, err := helm.ExtractImagesFromOCIChart(hcli, withproto, "adminconsole", latest, values)
6875
if err != nil {
6976
return fmt.Errorf("failed to get images from admin console chart: %w", err)
7077
}

cmd/buildtools/embeddedclusteroperator.go

Lines changed: 18 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -4,10 +4,10 @@ import (
44
"context"
55
"fmt"
66
"os"
7-
"os/exec"
87
"strings"
98

10-
"github.com/replicatedhq/embedded-cluster/pkg/addons/embeddedclusteroperator"
9+
"github.com/replicatedhq/embedded-cluster/pkg/addons2/embeddedclusteroperator"
10+
"github.com/replicatedhq/embedded-cluster/pkg/helm"
1111
"github.com/replicatedhq/embedded-cluster/pkg/release"
1212
"github.com/sirupsen/logrus"
1313
"github.com/urfave/cli/v2"
@@ -30,6 +30,12 @@ var updateOperatorAddonCommand = &cli.Command{
3030
Action: func(c *cli.Context) error {
3131
logrus.Infof("updating embedded cluster operator addon")
3232

33+
hcli, err := NewHelm()
34+
if err != nil {
35+
return fmt.Errorf("failed to create helm client: %w", err)
36+
}
37+
defer hcli.Close()
38+
3339
nextChartVersion := os.Getenv("INPUT_OPERATOR_CHART_VERSION")
3440
if nextChartVersion != "" {
3541
logrus.Infof("using input override from INPUT_OPERATOR_CHART_VERSION: %s", nextChartVersion)
@@ -69,7 +75,7 @@ var updateOperatorAddonCommand = &cli.Command{
6975
}
7076
}
7177

72-
err := updateOperatorAddonImages(c.Context, chartURL, nextChartVersion)
78+
err = updateOperatorAddonImages(c.Context, hcli, chartURL, nextChartVersion)
7379
if err != nil {
7480
return fmt.Errorf("failed to update embedded cluster operator images: %w", err)
7581
}
@@ -87,9 +93,15 @@ var updateOperatorImagesCommand = &cli.Command{
8793
Action: func(c *cli.Context) error {
8894
logrus.Infof("updating embedded cluster operator images")
8995

96+
hcli, err := NewHelm()
97+
if err != nil {
98+
return fmt.Errorf("failed to create helm client: %w", err)
99+
}
100+
defer hcli.Close()
101+
90102
current := embeddedclusteroperator.Metadata
91103

92-
err := updateOperatorAddonImages(c.Context, current.Location, current.Version)
104+
err = updateOperatorAddonImages(c.Context, hcli, current.Location, current.Version)
93105
if err != nil {
94106
return fmt.Errorf("failed to update embedded cluster operator images: %w", err)
95107
}
@@ -100,7 +112,7 @@ var updateOperatorImagesCommand = &cli.Command{
100112
},
101113
}
102114

103-
func updateOperatorAddonImages(ctx context.Context, chartURL string, chartVersion string) error {
115+
func updateOperatorAddonImages(ctx context.Context, hcli helm.Client, chartURL string, chartVersion string) error {
104116
newmeta := release.AddonMetadata{
105117
Version: chartVersion,
106118
Location: chartURL,
@@ -113,7 +125,7 @@ func updateOperatorAddonImages(ctx context.Context, chartURL string, chartVersio
113125
}
114126

115127
logrus.Infof("extracting images from chart version %s", chartVersion)
116-
images, err := GetImagesFromOCIChart(chartURL, "embeddedclusteroperator", chartVersion, values)
128+
images, err := helm.ExtractImagesFromOCIChart(hcli, chartURL, "embeddedclusteroperator", chartVersion, values)
117129
if err != nil {
118130
return fmt.Errorf("failed to get images from embedded cluster operator chart: %w", err)
119131
}
@@ -135,8 +147,3 @@ func updateOperatorAddonImages(ctx context.Context, chartURL string, chartVersio
135147

136148
return nil
137149
}
138-
139-
func getGitCommitHash() (string, error) {
140-
out, err := exec.Command("git", "rev-parse", "HEAD").Output()
141-
return string(out), err
142-
}

0 commit comments

Comments
 (0)