-
Notifications
You must be signed in to change notification settings - Fork 122
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #174 from senthilrch/develop
PR#1 for v0.10.0
- Loading branch information
Showing
41 changed files
with
3,074 additions
and
158 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,243 @@ | ||
name: Reusable workflow to build kube-fledged | ||
|
||
on: | ||
workflow_call: | ||
inputs: | ||
alpine_version: | ||
description: 'Version of alpine base image' | ||
required: true | ||
type: string | ||
controller_image_repo: | ||
description: 'kubefledged-controller repository' | ||
required: true | ||
type: string | ||
crictl_image_repo: | ||
description: 'kubefledged-cri-client repository' | ||
required: true | ||
type: string | ||
crictl_version: | ||
description: 'crictl tool version' | ||
required: true | ||
type: string | ||
docker_version: | ||
description: 'docker version' | ||
required: true | ||
type: string | ||
dockerfile_controller: | ||
description: 'kubefledged-controller dockerfile path' | ||
required: true | ||
type: string | ||
dockerfile_cri_client: | ||
description: 'kubefledged-cri-client dockerfile path' | ||
required: true | ||
type: string | ||
dockerfile_operator: | ||
description: 'kubefledged-operator dockerfile path' | ||
required: true | ||
type: string | ||
dockerfile_webhook_server: | ||
description: 'kubefledged-webhook-server dockerfile path' | ||
required: true | ||
type: string | ||
golang_version: | ||
description: 'Go version used during the build' | ||
required: true | ||
type: string | ||
operator_image_repo: | ||
description: 'kubefledged-operator repository' | ||
required: true | ||
type: string | ||
operator_target_platforms: | ||
description: 'target platforms for operator multi-arch image' | ||
required: true | ||
type: string | ||
operatorsdk_version: | ||
description: 'operator sdk release version' | ||
required: true | ||
type: string | ||
push_image: | ||
description: 'whether or not to push built images to dockerhub' | ||
required: true | ||
type: boolean | ||
release_version: | ||
description: 'kube-fledged release version' | ||
required: true | ||
type: string | ||
target_platforms: | ||
description: 'target platforms for multi-arch images' | ||
required: true | ||
type: string | ||
webhook_server_image_repo: | ||
description: 'kubefledged-webhook-server repository' | ||
required: true | ||
type: string | ||
secrets: | ||
dockerhub_user: | ||
description: 'Dockerhub username' | ||
required: false | ||
dockerhub_pswd: | ||
description: 'Dockerhub password' | ||
required: false | ||
|
||
jobs: | ||
build_kube_fledged: | ||
runs-on: ubuntu-latest | ||
steps: | ||
- name: Checkout | ||
uses: actions/checkout@v2 | ||
|
||
- name: Set up Go | ||
uses: actions/setup-go@v3 | ||
with: | ||
go-version: ${{ inputs.golang_version }} | ||
|
||
- name: Install dependencies | ||
run: | | ||
go get -u golang.org/x/lint/golint | ||
- name: Run verify scripts | ||
run: | | ||
hack/verify-codegen.sh | ||
hack/verify-boilerplate.sh | ||
hack/verify-gofmt.sh | ||
hack/verify-golint.sh | ||
hack/verify-govet.sh | ||
- name: Run unit tests | ||
run: hack/run-unit-tests.sh | ||
|
||
- name: Set up QEMU | ||
uses: docker/setup-qemu-action@v1 | ||
|
||
- name: Set up Docker Buildx | ||
uses: docker/setup-buildx-action@v1 | ||
|
||
- name: Login to DockerHub | ||
env: | ||
DOCKERHUB_USER: ${{ secrets.dockerhub_user }} | ||
DOCKERHUB_PSWD: ${{ secrets.dockerhub_pswd }} | ||
if: "${{ env.DOCKERHUB_USER != '' && env.DOCKERHUB_PSWD != '' }}" | ||
uses: docker/login-action@v1 | ||
with: | ||
username: ${{ secrets.dockerhub_user }} | ||
password: ${{ secrets.dockerhub_pswd }} | ||
|
||
- name: Build kubefledged-controller image | ||
uses: docker/build-push-action@v2 | ||
with: | ||
context: . | ||
file: ${{ inputs.dockerfile_controller }} | ||
build-args: | | ||
ALPINE_VERSION=${{ inputs.alpine_version }} | ||
GOLANG_VERSION=${{ inputs.golang_version }} | ||
platforms: ${{ inputs.target_platforms }} | ||
push: ${{ inputs.push_image }} | ||
tags: ${{ inputs.controller_image_repo }}:${{ inputs.release_version }},${{ inputs.controller_image_repo }}:latest | ||
|
||
- name: Build kubefledged-webhook-server image | ||
uses: docker/build-push-action@v2 | ||
with: | ||
context: . | ||
file: ${{ inputs.dockerfile_webhook_server }} | ||
build-args: | | ||
ALPINE_VERSION=${{ inputs.alpine_version }} | ||
GOLANG_VERSION=${{ inputs.golang_version }} | ||
platforms: ${{ inputs.target_platforms }} | ||
push: ${{ inputs.push_image }} | ||
tags: ${{ inputs.webhook_server_image_repo }}:${{ inputs.release_version }},${{ inputs.webhook_server_image_repo }}:latest | ||
|
||
- name: Build kubefledged-cri-client image | ||
uses: docker/build-push-action@v2 | ||
with: | ||
context: . | ||
file: ${{ inputs.dockerfile_cri_client }} | ||
build-args: | | ||
ALPINE_VERSION=${{ inputs.alpine_version }} | ||
CRICTL_VERSION=${{ inputs.crictl_version }} | ||
DOCKER_VERSION=${{ inputs.docker_version }} | ||
platforms: ${{ inputs.target_platforms }} | ||
push: ${{ inputs.push_image }} | ||
tags: ${{ inputs.crictl_image_repo }}:${{ inputs.release_version }},${{ inputs.crictl_image_repo }}:latest | ||
|
||
- name: Build kubefledged-operator image | ||
uses: docker/build-push-action@v2 | ||
with: | ||
context: ./deploy/kubefledged-operator | ||
file: ${{ inputs.dockerfile_operator }} | ||
build-args: | | ||
OPERATORSDK_VERSION=${{ inputs.operatorsdk_version }} | ||
platforms: ${{ inputs.operator_target_platforms }} | ||
push: ${{ inputs.push_image }} | ||
tags: ${{ inputs.operator_image_repo }}:${{ inputs.release_version }},${{ inputs.operator_image_repo }}:latest | ||
|
||
e2e_test_kube_fledged: | ||
runs-on: ubuntu-latest | ||
steps: | ||
- name: Checkout | ||
uses: actions/checkout@v2 | ||
|
||
- name: Set up Go | ||
uses: actions/setup-go@v3 | ||
with: | ||
go-version: ${{ inputs.golang_version }} | ||
|
||
- name: Set up Docker Buildx | ||
uses: docker/setup-buildx-action@v1 | ||
|
||
- name: Build kubefledged-controller image | ||
uses: docker/build-push-action@v2 | ||
with: | ||
context: . | ||
file: ${{ inputs.dockerfile_controller }} | ||
build-args: | | ||
ALPINE_VERSION=${{ inputs.alpine_version }} | ||
GOLANG_VERSION=${{ inputs.golang_version }} | ||
platforms: linux/amd64 | ||
push: false | ||
load: true | ||
tags: ${{ inputs.controller_image_repo }}:${{ inputs.release_version }} | ||
|
||
- name: Build kubefledged-webhook-server image | ||
uses: docker/build-push-action@v2 | ||
with: | ||
context: . | ||
file: ${{ inputs.dockerfile_webhook_server }} | ||
build-args: | | ||
ALPINE_VERSION=${{ inputs.alpine_version }} | ||
GOLANG_VERSION=${{ inputs.golang_version }} | ||
platforms: linux/amd64 | ||
push: false | ||
load: true | ||
tags: ${{ inputs.webhook_server_image_repo }}:${{ inputs.release_version }} | ||
|
||
- name: Build kubefledged-cri-client image | ||
uses: docker/build-push-action@v2 | ||
with: | ||
context: . | ||
file: ${{ inputs.dockerfile_cri_client }} | ||
build-args: | | ||
ALPINE_VERSION=${{ inputs.alpine_version }} | ||
CRICTL_VERSION=${{ inputs.crictl_version }} | ||
DOCKER_VERSION=${{ inputs.docker_version }} | ||
platforms: linux/amd64 | ||
push: false | ||
load: true | ||
tags: ${{ inputs.crictl_image_repo }}:${{ inputs.release_version }} | ||
|
||
- name: Build kubefledged-operator image | ||
uses: docker/build-push-action@v2 | ||
with: | ||
context: ./deploy/kubefledged-operator | ||
file: ${{ inputs.dockerfile_operator }} | ||
build-args: | | ||
OPERATORSDK_VERSION=${{ inputs.operatorsdk_version }} | ||
platforms: linux/amd64 | ||
push: false | ||
load: true | ||
tags: ${{ inputs.operator_image_repo }}:${{ inputs.release_version }} | ||
|
||
- name: E2e test | ||
env: | ||
IMAGE_TAG: ${{ inputs.release_version }} | ||
run: make e2e-test | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,78 @@ | ||
name: Build kube-fledged | ||
|
||
on: | ||
push: | ||
branches: [master, develop] | ||
pull_request: | ||
branches: [master, develop] | ||
|
||
jobs: | ||
push_master: | ||
if: github.event_name == 'push' && github.ref_type == 'branch' && github.ref_name == 'master' | ||
uses: ./.github/workflows/build-kube-fledged.yml | ||
with: | ||
alpine_version: 3.15.4 | ||
controller_image_repo: docker.io/senthilrch/kubefledged-controller | ||
crictl_image_repo: docker.io/senthilrch/kubefledged-cri-client | ||
crictl_version: v1.23.0 | ||
docker_version: 20.10.9 | ||
dockerfile_controller: build/Dockerfile.controller | ||
dockerfile_cri_client: build/Dockerfile.cri_client | ||
dockerfile_operator: deploy/kubefledged-operator/build/Dockerfile | ||
dockerfile_webhook_server: build/Dockerfile.webhook_server | ||
golang_version: 1.18.1 | ||
operator_image_repo: docker.io/senthilrch/kubefledged-operator | ||
operator_target_platforms: linux/amd64,linux/arm64 | ||
operatorsdk_version: v1.19.1 | ||
push_image: true | ||
release_version: v0.10.0 | ||
target_platforms: linux/amd64,linux/arm/v7,linux/arm64/v8 | ||
webhook_server_image_repo: docker.io/senthilrch/kubefledged-webhook-server | ||
secrets: | ||
dockerhub_user: ${{ secrets.DOCKERHUB_USER }} | ||
dockerhub_pswd: ${{ secrets.DOCKERHUB_PSWD }} | ||
push_develop: | ||
if: github.event_name == 'push' && github.ref_type == 'branch' && github.ref_name == 'develop' | ||
uses: ./.github/workflows/build-kube-fledged.yml | ||
with: | ||
alpine_version: 3.15.0 | ||
controller_image_repo: docker.io/senthilrch/kubefledged-controller | ||
crictl_image_repo: docker.io/senthilrch/kubefledged-cri-client | ||
crictl_version: v1.23.0 | ||
docker_version: 20.10.9 | ||
dockerfile_controller: build/Dockerfile.controller | ||
dockerfile_cri_client: build/Dockerfile.cri_client | ||
dockerfile_operator: deploy/kubefledged-operator/build/Dockerfile | ||
dockerfile_webhook_server: build/Dockerfile.webhook_server | ||
golang_version: 1.17.7 | ||
operator_image_repo: docker.io/senthilrch/kubefledged-operator | ||
operator_target_platforms: linux/amd64,linux/arm64 | ||
operatorsdk_version: v1.18.0 | ||
push_image: true | ||
release_version: v0.10.0 | ||
target_platforms: linux/amd64 | ||
webhook_server_image_repo: docker.io/senthilrch/kubefledged-webhook-server | ||
secrets: | ||
dockerhub_user: ${{ secrets.DOCKERHUB_USER }} | ||
dockerhub_pswd: ${{ secrets.DOCKERHUB_PSWD }} | ||
pull_request: | ||
if: github.event_name == 'pull_request' | ||
uses: ./.github/workflows/build-kube-fledged.yml | ||
with: | ||
alpine_version: 3.15.0 | ||
controller_image_repo: docker.io/senthilrch/kubefledged-controller | ||
crictl_image_repo: docker.io/senthilrch/kubefledged-cri-client | ||
crictl_version: v1.23.0 | ||
docker_version: 20.10.9 | ||
dockerfile_controller: build/Dockerfile.controller | ||
dockerfile_cri_client: build/Dockerfile.cri_client | ||
dockerfile_operator: deploy/kubefledged-operator/build/Dockerfile | ||
dockerfile_webhook_server: build/Dockerfile.webhook_server | ||
golang_version: 1.17.7 | ||
operator_image_repo: docker.io/senthilrch/kubefledged-operator | ||
operator_target_platforms: linux/amd64 | ||
operatorsdk_version: v1.18.0 | ||
push_image: false | ||
release_version: v0.10.0 | ||
target_platforms: linux/amd64 | ||
webhook_server_image_repo: docker.io/senthilrch/kubefledged-webhook-server |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,8 +1,14 @@ | ||
## We invite contributions to _kube-fledged_. | ||
|
||
- Submit an issue if you find a bug or interested in seeing a new feature implemented. | ||
- If you would like to work on an existing issue, please make a comment in the issue. | ||
- Upon Author's confirmation, start working on the issue. | ||
- Fork the project, develop and test your code. | ||
- Submit a pull request. Ensure ALL CI checks are passed. | ||
- We will review and approve your pull request | ||
|
||
* Submit an issue if you find a bug or interested in seeing a new feature/ enhancement implemented. | ||
|
||
* If you would like to submit a PR for an existing issue, please make a comment in the issue. The maintainer will review your request and if approved, the issue will be assigned to you. | ||
|
||
* Once the issue is assigned to you, start working on the issue. | ||
|
||
* Fork the project, develop and test your code. | ||
|
||
* Submit a pull request against 'develop' branch. Ensure ALL CI checks are passed. | ||
|
||
* The maintainer will review and approve your pull request |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.