@@ -182,7 +182,6 @@ jobs:
182182 run : |
183183 export K0S_VERSION=$(make print-K0S_VERSION)
184184 export EC_VERSION=$(git describe --tags --abbrev=4 --match='[0-9]*.[0-9]*.[0-9]*')
185- export SHORT_SHA=dev-${{ needs.git-sha.outputs.git_sha }}
186185 export APP_VERSION=appver-dev-${{ needs.git-sha.outputs.git_sha }}
187186 # avoid rate limiting
188187 export FIO_VERSION=$(gh release list --repo axboe/fio --json tagName,isLatest | jq -r '.[] | select(.isLatest==true)|.tagName' | cut -d- -f2)
@@ -205,6 +204,75 @@ jobs:
205204 echo "K0S_VERSION=\"$K0S_VERSION\""
206205 echo "k0s_version=$K0S_VERSION" >> "$GITHUB_OUTPUT"
207206
207+ build-newdr :
208+ name : Build new DR
209+ runs-on : embedded-cluster
210+ needs :
211+ - git-sha
212+ outputs :
213+ k0s_version : ${{ steps.export.outputs.k0s_version }}
214+ steps :
215+ - name : Checkout
216+ uses : actions/checkout@v4
217+ with :
218+ fetch-depth : 0
219+
220+ - name : Cache embedded bins
221+ uses : actions/cache@v4
222+ with :
223+ path : |
224+ output/bins
225+ key : bins-cache
226+
227+ - name : Setup go
228+ uses : actions/setup-go@v5
229+ with :
230+ go-version-file : go.mod
231+ cache-dependency-path : " **/*.sum"
232+
233+ - name : Install dagger
234+ run : |
235+ curl -fsSL https://dl.dagger.io/dagger/install.sh | sh
236+ sudo mv ./bin/dagger /usr/local/bin/dagger
237+
238+ - name : Build
239+ env :
240+ APP_CHANNEL_ID : 2cHXb1RCttzpR0xvnNWyaZCgDBP
241+ APP_CHANNEL_SLUG : ci
242+ RELEASE_YAML_DIR : e2e/kots-release-install-newdr
243+ S3_BUCKET : " tf-staging-embedded-cluster-bin"
244+ USES_DEV_BUCKET : " 0"
245+ AWS_ACCESS_KEY_ID : ${{ secrets.STAGING_EMBEDDED_CLUSTER_UPLOAD_IAM_KEY_ID }}
246+ AWS_SECRET_ACCESS_KEY : ${{ secrets.STAGING_EMBEDDED_CLUSTER_UPLOAD_IAM_SECRET }}
247+ AWS_REGION : " us-east-1"
248+ USE_CHAINGUARD : " 1"
249+ UPLOAD_BINARIES : " 1"
250+ SKIP_RELEASE : " 1"
251+ GH_TOKEN : ${{ secrets.GITHUB_TOKEN }}
252+ run : |
253+ export K0S_VERSION=$(make print-K0S_VERSION)
254+ export EC_VERSION=$(git describe --tags --abbrev=4 --match='[0-9]*.[0-9]*.[0-9]*')-newdr
255+ export APP_VERSION=appver-dev-${{ needs.git-sha.outputs.git_sha }}-newdr
256+ # avoid rate limiting
257+ export FIO_VERSION=$(gh release list --repo axboe/fio --json tagName,isLatest | jq -r '.[] | select(.isLatest==true)|.tagName' | cut -d- -f2)
258+
259+ ./scripts/build-and-release.sh
260+ cp output/bin/embedded-cluster output/bin/embedded-cluster-newdr
261+
262+ - name : Upload release
263+ uses : actions/upload-artifact@v4
264+ with :
265+ name : newdr-release
266+ path : |
267+ output/bin/embedded-cluster-newdr
268+
269+ - name : Export k0s version
270+ id : export
271+ run : |
272+ K0S_VERSION="$(make print-K0S_VERSION)"
273+ echo "K0S_VERSION=\"$K0S_VERSION\""
274+ echo "k0s_version=$K0S_VERSION" >> "$GITHUB_OUTPUT"
275+
208276 build-previous-k0s :
209277 name : Build previous k0s
210278 runs-on : embedded-cluster
@@ -260,6 +328,7 @@ jobs:
260328 export FIO_VERSION=$(gh release list --repo axboe/fio --json tagName,isLatest | jq -r '.[] | select(.isLatest==true)|.tagName' | cut -d- -f2)
261329
262330 ./scripts/build-and-release.sh
331+ cp output/bin/embedded-cluster output/bin/embedded-cluster-previous-k0s
263332
264333 - name : Upload release
265334 uses : actions/upload-artifact@v4
@@ -363,6 +432,7 @@ jobs:
363432 export FIO_VERSION=$(gh release list --repo axboe/fio --json tagName,isLatest | jq -r '.[] | select(.isLatest==true)|.tagName' | cut -d- -f2)
364433
365434 ./scripts/build-and-release.sh
435+ cp output/bin/embedded-cluster output/bin/embedded-cluster-upgrade
366436
367437 - name : Upload release
368438 uses : actions/upload-artifact@v4
@@ -439,6 +509,7 @@ jobs:
439509 needs :
440510 - git-sha
441511 - build-current
512+ - build-newdr
442513 - build-previous-k0s
443514 - build-upgrade
444515 - find-previous-stable
@@ -492,6 +563,12 @@ jobs:
492563 export RELEASE_YAML_DIR=e2e/kots-release-install
493564 ./scripts/ci-release-app.sh
494565
566+ # promote a release with improved dr support
567+ export EC_VERSION="$(git describe --tags --abbrev=4 --match='[0-9]*.[0-9]*.[0-9]*')-newdr"
568+ export APP_VERSION="appver-${SHORT_SHA}-newdr"
569+ export RELEASE_YAML_DIR=e2e/kots-release-install-newdr
570+ ./scripts/ci-release-app.sh
571+
495572 # then a noop upgrade
496573 export EC_VERSION="$(git describe --tags --abbrev=4 --match='[0-9]*.[0-9]*.[0-9]*')"
497574 export APP_VERSION="appver-${SHORT_SHA}-noop"
@@ -532,6 +609,12 @@ jobs:
532609 export RELEASE_YAML_DIR=e2e/kots-release-install
533610 ./scripts/ci-release-app.sh
534611
612+ # promote a release with improved dr support
613+ export EC_VERSION="$(git describe --tags --abbrev=4 --match='[0-9]*.[0-9]*.[0-9]*')-newdr"
614+ export APP_VERSION="appver-${SHORT_SHA}-newdr"
615+ export RELEASE_YAML_DIR=e2e/kots-release-install-newdr
616+ ./scripts/ci-release-app.sh
617+
535618 # and finally an app upgrade
536619 export EC_VERSION="$(git describe --tags --abbrev=4 --match='[0-9]*.[0-9]*.[0-9]*')-upgrade"
537620 export APP_VERSION="appver-${SHORT_SHA}-upgrade"
@@ -571,6 +654,7 @@ jobs:
571654 needs :
572655 - git-sha
573656 - build-current
657+ - build-newdr
574658 - build-previous-k0s
575659 - build-upgrade
576660 - find-previous-stable
@@ -600,6 +684,7 @@ jobs:
600684 - TestMultiNodeInstallation
601685 - TestMultiNodeHAInstallation
602686 - TestSingleNodeDisasterRecovery
687+ - TestSingleNodeNewDisasterRecovery
603688 - TestSingleNodeResumeDisasterRecovery
604689 - TestMultiNodeHADisasterRecovery
605690 - TestSingleNodeInstallationNoopUpgrade
@@ -618,6 +703,11 @@ jobs:
618703 with :
619704 name : current-release
620705 path : output/bin
706+ - name : Download new DR binary
707+ uses : actions/download-artifact@v4
708+ with :
709+ name : newdr-release
710+ path : output/bin
621711 - name : Setup go
622712 uses : actions/setup-go@v5
623713 with :
@@ -664,6 +754,7 @@ jobs:
664754 runs-on : ${{ matrix.runner || 'ubuntu-22.04' }}
665755 needs :
666756 - build-current
757+ - build-newdr
667758 - build-previous-k0s
668759 - build-upgrade
669760 - find-previous-stable
0 commit comments