rancher / ecm-distro-tools

Apache License 2.0
9 stars 25 forks source link

Use GH actions for build/release - rancher/rancher #425

Open tashima42 opened 2 months ago

tashima42 commented 2 months ago

Migrate http://github.com/rancher/rancher to GH Actions

Tasks:

rafaelbreno commented 2 months ago

[rancher/rancher] Drone to GHA migration

Scripts mentioning Drone:

Secrets from_secret

tashima42 commented 2 months ago

GitHub Workflows

⚠️ Steps are not in order yet ⚠️

Pull Request

Push on Master or Release Branches

Tag Creation

Promote There should be two versions, one for stable and the other for latest.

Drone Pipelines

Expand ## provisioning-tests-k3s | Label | Value | |-------------|-------------------------------| | Pipeline | provisioning-tests-k3s | | Name | provisioning-tests-pr | | Platform | linux-amd64 | | Triggers | Pull Requests | | Instance | All | | Label | Value | |-------------|------------------------------------| | Pipeline | provisioning-tests-k3s | | Name | provisioning-tests-push | | Platform | linux-amd64 | | Triggers | Push on master or release branches | | Instance | drone-publish.rancher.io | ## provisioning-tests-rke2 | Label | Value | |-------------|--------------------------------| | Pipeline | provisioning-tests-rke2 | | Name | provisioning-tests-pr | | Platform | linux-amd64 | | Triggers | Pull Requests | | Instance | All | | Label | Value | |-------------|-------------------------------------| | Pipeline | provisioning-tests-rke2 | | Name | provisioning-tests-push | | Platform | linux-amd64 | | Triggers | Push on master or release branches | | Instance | drone-publish.rancher.io | ## provisioning-operations-tests-k3s | Label | Value | |-------------|-----------------------------------| | Pipeline | provisioning-operations-tests-k3s | | Name | provisioning-operations-tests-pr | | Platform | linux-amd64 | | Triggers | Pull Requests | | Instance | All | | Label | Value | |----------|-------------------------------------| | Pipeline | provisioning-operations-tests-k3s | | Name | provisioning-operations-tests-push | | Platform | linux-amd64 | | Triggers | Push on master or release branches | | Instance | drone-publish.rancher.io | ## provisioning-operations-test-setA-rke2 | Label | Value | |----------|----------------------------------------| | Pipeline | provisioning-operations-test-setA-rke2 | | Name | provisioning-operations-tests-pr | | Platform | linux-amd64 | | Triggers | Pull Requests | | Instance | All | | Label | Value | |----------|----------------------------------------| | Pipeline | provisioning-operations-test-setA-rke2 | | Name | provisioning-operations-tests-push | | Platform | linux-amd64 | | Triggers | Push on master or release branches | | Instance | drone-publish.rancher.io | ## provisioning-operations-test-setB-rke2 | Label | Value | |----------|----------------------------------------| | Pipeline | provisioning-operations-test-setB-rke2 | | Name | provisioning-operations-tests-pr | | Platform | linux-amd64 | | Triggers | Pull Requests | | Instance | All | | Label | Value | |----------|----------------------------------------| | Pipeline | provisioning-operations-test-setB-rke2 | | Name | provisioning-operations-tests-push | | Platform | linux-amd64 | | Triggers | Push on master or release branches | | Instance | drone-publish.rancher.io | ## default-linux-amd64 | Label | Value | |----------|---------------------| | Pipeline | default-linux-amd64 | | Name | build-pr | | Platform | linux-amd64 | | Triggers | Pull Requests | | Instance | All | | Label | Value | |----------|----------------------------------------------------| | Pipeline | default-linux-amd64 | | Name | build-push-tag | | Platform | linux-amd64 | | Triggers | Push on master or release branches or tag creation | | Instance | drone-publish.rancher.io | | Label | Value | |----------|----------------------------------------------------| | Pipeline | default-linux-amd64 | | Name | fossa-amd64 | | Platform | linux-amd64 | | Triggers | Push on master or release branches or tag creation | | Instance | drone-publish.rancher.io | | Label | Value | |----------|----------------------------------------------------| | Pipeline | default-linux-amd64 | | Name | stage-binaries | | Platform | linux-amd64 | | Triggers | Push on master or release branches or tag creation | | Instance | drone-publish.rancher.io | | Label | Value | |----------|------------------------------------| | Pipeline | default-linux-amd64 | | Name | docker-publish-head | | Platform | linux-amd64 | | Triggers | Push on master or release branches | | Instance | All | | Label | Value | |----------|------------------------------------| | Pipeline | default-linux-amd64 | | Name | docker-publish-head-installer | | Platform | linux-amd64 | | Triggers | Push on master or release branches | | Instance | All | | Label | Value | |----------|------------------------------------| | Pipeline | default-linux-amd64 | | Name | docker-publish-head-agent | | Platform | linux-amd64 | | Triggers | Push on master or release branches | | Instance | All | | Label | Value | |----------|---------------------| | Pipeline | default-linux-amd64 | | Name | docker-publish | | Platform | linux-amd64 | | Triggers | Tag | | Instance | All | | Label | Value | |----------|----------------------| | Pipeline | default-linux-amd64 | | Name | docker-publish-agent | | Platform | linux-amd64 | | Triggers | Tag | | Instance | All | | Label | Value | |----------|--------------------------| | Pipeline | default-linux-amd64 | | Name | github_binary_prerelease | | Platform | linux-amd64 | | Triggers | Pre-release tag creation | | Instance | All | | Label | Value | |----------|-----------------------| | Pipeline | default-linux-amd64 | | Name | github_binary_release | | Platform | linux-amd64 | | Triggers | GA tag creation | | Instance | All | | Label | Value | |----------|-----------------------------| | Pipeline | default-linux-amd64 | | Name | check-release-images-exists | | Platform | linux-amd64 | | Triggers | Tag | | Instance | drone-publish.rancher.io | ## default-linux-arm64 | Label | Value | |----------|---------------------| | Pipeline | default-linux-arm64 | | Name | build-pr | | Platform | linux-arm64 | | Triggers | Pull requests | | Instance | All | | Label | Value | |----------|----------------------------------------------------| | Pipeline | default-linux-arm64 | | Name | build-push-tag | | Platform | linux-arm64 | | Triggers | Push on master or release branches or tag creation | | Instance | drone-publish.rancher.io | | Label | Value | |----------|----------------------------------------------------| | Pipeline | default-linux-arm64 | | Name | stage-binaries | | Platform | linux-arm64 | | Triggers | Push on master or release branches or tag creation | | Instance | drone-publish.rancher.io | | Label | Value | |----------|------------------------------------| | Pipeline | default-linux-arm64 | | Name | docker-publish-head | | Platform | linux-arm64 | | Triggers | Push on master or release branches | | Instance | All | | Label | Value | |----------|------------------------------------| | Pipeline | default-linux-arm64 | | Name | docker-publish-head-installer | | Platform | linux-arm64 | | Triggers | Push on master or release branches | | Instance | All | | Label | Value | |----------|------------------------------------| | Pipeline | default-linux-arm64 | | Name | docker-publish-head-agent | | Platform | linux-arm64 | | Triggers | Push on master or release branches | | Instance | All | | Label | Value | |----------|---------------------| | Pipeline | default-linux-arm64 | | Name | docker-publish | | Platform | linux-arm64 | | Triggers | Tag Creation | | Instance | All | | Label | Value | |----------|--------------------------| | Pipeline | default-linux-arm64 | | Name | docker-publish-installer | | Platform | linux-arm64 | | Triggers | Tag Creation | | Instance | All | | Label | Value | |----------|----------------------| | Pipeline | default-linux-arm64 | | Name | docker-publish-agent | | Platform | linux-arm64 | | Triggers | Tag Creation | | Instance | All | ## default-windows-1809 | Label | Value | |----------|----------------------| | Pipeline | default-windows-1809 | | Name | build-pr | | Platform | windows-amd64 v1809 | | Triggers | Pull Request | | Instance | All | | Label | Value | |----------|----------------------------------------------------| | Pipeline | default-windows-1809 | | Name | build-push-tag | | Platform | windows-amd64 v1809 | | Triggers | Push on master or release branches or tag creation | | Instance | drone-publish.rancher.io | | Label | Value | |----------|----------------------------------------------------| | Pipeline | default-windows-1809 | | Name | stage-binaries | | Platform | windows-amd64 v1809 | | Triggers | Push on master or release branches or tag creation | | Instance | drone-publish.rancher.io | | Label | Value | |----------|------------------------------------| | Pipeline | default-windows-1809 | | Name | docker-publish-head-agent | | Platform | windows-amd64 v1809 | | Triggers | Push on master or release branches | | Instance | drone-publish.rancher.io | | Label | Value | |----------|----------------------| | Pipeline | default-windows-1809 | | Name | docker-publish-agent | | Platform | windows-amd64 v1809 | | Triggers | Tag Creation | | Instance | All | ## default-windows-ltsc2022 | Label | Value | |----------|----------------------| | Pipeline | default-windows-ltsc2022 | | Name | build-pr | | Platform | windows-amd64 ltsc2022 | | Triggers | Pull Request | | Instance | All | | Label | Value | |----------|----------------------------------------------------| | Pipeline | default-windows-ltsc2022 | | Name | build-push-tag | | Platform | windows-amd64 ltsc2022 | | Triggers | Push on master or release branches or tag creation | | Instance | drone-publish.rancher.io | | Label | Value | |----------|----------------------------------------------------| | Pipeline | default-windows-ltsc2022 | | Name | stage-binaries | | Platform | windows-amd64 ltsc2022 | | Triggers | Push on master or release branches or tag creation | | Instance | drone-publish.rancher.io | | Label | Value | |----------|------------------------------------| | Pipeline | default-windows-ltsc2022 | | Name | docker-publish-head-agent | | Platform | windows-amd64 ltsc2022 | | Triggers | Push on master or release branches | | Instance | drone-publish.rancher.io | | Label | Value | |----------|----------------------| | Pipeline | default-windows-ltsc2022 | | Name | docker-publish-agent | | Platform | windows-amd64 ltsc2022 | | Triggers | Tag Creation | | Instance | All | ## manifest depends_on: - default-linux-amd64 - default-linux-arm64 - default-windows-1809 - default-windows-ltsc2022 | Label | Value | |----------|----------------------------------------------------| | Pipeline | manifest | | Name | push-installer-manifest | | Platform | linux-amd64 | | Triggers | Push on master or release branches or tag creation | | Instance | drone-publish.rancher.io | | Label | Value | |----------|------------------------------------| | Pipeline | manifest | | Name | push-installer-manifest-head | | Platform | linux-amd64 | | Triggers | Push on master or release branches | | Instance | drone-publish.rancher.io | | Label | Value | |----------|----------------------------------------------------| | Pipeline | manifest | | Name | push-agent-manifest | | Platform | linux-amd64 | | Triggers | Push on master or release branches or tag creation | | Instance | drone-publish.rancher.io | | Label | Value | |----------|------------------------------------| | Pipeline | manifest | | Name | push-agent-manifest-head | | Platform | linux-amd64 | | Triggers | Push on master or release branches | | Instance | drone-publish.rancher.io | | Label | Value | |----------|------------------------------------| | Pipeline | manifest | | Name | push-manifest-head | | Platform | linux-amd64 | | Triggers | Push on master or release branches | | Instance | drone-publish.rancher.io | | Label | Value | |----------|----------------------------------------------------| | Pipeline | manifest | | Name | push-manifest | | Platform | linux-amd64 | | Triggers | Push on master or release branches or tag creation | | Instance | drone-publish.rancher.io | | Label | Value | |----------|----------------------------------------------------| | Pipeline | manifest | | Name | build-chart | | Platform | linux-amd64 | | Triggers | Push on master or release branches or tag creation | | Instance | drone-publish.rancher.io | | Label | Value | |----------|---------------| | Pipeline | manifest | | Name | chart-publish | | Platform | linux-amd64 | | Triggers | Tag | | Instance | All | ## docker-image-digests depends_on: - default-linux-amd64 - default-linux-arm64 | Label | Value | |----------|----------------------------| | Pipeline | docker-image-digests-linux | | Name | docker-image-digests | | Platform | linux-amd64 | | Triggers | Tag | | Instance | drone-publish.rancher.io | | Label | Value | |----------|-------------------------------| | Pipeline | docker-image-digests-linux | | Name | github_binary_release_digests | | Platform | linux-amd64 | | Triggers | Tag | | Instance | drone-publish.rancher.io | ## docker-image-digests-windows-1809 depends_on: - default-linux-amd64 - default-windows-1809 | Label | Value | |----------|-----------------------------------| | Pipeline | docker-image-digests-windows-1809 | | Name | docker-image-digests | | Platform | windows-amd64 v1809 | | Triggers | Tag | | Instance | drone-publish.rancher.io | ## docker-image-digests-windows-ltsc2022 depends_on: - default-linux-amd64 - default-windows-ltsc2022 | Label | Value | |----------|-----------------------------------| | Pipeline | docker-image-digests-windows-ltsc2022 | | Name | docker-image-digests | | Platform | windows-amd64 ltsc2022 | | Triggers | Tag | | Instance | drone-publish.rancher.io | ## publish | Label | Value | |----------|---------------------------------------| | Pipeline | publish | | Name | chart-promote | | Platform | linux-amd64 | | Triggers | Promote (Workflow Dispatch) | | Instance | All | | Label | Value | |----------|---------------------------------------| | Pipeline | publish | | Name | chart-publish | | Platform | linux-amd64 | | Triggers | Promote (Workflow Dispatch) | | Instance | All | ## promote-docker-image | Label | Value | |----------|-----------------------------| | Pipeline | publish | | Name | docker-image-promote | | Platform | linux-amd64 | | Triggers | Promote (Workflow Dispatch) | | Instance | All |
rafaelbreno commented 2 months ago

created issue for secrets & docker images access: #2273