Skip to content

Commit 44fc7e3

Browse files
committed
Merge remote-tracking branch 'origin/main' into k0s-1-28-7
2 parents ded75d1 + 6c13da8 commit 44fc7e3

Some content is hidden

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

48 files changed

+1598
-1004
lines changed

.github/actions/e2e/action.yml

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,9 @@ inputs:
44
test-name:
55
description: 'individual test to run'
66
required: true
7+
airgap-license-id:
8+
description: 'airgap-enabled license id to use for e2e tests'
9+
required: true
710
license-id:
811
description: 'license id to use for e2e tests'
912
required: true
@@ -36,10 +39,6 @@ runs:
3639
external_ids:ovn-remote=unix:/var/run/ovn/ovnsb_db.sock \
3740
external_ids:ovn-encap-type=geneve \
3841
external_ids:ovn-encap-ip=127.0.0.1
39-
- name: Setup Go
40-
uses: actions/setup-go@v5
41-
with:
42-
go-version: "1.21.0"
4342
- name: Free up runner disk space
4443
shell: bash
4544
run: |
@@ -49,7 +48,8 @@ runs:
4948
- name: E2E
5049
shell: bash
5150
run: |
52-
export SHORT_SHA=$(git rev-parse --short=7 HEAD)
51+
export SHORT_SHA=dev-$(git rev-parse --short=7 HEAD)
5352
export LICENSE_ID=${{ inputs.license-id }}
53+
export AIRGAP_LICENSE_ID=${{ inputs.airgap-license-id }}
5454
echo "${{ inputs.license }}" | base64 --decode > e2e/license.yaml
5555
make e2e-test TEST_NAME=${{ inputs.test-name }}

.github/workflows/dependencies.yaml

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -23,10 +23,18 @@ jobs:
2323
run: |
2424
export VERSION=`curl https://api.github.com/repos/replicatedhq/embedded-cluster-operator/tags | jq -r .[].name | head -1 | tr -d v`
2525
sed -i "/^EMBEDDED_OPERATOR_CHART_VERSION/c\EMBEDDED_OPERATOR_CHART_VERSION = $VERSION" Makefile
26+
- name: Embedded Cluster Operator Utils
27+
run: |
28+
export VERSION=`curl https://raw.githubusercontent.com/docker-library/busybox/master/versions.json | jq -r .latest.version`
29+
sed -i "/^EMBEDDED_OPERATOR_UTILS_IMAGE/c\EMBEDDED_OPERATOR_UTILS_IMAGE = busybox:$VERSION" Makefile
2630
- name: OpenEBS
2731
run: |
2832
export VERSION=`curl https://api.github.com/repos/openebs/charts/releases/latest | jq -r .name | tr -d openebs-`
2933
sed -i "/^OPENEBS_CHART_VERSION/c\OPENEBS_CHART_VERSION = $VERSION" Makefile
34+
- name: OpenEBS utils
35+
run: |
36+
export VERSION=`curl https://api.github.com/repos/openebs/linux-utils/releases/latest | jq -r .name | tr -d v`
37+
sed -i "/^OPENEBS_UTILS_VERSION/c\OPENEBS_UTILS_VERSION = $VERSION" Makefile
3038
- name: SeaweedFS
3139
run: |
3240
export VERSION=`curl https://raw.githubusercontent.com/seaweedfs/seaweedfs/master/k8s/charts/seaweedfs/Chart.yaml | grep version | tr -d 'version: '`

.github/workflows/pull-request.yaml

Lines changed: 24 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -44,15 +44,15 @@ jobs:
4444
steps:
4545
- name: Checkout
4646
uses: actions/checkout@v4
47-
- name: Get short commit hash
48-
run: echo "SHORT_SHA=$(git rev-parse --short=7 HEAD)" >> $GITHUB_ENV
4947
- name: Setup Go
5048
uses: actions/setup-go@v5
5149
with:
5250
go-version: "1.21.0"
5351
- name: Build Linux AMD64
5452
run: |
55-
make embedded-cluster-linux-amd64 VERSION=dev-$SHORT_SHA
53+
export SHORT_SHA=dev-$(git rev-parse --short=7 HEAD)
54+
make embedded-cluster-linux-amd64 VERSION="${SHORT_SHA}"
55+
tar -C output/bin -czvf embedded-cluster-linux-amd64.tgz embedded-cluster
5656
- name: Output Metadata
5757
run: |
5858
./output/bin/embedded-cluster version metadata > metadata.json
@@ -71,7 +71,7 @@ jobs:
7171
REPLICATED_API_TOKEN: ${{ secrets.STAGING_REPLICATED_API_TOKEN }}
7272
REPLICATED_API_ORIGIN: "https://api.staging.replicated.com/vendor"
7373
run: |
74-
export SHORT_SHA=$(git rev-parse --short=7 HEAD)
74+
export SHORT_SHA=dev-$(git rev-parse --short=7 HEAD)
7575
echo "${SHORT_SHA}"
7676
sed -i "s/__version_string__/${SHORT_SHA}/g" e2e/kots-release-install/cluster-config.yaml
7777
sed -i "s/__version_string__/${SHORT_SHA}-upgrade/g" e2e/kots-release-upgrade/cluster-config.yaml
@@ -83,26 +83,40 @@ jobs:
8383
replicated release create --yaml-dir e2e/kots-release-upgrade --promote CI --version "${SHORT_SHA}-upgrade"
8484
- name: Build CI binary
8585
run: |
86-
export SHORT_SHA=$(git rev-parse --short=7 HEAD)
86+
export SHORT_SHA=dev-$(git rev-parse --short=7 HEAD)
8787
echo "# channel release object" > e2e/kots-release-install/release.yaml
8888
echo 'channelID: "2cHXb1RCttzpR0xvnNWyaZCgDBP"' >> e2e/kots-release-install/release.yaml
8989
echo 'appSlug: "embedded-cluster-smoke-test-staging-app"' >> e2e/kots-release-install/release.yaml
9090
echo "versionLabel: \"${SHORT_SHA}\"" >> e2e/kots-release-install/release.yaml
9191
cat e2e/kots-release-install/release.yaml
9292
cp output/bin/embedded-cluster output/bin/embedded-cluster-original
93-
make embedded-release # this is done after the metadata.json is generated so as to not include additional charts
93+
make embedded-release VERSION="${SHORT_SHA}" # this is done after the metadata.json is generated so as to not include additional charts
9494
- name: Cache files for integration test
9595
env:
9696
S3_BUCKET: "tf-staging-embedded-cluster-bin"
9797
AWS_ACCESS_KEY_ID: ${{ secrets.STAGING_EMBEDDED_CLUSTER_UPLOAD_IAM_KEY_ID }}
9898
AWS_SECRET_ACCESS_KEY: ${{ secrets.STAGING_EMBEDDED_CLUSTER_UPLOAD_IAM_SECRET }}
9999
AWS_REGION: "us-east-1"
100100
run: |
101-
export SHORT_SHA=$(git rev-parse --short=7 HEAD)
101+
export SHORT_SHA=dev-$(git rev-parse --short=7 HEAD)
102102
export EC_VERSION="v${SHORT_SHA}"
103103
./scripts/cache-files.sh
104104
./scripts/create-upgrade-release.sh
105105
106+
- name: Create Airgap Release
107+
env:
108+
REPLICATED_APP: "embedded-cluster-smoke-test-staging-app"
109+
REPLICATED_API_TOKEN: ${{ secrets.STAGING_REPLICATED_API_TOKEN }}
110+
REPLICATED_API_ORIGIN: "https://api.staging.replicated.com/vendor"
111+
run: |
112+
export SHORT_SHA=dev-$(git rev-parse --short=7 HEAD)
113+
echo "${SHORT_SHA}"
114+
sed -i "s/__version_string__/${SHORT_SHA}/g" e2e/kots-release-install/cluster-config.yaml
115+
sed -i "s/__version_string__/${SHORT_SHA}-upgrade/g" e2e/kots-release-upgrade/cluster-config.yaml
116+
117+
rm e2e/kots-release-install/release.yaml
118+
replicated release create --yaml-dir e2e/kots-release-install --promote CI-airgap --version "${SHORT_SHA}"
119+
106120
- name: upload binary
107121
uses: actions/upload-artifact@v4
108122
with:
@@ -131,11 +145,13 @@ jobs:
131145
- TestMultiNodeReset
132146
- TestCommandsRequireSudo
133147
- TestInstallWithoutEmbed
148+
- TestInstallFromReplicatedApp
134149
- TestResetAndReinstall
135150
- TestCollectSupportBundle
136151
- TestOldVersionUpgrade
137152
- TestMaterialize
138153
- TestLocalArtifactMirror
154+
- TestSingleNodeAirgapInstallationUbuntuJammy
139155
steps:
140156
- name: Checkout
141157
uses: actions/checkout@v4
@@ -147,5 +163,6 @@ jobs:
147163
- uses: ./.github/actions/e2e
148164
with:
149165
test-name: '${{ matrix.tests }}'
166+
airgap-license-id: ${{ secrets.STAGING_EMBEDDED_CLUSTER_AIRGAP_LICENSE_ID }}
150167
license-id: ${{ secrets.STAGING_EMBEDDED_CLUSTER_LICENSE_ID }}
151168
license: ${{ secrets.STAGING_EMBEDDED_CLUSTER_LICENSE }}

.github/workflows/release-dev.yaml

Lines changed: 18 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -49,7 +49,7 @@ jobs:
4949
REPLICATED_API_TOKEN: ${{ secrets.STAGING_REPLICATED_API_TOKEN }}
5050
REPLICATED_API_ORIGIN: "https://api.staging.replicated.com/vendor"
5151
run: |
52-
export SHORT_SHA=$(git rev-parse --short=7 HEAD)
52+
export SHORT_SHA=dev-$(git rev-parse --short=7 HEAD)
5353
echo "${SHORT_SHA}"
5454
sed -i "s/__version_string__/${SHORT_SHA}/g" e2e/kots-release-install/cluster-config.yaml
5555
sed -i "s/__version_string__/${SHORT_SHA}-upgrade/g" e2e/kots-release-upgrade/cluster-config.yaml
@@ -61,7 +61,7 @@ jobs:
6161
replicated release create --yaml-dir e2e/kots-release-upgrade --promote CI --version "${SHORT_SHA}-upgrade"
6262
- name: Build CI binary
6363
run: |
64-
export SHORT_SHA=$(git rev-parse --short=7 HEAD)
64+
export SHORT_SHA=dev-$(git rev-parse --short=7 HEAD)
6565
echo "# channel release object" > e2e/kots-release-install/release.yaml
6666
echo 'channelID: "2cHXb1RCttzpR0xvnNWyaZCgDBP"' >> e2e/kots-release-install/release.yaml
6767
echo 'appSlug: "embedded-cluster-smoke-test-staging-app"' >> e2e/kots-release-install/release.yaml
@@ -76,10 +76,23 @@ jobs:
7676
AWS_SECRET_ACCESS_KEY: ${{ secrets.STAGING_EMBEDDED_CLUSTER_UPLOAD_IAM_SECRET }}
7777
AWS_REGION: "us-east-1"
7878
run: |
79-
export SHORT_SHA=$(git rev-parse --short=7 HEAD)
79+
export SHORT_SHA=dev-$(git rev-parse --short=7 HEAD)
8080
export EC_VERSION="v${SHORT_SHA}"
8181
./scripts/cache-files.sh
8282
./scripts/create-upgrade-release.sh
83+
- name: Create Airgap Release
84+
env:
85+
REPLICATED_APP: "embedded-cluster-smoke-test-staging-app"
86+
REPLICATED_API_TOKEN: ${{ secrets.STAGING_REPLICATED_API_TOKEN }}
87+
REPLICATED_API_ORIGIN: "https://api.staging.replicated.com/vendor"
88+
run: |
89+
export SHORT_SHA=dev-$(git rev-parse --short=7 HEAD)
90+
echo "${SHORT_SHA}"
91+
sed -i "s/__version_string__/${SHORT_SHA}/g" e2e/kots-release-install/cluster-config.yaml
92+
sed -i "s/__version_string__/${SHORT_SHA}-upgrade/g" e2e/kots-release-upgrade/cluster-config.yaml
93+
94+
rm e2e/kots-release-install/release.yaml
95+
replicated release create --yaml-dir e2e/kots-release-install --promote CI-airgap --version "${SHORT_SHA}"
8396
8497
- name: upload binary
8598
uses: actions/upload-artifact@v4
@@ -114,6 +127,7 @@ jobs:
114127
- TestOldVersionUpgrade
115128
- TestMaterialize
116129
- TestLocalArtifactMirror
130+
- TestSingleNodeAirgapInstallationUbuntuJammy
117131
steps:
118132
- name: Checkout
119133
uses: actions/checkout@v4
@@ -125,5 +139,6 @@ jobs:
125139
- uses: ./.github/actions/e2e
126140
with:
127141
test-name: '${{ matrix.tests }}'
142+
airgap-license-id: ${{ secrets.STAGING_EMBEDDED_CLUSTER_AIRGAP_LICENSE_ID }}
128143
license-id: ${{ secrets.STAGING_EMBEDDED_CLUSTER_LICENSE_ID }}
129144
license: ${{ secrets.STAGING_EMBEDDED_CLUSTER_LICENSE }}

.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
output
22
bundle
33
pkg/goods/bins
4+
pkg/goods/internal/bins
45
pkg/goods/images
56
*tgz
67
.pre-commit-config.yaml

Makefile

Lines changed: 17 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4,15 +4,17 @@ ARCH := $(shell uname -m)
44
APP_NAME = embedded-cluster
55
ADMIN_CONSOLE_CHART_URL = oci://registry.replicated.com/library
66
ADMIN_CONSOLE_CHART_NAME = admin-console
7-
ADMIN_CONSOLE_CHART_VERSION = 1.108.1
7+
ADMIN_CONSOLE_CHART_VERSION = 1.108.3-build.1
88
ADMIN_CONSOLE_IMAGE_OVERRIDE =
99
ADMIN_CONSOLE_MIGRATIONS_IMAGE_OVERRIDE =
1010
EMBEDDED_OPERATOR_CHART_URL = oci://registry.replicated.com/library
1111
EMBEDDED_OPERATOR_CHART_NAME = embedded-cluster-operator
12-
EMBEDDED_OPERATOR_CHART_VERSION = 0.25.0
12+
EMBEDDED_OPERATOR_CHART_VERSION = 0.25.2
13+
EMBEDDED_OPERATOR_UTILS_IMAGE = busybox:1.36.1
1314
OPENEBS_CHART_URL = https://openebs.github.io/charts
1415
OPENEBS_CHART_NAME = openebs/openebs
1516
OPENEBS_CHART_VERSION = 3.10.0
17+
OPENEBS_UTILS_VERSION = 4.0.0
1618
REGISTRY_CHART_URL = https://helm.twun.io
1719
REGISTRY_CHART_NAME = twuni/docker-registry
1820
REGISTRY_CHART_VERSION = 2.2.3
@@ -21,6 +23,7 @@ KUBECTL_VERSION = v1.28.7
2123
K0S_VERSION = v1.28.7+k0s.0
2224
K0S_BINARY_SOURCE_OVERRIDE =
2325
TROUBLESHOOT_VERSION = v0.84.1
26+
KOTS_VERSION = v$(shell echo $(ADMIN_CONSOLE_CHART_VERSION) | sed 's/\([0-9]\+\.[0-9]\+\.[0-9]\+\).*/\1/')
2427
LD_FLAGS = -X github.com/replicatedhq/embedded-cluster/pkg/defaults.K0sVersion=$(K0S_VERSION) \
2528
-X github.com/replicatedhq/embedded-cluster/pkg/defaults.Version=$(VERSION) \
2629
-X github.com/replicatedhq/embedded-cluster/pkg/defaults.K0sBinaryURL=$(K0S_BINARY_SOURCE_OVERRIDE) \
@@ -34,9 +37,11 @@ LD_FLAGS = -X github.com/replicatedhq/embedded-cluster/pkg/defaults.K0sVersion=$
3437
-X github.com/replicatedhq/embedded-cluster/pkg/addons/embeddedclusteroperator.ChartURL=$(EMBEDDED_OPERATOR_CHART_URL) \
3538
-X github.com/replicatedhq/embedded-cluster/pkg/addons/embeddedclusteroperator.ChartName=$(EMBEDDED_OPERATOR_CHART_NAME) \
3639
-X github.com/replicatedhq/embedded-cluster/pkg/addons/embeddedclusteroperator.Version=$(EMBEDDED_OPERATOR_CHART_VERSION) \
40+
-X github.com/replicatedhq/embedded-cluster/pkg/addons/embeddedclusteroperator.UtilsImage=$(EMBEDDED_OPERATOR_UTILS_IMAGE) \
3741
-X github.com/replicatedhq/embedded-cluster/pkg/addons/openebs.ChartURL=$(OPENEBS_CHART_URL) \
3842
-X github.com/replicatedhq/embedded-cluster/pkg/addons/openebs.ChartName=$(OPENEBS_CHART_NAME) \
3943
-X github.com/replicatedhq/embedded-cluster/pkg/addons/openebs.Version=$(OPENEBS_CHART_VERSION) \
44+
-X github.com/replicatedhq/embedded-cluster/pkg/addons/openebs.UtilsVersion=$(OPENEBS_UTILS_VERSION) \
4045
-X github.com/replicatedhq/embedded-cluster/pkg/addons/registry.ChartURL=$(REGISTRY_CHART_URL) \
4146
-X github.com/replicatedhq/embedded-cluster/pkg/addons/registry.ChartName=$(REGISTRY_CHART_NAME) \
4247
-X github.com/replicatedhq/embedded-cluster/pkg/addons/registry.Version=$(REGISTRY_CHART_VERSION) \
@@ -81,6 +86,14 @@ pkg/goods/bins/local-artifact-mirror: Makefile
8186
mkdir -p pkg/goods/bins
8287
CGO_ENABLED=0 go build -o pkg/goods/bins/local-artifact-mirror ./cmd/local-artifact-mirror
8388

89+
pkg/goods/internal/bins/kubectl-kots: Makefile
90+
mkdir -p pkg/goods/internal/bins
91+
mkdir -p output/tmp/kots
92+
curl -L -o output/tmp/kots/kots.tar.gz https://github.com/replicatedhq/kots/releases/download/$(KOTS_VERSION)/kots_linux_amd64.tar.gz
93+
tar -xzf output/tmp/kots/kots.tar.gz -C output/tmp/kots
94+
mv output/tmp/kots/kots pkg/goods/internal/bins/kubectl-kots
95+
touch pkg/goods/internal/bins/kubectl-kots
96+
8497
output/tmp/release.tar.gz: e2e/kots-release-install/*
8598
mkdir -p output/tmp
8699
tar -czf output/tmp/release.tar.gz -C e2e/kots-release-install .
@@ -102,7 +115,8 @@ static: pkg/goods/bins/k0s \
102115
pkg/goods/bins/kubectl-preflight \
103116
pkg/goods/bins/kubectl \
104117
pkg/goods/bins/kubectl-support_bundle \
105-
pkg/goods/bins/local-artifact-mirror
118+
pkg/goods/bins/local-artifact-mirror \
119+
pkg/goods/internal/bins/kubectl-kots
106120

107121
.PHONY: embedded-cluster-linux-amd64
108122
embedded-cluster-linux-amd64: static go.mod

0 commit comments

Comments
 (0)