@@ -537,25 +537,12 @@ jobs:
537
537
docker push ttl.sh/automated-${{ github.run_id }}/dex:${{ steps.dotenv.outputs.DEX_TAG }}
538
538
539
539
540
- # only run validate-kurl-addon if changes to "deploy/kurl/kotsadm/template/**"
541
- kurl-addon-changes-filter :
540
+ generate-kurl-addon :
542
541
runs-on : ubuntu-20.04
543
- needs : [ can-run-ci, enable-tests ]
542
+ needs : [ can-run-ci, enable-tests, generate-tag, build-kots, build-push-kotsadm-image, build-kurl-proxy, build-migrations, push-dex ]
544
543
outputs :
545
- ok-to-test : ${{ steps.filter.outputs.kurl-addon }}
546
- steps :
547
- - uses : actions/checkout@v3
548
- - uses : dorny/paths-filter@v2
549
- id : filter
550
- with :
551
- filters : |
552
- kurl-addon:
553
- - 'deploy/kurl/kotsadm/template/**'
554
- - 'deploy/kurl/kotsadm/testgrid-os-spec.yaml'
555
- validate-kurl-addon :
556
- runs-on : ubuntu-20.04
557
- if : ${{ needs.kurl-addon-changes-filter.outputs.ok-to-test == 'true' }}
558
- needs : [ can-run-ci, enable-tests, generate-tag, kurl-addon-changes-filter, build-kots, build-push-kotsadm-image, build-kurl-proxy, build-migrations, push-dex ]
544
+ addon_version : ${{ steps.vars.outputs.addon_version }}
545
+ addon_package_url : ${{ steps.addon-generate.outputs.addon_package_url }}
559
546
steps :
560
547
- name : checkout
561
548
uses : actions/checkout@v3
@@ -586,12 +573,34 @@ jobs:
586
573
kotsadm_image_namespace : automated-${{ github.run_id }}
587
574
kotsadm_image_tag : 24h
588
575
kotsadm_binary_override : bin/kots.tar.gz
576
+ # only run validate-kurl-addon if changes to "deploy/kurl/kotsadm/template/**"
577
+ kurl-addon-changes-filter :
578
+ runs-on : ubuntu-20.04
579
+ needs : [ can-run-ci, enable-tests ]
580
+ outputs :
581
+ ok-to-test : ${{ steps.filter.outputs.kurl-addon }}
582
+ steps :
583
+ - uses : actions/checkout@v3
584
+ - uses : dorny/paths-filter@v2
585
+ id : filter
586
+ with :
587
+ filters : |
588
+ kurl-addon:
589
+ - 'deploy/kurl/kotsadm/template/**'
590
+ - 'deploy/kurl/kotsadm/testgrid-os-spec.yaml'
591
+ validate-kurl-addon :
592
+ runs-on : ubuntu-20.04
593
+ if : ${{ needs.kurl-addon-changes-filter.outputs.ok-to-test == 'true' }}
594
+ needs : [ can-run-ci, enable-tests, kurl-addon-changes-filter, generate-kurl-addon ]
595
+ steps :
596
+ - name : checkout
597
+ uses : actions/checkout@v3
589
598
- name : test kurl add-on
590
599
id : addon-test
591
600
uses : ./.github/actions/kurl-addon-kots-test
592
601
with :
593
- addon_version : ${{ steps.vars .outputs.addon_version }}
594
- addon_package_url : ${{ steps.addon- generate.outputs.addon_package_url }}
602
+ addon_version : ${{ needs.generate-kurl-addon .outputs.addon_version }}
603
+ addon_package_url : ${{ needs. generate-kurl-addon .outputs.addon_package_url }}
595
604
testgrid_api_token : ${{ secrets.TESTGRID_PROD_API_TOKEN }}
596
605
- name : comment testgrid url
597
606
uses : mshick/add-pr-comment@v2
@@ -600,6 +609,63 @@ jobs:
600
609
repo-token : ${{ secrets.GITHUB_TOKEN }}
601
610
allow-repeats : false
602
611
612
+
613
+ create-kurl-installer :
614
+ runs-on : ubuntu-20.04
615
+ needs : [ can-run-ci, enable-tests, generate-kurl-addon ]
616
+ steps :
617
+ - uses : actions/checkout@v3
618
+ with :
619
+ fetch-depth : 0
620
+ - name : create installer
621
+ id : create-installer
622
+ run : |
623
+ set +e
624
+
625
+ echo "apiVersion: cluster.kurl.sh/v1beta1
626
+ kind: Installer
627
+ metadata:
628
+ name: kots-ci-installer
629
+ spec:
630
+ kubernetes:
631
+ version: 1.28.x
632
+ flannel:
633
+ version: latest
634
+ minio:
635
+ version: latest
636
+ openebs:
637
+ version: latest
638
+ isLocalPVEnabled: true
639
+ localPVStorageClassName: default
640
+ isCstorEnabled: false
641
+ contour:
642
+ version: latest
643
+ containerd:
644
+ version: latest
645
+ registry:
646
+ version: latest
647
+ kotsadm:
648
+ version: ${{ needs.generate-kurl-addon.outputs.addon_version }}
649
+ s3Override: ${{ needs.generate-kurl-addon.outputs.addon_package_url }}
650
+ ekco:
651
+ version: latest
652
+ enableInternalLoadBalancer: true" > installer.yaml
653
+
654
+ installer_url=$(curl -s -X POST https://k8s.kurl.sh/installer -H 'Content-Type: text/yaml' --data-binary @installer.yaml)
655
+ installer_id=${installer_url#"https://kurl.sh/"}
656
+ echo "installer_id=$installer_id" >> $GITHUB_OUTPUT
657
+ outputs :
658
+ installer_id : ${{ steps.create-installer.outputs.installer_id }}
659
+
660
+
661
+ echo-kurl-installer-id :
662
+ runs-on : ubuntu-20.04
663
+ needs : [ can-run-ci, enable-tests, create-kurl-installer ]
664
+ steps :
665
+ - name : echo installer id
666
+ run : |
667
+ echo "installer_id=${{ needs.create-kurl-installer.outputs.installer_id }}"
668
+
603
669
604
670
cmx-versions :
605
671
runs-on : ubuntu-20.04
0 commit comments