Skip to content

Commit

Permalink
📖 Update docs for release 3.8.0 (#3109)
Browse files Browse the repository at this point in the history
* Fix nil pointer in Finalizer example

* 📖 fix link for platform support

* update kubebuilder core dependencies for k8s 1.25

Signed-off-by: Bryce Palmer <bpalmer@redhat.com>

* docs: notify deps install to build book

* Update controller-tools version (v0.9.2->v0.10.0)

* 🐛 remove duplicate words and fix spelling mistakes

* ✨ update kubebuilder kubernetes version

* Update the export path of webhook

* 📖 fix broken links

* fixing the kubebuilder install locally curl request

* add dependency bot updates

* 🌱 Bump actions/checkout from 2 to 3

Bumps [actions/checkout](https://github.com/actions/checkout) from 2 to 3.
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](actions/checkout@v2...v3)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>

* 🌱 Bump actions/setup-go from 2 to 3

Bumps [actions/setup-go](https://github.com/actions/setup-go) from 2 to 3.
- [Release notes](https://github.com/actions/setup-go/releases)
- [Commits](actions/setup-go@v2...v3)

---
updated-dependencies:
- dependency-name: actions/setup-go
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>

* 🌱 Bump goreleaser/goreleaser-action from 2 to 3

Bumps [goreleaser/goreleaser-action](https://github.com/goreleaser/goreleaser-action) from 2 to 3.
- [Release notes](https://github.com/goreleaser/goreleaser-action/releases)
- [Commits](goreleaser/goreleaser-action@v2...v3)

---
updated-dependencies:
- dependency-name: goreleaser/goreleaser-action
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>

* Bump github.com/spf13/afero from 1.6.0 to 1.9.2

Bumps [github.com/spf13/afero](https://github.com/spf13/afero) from 1.6.0 to 1.9.2.
- [Release notes](https://github.com/spf13/afero/releases)
- [Commits](spf13/afero@v1.6.0...v1.9.2)

---
updated-dependencies:
- dependency-name: github.com/spf13/afero
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

* Bump github.com/onsi/gomega from 1.19.0 to 1.20.2

Bumps [github.com/onsi/gomega](https://github.com/onsi/gomega) from 1.19.0 to 1.20.2.
- [Release notes](https://github.com/onsi/gomega/releases)
- [Changelog](https://github.com/onsi/gomega/blob/master/CHANGELOG.md)
- [Commits](onsi/gomega@v1.19.0...v1.20.2)

---
updated-dependencies:
- dependency-name: github.com/onsi/gomega
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

* Bump github.com/sirupsen/logrus from 1.8.1 to 1.9.0

Bumps [github.com/sirupsen/logrus](https://github.com/sirupsen/logrus) from 1.8.1 to 1.9.0.
- [Release notes](https://github.com/sirupsen/logrus/releases)
- [Changelog](https://github.com/sirupsen/logrus/blob/master/CHANGELOG.md)
- [Commits](sirupsen/logrus@v1.8.1...v1.9.0)

---
updated-dependencies:
- dependency-name: github.com/sirupsen/logrus
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

* Bump k8s.io/apimachinery from 0.25.0 to 0.25.2

Bumps [k8s.io/apimachinery](https://github.com/kubernetes/apimachinery) from 0.25.0 to 0.25.2.
- [Release notes](https://github.com/kubernetes/apimachinery/releases)
- [Commits](kubernetes/apimachinery@v0.25.0...v0.25.2)

---
updated-dependencies:
- dependency-name: k8s.io/apimachinery
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

* Bump github.com/gobuffalo/flect from 0.2.5 to 0.3.0

Bumps [github.com/gobuffalo/flect](https://github.com/gobuffalo/flect) from 0.2.5 to 0.3.0.
- [Release notes](https://github.com/gobuffalo/flect/releases)
- [Commits](gobuffalo/flect@v0.2.5...v0.3.0)

---
updated-dependencies:
- dependency-name: github.com/gobuffalo/flect
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

* docs: describe e2e test towards plugin

Co-authored-by: Camila Macedo <7708031+camilamacedo86@users.noreply.github.com>

* 🌱 remove WORKSPACE file commited by mistake

* remove unused value

* Bump github.com/spf13/cobra from 1.4.0 to 1.5.0

Bumps [github.com/spf13/cobra](https://github.com/spf13/cobra) from 1.4.0 to 1.5.0.
- [Release notes](https://github.com/spf13/cobra/releases)
- [Commits](spf13/cobra@v1.4.0...v1.5.0)

---
updated-dependencies:
- dependency-name: github.com/spf13/cobra
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

* Bump github.com/onsi/ginkgo/v2 from 2.1.6 to 2.2.0

Bumps [github.com/onsi/ginkgo/v2](https://github.com/onsi/ginkgo) from 2.1.6 to 2.2.0.
- [Release notes](https://github.com/onsi/ginkgo/releases)
- [Changelog](https://github.com/onsi/ginkgo/blob/master/CHANGELOG.md)
- [Commits](onsi/ginkgo@v2.1.6...v2.2.0)

---
updated-dependencies:
- dependency-name: github.com/onsi/ginkgo/v2
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

* Bump github.com/cloudflare/cfssl from 1.5.0 to 1.6.3

Bumps [github.com/cloudflare/cfssl](https://github.com/cloudflare/cfssl) from 1.5.0 to 1.6.3.
- [Release notes](https://github.com/cloudflare/cfssl/releases)
- [Changelog](https://github.com/cloudflare/cfssl/blob/master/CHANGELOG)
- [Commits](cloudflare/cfssl@v1.5.0...v1.6.3)

---
updated-dependencies:
- dependency-name: github.com/cloudflare/cfssl
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

* update simple-external-plugin-tutorial

* update mdbook

* ⚠️ remove config-gen alpha option

* 📖 clarifies plugins available and its usage

* 📖 update doc samples

* ✨ (go/v4-alpha) : update kustomize version from 4.5.5 to 4.5.7

* ✨ (grafana/v1-alpha) : add custom units for custom grafana dashboards (#2965)

:sparkles: add custom units for custom grafana dashboards

Signed-off-by: Jirka Kremser <jiri.kremser@gmail.com>

Signed-off-by: Jirka Kremser <jiri.kremser@gmail.com>

* cleanup: cert-manager and prometheus installs into e2e tests

* Apply suggestions from code review

* fixed bug for component-config flag

updated testdata

* Make jmrodri and varsha admins

Signed-off-by: jesus m. rodriguez <jesusr@redhat.com>

* Bump github.com/onsi/gomega from 1.20.2 to 1.21.1

Bumps [github.com/onsi/gomega](https://github.com/onsi/gomega) from 1.20.2 to 1.21.1.
- [Release notes](https://github.com/onsi/gomega/releases)
- [Changelog](https://github.com/onsi/gomega/blob/master/CHANGELOG.md)
- [Commits](onsi/gomega@v1.20.2...v1.21.1)

---
updated-dependencies:
- dependency-name: github.com/onsi/gomega
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

* 📖 Updating doc with Installation steps of cert-manager and prometheus (#2982)

* Adding installing steps for testing webhooks

Adding installing steps for testing webhooks

Adding installing steps for testing webhooks

Adding installing steps for testing webhooks

Adding installing steps for testing webhooks

Adding installing steps for testing webhooks

Adding installing steps for testing webhooks

Adding installing steps for testing webhooks

Adding installing steps for testing webhooks

Adding installing steps for testing webhooks

Adding installing steps for testing webhooks

Adding installing steps for testing webhooks

* Adding installing steps for testing webhooks

* Adding installing steps for testing webhooks

* Adding installing steps for testing webhooks

* 🐛 : leader-elect arg scaffolded should be scaffolded when component config option is not used (#3013)

* updated templates for component config

* updates

* update

* update revert main.go

* update revert main.go

* revert changes and go thru docs once

* Update make build cmd with manifests

* Bump github.com/spf13/cobra from 1.5.0 to 1.6.0

Bumps [github.com/spf13/cobra](https://github.com/spf13/cobra) from 1.5.0 to 1.6.0.
- [Release notes](https://github.com/spf13/cobra/releases)
- [Commits](spf13/cobra@v1.5.0...v1.6.0)

---
updated-dependencies:
- dependency-name: github.com/spf13/cobra
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

* Bump golang.org/x/text from 0.3.7 to 0.4.0

Bumps [golang.org/x/text](https://github.com/golang/text) from 0.3.7 to 0.4.0.
- [Release notes](https://github.com/golang/text/releases)
- [Commits](golang/text@v0.3.7...v0.4.0)

---
updated-dependencies:
- dependency-name: golang.org/x/text
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

* :seeding: update CLI deps

* golangci-lint: add recommended revive checks to linter-settings but disable checks with to many findings. Fix findings

* Improve rendering of the documentation

This fixes various rendering issues:

* Wrong or uninterpreted formatting
* Some missing links
* Incorrect markup
* Missing documentation pages

This doesn't fix all the links but at least the initial ones.

* update cronjob to use batchv1 api

* Fix grammar in comment

Change `these is` to `these are`

* Enable revive unused-parameter check and fix findings

* Bump github.com/onsi/ginkgo/v2 from 2.3.1 to 2.4.0

Bumps [github.com/onsi/ginkgo/v2](https://github.com/onsi/ginkgo) from 2.3.1 to 2.4.0.
- [Release notes](https://github.com/onsi/ginkgo/releases)
- [Changelog](https://github.com/onsi/ginkgo/blob/master/CHANGELOG.md)
- [Commits](onsi/ginkgo@v2.3.1...v2.4.0)

---
updated-dependencies:
- dependency-name: github.com/onsi/ginkgo/v2
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

* Bump github.com/spf13/cobra from 1.6.0 to 1.6.1

Bumps [github.com/spf13/cobra](https://github.com/spf13/cobra) from 1.6.0 to 1.6.1.
- [Release notes](https://github.com/spf13/cobra/releases)
- [Commits](spf13/cobra@v1.6.0...v1.6.1)

---
updated-dependencies:
- dependency-name: github.com/spf13/cobra
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

* Update github workflow to use same golangci-lint minor version as Makefile

* fix docker buildx args

Signed-off-by: Mikhail Sidorov <mixity@yandex.ru>

* 🐛 (kustomize/v2-alpha): Fix typo issue in the labels added to the manifests (#3047)

* Fix typo in kubernets (missing 'e')

* make generate

* Add KB project git-repo and edit icons

* Add doc FAQ section

* docs: supplement plugin creation

* Update joelanford/go-apidiff (v0.4.0 -> v0.5.0)

* Bump github.com/onsi/gomega from 1.22.1 to 1.23.0

Bumps [github.com/onsi/gomega](https://github.com/onsi/gomega) from 1.22.1 to 1.23.0.
- [Release notes](https://github.com/onsi/gomega/releases)
- [Changelog](https://github.com/onsi/gomega/blob/master/CHANGELOG.md)
- [Commits](onsi/gomega@v1.22.1...v1.23.0)

---
updated-dependencies:
- dependency-name: github.com/onsi/gomega
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

* Bump github.com/onsi/gomega from 1.23.0 to 1.24.0

Bumps [github.com/onsi/gomega](https://github.com/onsi/gomega) from 1.23.0 to 1.24.0.
- [Release notes](https://github.com/onsi/gomega/releases)
- [Changelog](https://github.com/onsi/gomega/blob/master/CHANGELOG.md)
- [Commits](onsi/gomega@v1.23.0...v1.24.0)

---
updated-dependencies:
- dependency-name: github.com/onsi/gomega
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

* Bump github.com/onsi/ginkgo/v2 from 2.4.0 to 2.5.0

Bumps [github.com/onsi/ginkgo/v2](https://github.com/onsi/ginkgo) from 2.4.0 to 2.5.0.
- [Release notes](https://github.com/onsi/ginkgo/releases)
- [Changelog](https://github.com/onsi/ginkgo/blob/master/CHANGELOG.md)
- [Commits](onsi/ginkgo@v2.4.0...v2.5.0)

---
updated-dependencies:
- dependency-name: github.com/onsi/ginkgo/v2
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

* Bump github.com/spf13/afero from 1.9.2 to 1.9.3

Bumps [github.com/spf13/afero](https://github.com/spf13/afero) from 1.9.2 to 1.9.3.
- [Release notes](https://github.com/spf13/afero/releases)
- [Commits](spf13/afero@v1.9.2...v1.9.3)

---
updated-dependencies:
- dependency-name: github.com/spf13/afero
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

* Bump golang.org/x/tools from 0.2.0 to 0.3.0

Bumps [golang.org/x/tools](https://github.com/golang/tools) from 0.2.0 to 0.3.0.
- [Release notes](https://github.com/golang/tools/releases)
- [Commits](golang/tools@v0.2.0...v0.3.0)

---
updated-dependencies:
- dependency-name: golang.org/x/tools
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

* Bump github.com/onsi/gomega from 1.24.0 to 1.24.1

Bumps [github.com/onsi/gomega](https://github.com/onsi/gomega) from 1.24.0 to 1.24.1.
- [Release notes](https://github.com/onsi/gomega/releases)
- [Changelog](https://github.com/onsi/gomega/blob/master/CHANGELOG.md)
- [Commits](onsi/gomega@v1.24.0...v1.24.1)

---
updated-dependencies:
- dependency-name: github.com/onsi/gomega
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

* fix typo in Makefile

* ✨ add version check for makefile template tools (#3077)

* add version check for makefile template tools

Prevent running controller-gen and kustomize commands with a version that does
not match the one specified in the corresponding CONTROLLER_TOOLS_VERSION or 
KUSTOMIZE_VERSION vars

Addresses #3068

* Update makefile target descriptions

* Updated descriptions for `kustomize` and `controller-gen` targets.
* Reformatted `controller-gen` recipe to reduce line length

Signed-off-by: Eduardo Coria <emcoria@us.ibm.com>

* update makefile samples

Signed-off-by: Eduardo Coria <emcoria@us.ibm.com>

Signed-off-by: Eduardo Coria <emcoria@us.ibm.com>

* fix unexpected end of file error in makefiles

Signed-off-by: Eduardo Coria <emcoria@us.ibm.com>

* ✨ Add go/v4 base and migration guide

Co-authored-by: Varsha <varshaprasad96@gmail.com>

* Update docs/book/src/plugins/go-v4-plugin.md

Co-authored-by: Varsha <varshaprasad96@gmail.com>

* Update docs/book/src/migration/legacy.md

Co-authored-by: Varsha <varshaprasad96@gmail.com>

* Update docs/book/src/migration/manually_migration_guide_gov3_to_gov4.md

Co-authored-by: Varsha <varshaprasad96@gmail.com>

* Update docs/book/src/migration/manually_migration_guide_gov3_to_gov4.md

Co-authored-by: Varsha <varshaprasad96@gmail.com>

* Update docs/book/src/migration/manually_migration_guide_gov3_to_gov4.md

Co-authored-by: Varsha <varshaprasad96@gmail.com>

* (go/v3,go/v4-alpha): Upgrade controller-runtime version from 1.13.0 to 1.13.1

* 📖 : suggest specify plugin for pr

* Bump github.com/onsi/ginkgo/v2 from 2.5.0 to 2.5.1

Bumps [github.com/onsi/ginkgo/v2](https://github.com/onsi/ginkgo) from 2.5.0 to 2.5.1.
- [Release notes](https://github.com/onsi/ginkgo/releases)
- [Changelog](https://github.com/onsi/ginkgo/blob/master/CHANGELOG.md)
- [Commits](onsi/ginkgo@v2.5.0...v2.5.1)

---
updated-dependencies:
- dependency-name: github.com/onsi/ginkgo/v2
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

* docs: fix typo in the component config tutorial

Signed-off-by: Andreas Gerstmayr <agerstmayr@redhat.com>

* 🌱: refact testdata

* ✨ (kustomize/v2-alpha): add kustomize file to track crd sample info

* add action to lint yaml

and fix existing yamllint failures

Signed-off-by: Bryce Palmer <bpalmer@redhat.com>

* update yamllint to now be run via Makefile

Signed-off-by: Bryce Palmer <bpalmer@redhat.com>

* run yamllint target as part of lint target

Signed-off-by: Bryce Palmer <bpalmer@redhat.com>

* add yamllint job back as the lint job only runs golangci-lint

Signed-off-by: Bryce Palmer <bpalmer@redhat.com>

* bump proxy image

* fix: Remove trailing space making yamllint fail on new project

* (kustomize/v2-alpha): change kustomization file to track samples to use marker instead of overwritting

* (deployimage/v1-alpha): fix error to scaffold go/v4-alpha projects

* Replace restricted-access ComponentConfig design doc link with the public one

Signed-off-by: Michail Resvanis <mresvani@redhat.com>

Signed-off-by: Bryce Palmer <bpalmer@redhat.com>
Signed-off-by: dependabot[bot] <support@github.com>
Signed-off-by: Jirka Kremser <jiri.kremser@gmail.com>
Signed-off-by: jesus m. rodriguez <jesusr@redhat.com>
Signed-off-by: Mikhail Sidorov <mixity@yandex.ru>
Signed-off-by: Eduardo Coria <emcoria@us.ibm.com>
Signed-off-by: Andreas Gerstmayr <agerstmayr@redhat.com>
Signed-off-by: Michail Resvanis <mresvani@redhat.com>
Co-authored-by: Simon Jürgensmeyer <6493966+sj14@users.noreply.github.com>
Co-authored-by: Kubernetes Prow Robot <k8s-ci-robot@users.noreply.github.com>
Co-authored-by: Camila Macedo <cmacedo@redhat.com>
Co-authored-by: Bryce Palmer <bpalmer@redhat.com>
Co-authored-by: Tony <kavinjsir@gmail.com>
Co-authored-by: Oscar Utbult <oscar.utbult@gmail.com>
Co-authored-by: Yash Singh <syash@vmware.com>
Co-authored-by: Abhishek koserwal <akoserwa@redhat.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Jirka Kremser <535866+jkremser@users.noreply.github.com>
Co-authored-by: laxmikantbpandhare <laxmikantpandhare@gmail.com>
Co-authored-by: jesus m. rodriguez <jesusr@redhat.com>
Co-authored-by: Phillip Wittrock <Phil.Wittrock@gmail.com>
Co-authored-by: Yash Singh <99066083+yashsingh74@users.noreply.github.com>
Co-authored-by: Laxmikant Bhaskar Pandhare <47066536+laxmikantbpandhare@users.noreply.github.com>
Co-authored-by: astraw99 <wangchengiscool@gmail.com>
Co-authored-by: Jonathan Ballet <jon@multani.info>
Co-authored-by: Krishna Indani <indanikrishna@gmail.com>
Co-authored-by: Nicholas Seemiller <seemiller@gmail.com>
Co-authored-by: Mikhail Sidorov <mixity@yandex.ru>
Co-authored-by: Marc Villacorta <h0tbird@github.com>
Co-authored-by: Shunsuke Ise <ise@ebiiim.com>
Co-authored-by: Eduardo M Coria <coriaedu@gmail.com>
Co-authored-by: Eduardo Coria <emcoria@us.ibm.com>
Co-authored-by: Varsha <varshaprasad96@gmail.com>
Co-authored-by: Andreas Gerstmayr <agerstmayr@redhat.com>
Co-authored-by: Erik Godding Boye <egboye@gmail.com>
Co-authored-by: Michail Resvanis <mresvani@redhat.com>
  • Loading branch information
1 parent 5b33042 commit ce1a6bc
Show file tree
Hide file tree
Showing 659 changed files with 10,736 additions and 8,107 deletions.
2 changes: 1 addition & 1 deletion .github/ISSUE_TEMPLATE/bug_report.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,7 @@ body:
<summary>Code & details examples</summary>
`````markdown
Some code code written in Go:
Some code written in Go:
```go
type Manager struct {
Expand Down
4 changes: 2 additions & 2 deletions .github/ISSUE_TEMPLATE/feature_request.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,7 @@ body:
<summary>Code & details examples</summary>
`````markdown
Some code code written in Go:
Some code written in Go:
```go
type Manager struct {
Expand Down Expand Up @@ -75,7 +75,7 @@ body:
Does it require a particular Kubernetes version?
Is there currently another isssue associated with this (use github syntax
Is there currently another issue associated with this (use github syntax
like `#xyz` to link to it)?
validations: {required: true}

Expand Down
49 changes: 49 additions & 0 deletions .github/dependabot.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,49 @@
# To get started with Dependabot version updates, you'll need to specify which
# package ecosystems to update and where the package manifests are located.
# Please see the documentation for all configuration options:
# https://docs.github.com/github/administering-a-repository/configuration-options-for-dependency-updates

version: 2
updates:

# Maintain dependencies for GitHub Actions
- package-ecosystem: "github-actions"
# Workflow files stored in the
# default location of `.github/workflows`
directory: "/"
schedule:
interval: "weekly"
commit-message:
prefix: ":seedling:"
labels:
- "ok-to-test"

# Maintain dependencies for go
- package-ecosystem: "gomod"
directory: "/"
schedule:
interval: "weekly"
labels:
- "ok-to-test"

# Maintain dependencies for dockerfile in the branches
- package-ecosystem: docker
directory: "/build/thirdparty/darwin"
target-branch: "tools-releases"
schedule:
interval: daily
- package-ecosystem: docker
directory: "/build/thirdparty/linux"
target-branch: "tools-releases"
schedule:
interval: "weekly"

# Maintain dependencies for dockerfile scaffold in the projects
- package-ecosystem: docker
directory: "testdata/project-v3"
schedule:
interval: daily
- package-ecosystem: docker
directory: "testdata/project-v4"
schedule:
interval: "weekly"
2 changes: 1 addition & 1 deletion .github/workflows/apidiff.yml
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,7 @@ jobs:
with:
go-version: "1.19"
- name: Execute go-apidiff
uses: joelanford/go-apidiff@v0.4.0
uses: joelanford/go-apidiff@v0.5.0
with:
compare-imports: true
print-compatible: true
Expand Down
9 changes: 8 additions & 1 deletion .github/workflows/lint.yml
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,7 @@ jobs:
- name: Run linter
uses: golangci/golangci-lint-action@v3
with:
version: v1.49 # Always uses the latest patch version.
version: v1.50
only-new-issues: true # Show only new issues if it's a pull request
- name: Report failure
uses: nashmaniac/create-issue-action@v1.1
Expand All @@ -50,3 +50,10 @@ jobs:
token: ${{ secrets.GITHUB_TOKEN }}
labels: kind/bug
body: https://github.com/${{ github.repository }}/actions/runs/${{ github.run_id }}

yamllint:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Run yamllint make target
run: make yamllint
6 changes: 3 additions & 3 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -9,17 +9,17 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v2
uses: actions/checkout@v3
with:
fetch-depth: 0
- name: Fetch all tags
run: git fetch --force --tags
- name: Set up Go
uses: actions/setup-go@v2
uses: actions/setup-go@v3
with:
go-version: '~1.19'
- name: Run GoReleaser
uses: goreleaser/goreleaser-action@v2
uses: goreleaser/goreleaser-action@v3
with:
version: v1.11.2
args: release -f ./build/.goreleaser.yml --rm-dist
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/unit-tests-legacy.yml
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,7 @@ jobs:
# Therefore, we probably will deprecate go/v2 soon since we cannot upgrade it
# to use the versions of controller-runtime > v0.9
# and controller-tools > v0.6 as k8s > 1.21 then it might not be valid we spend effort on this fix
go-version: "1.17"
go-version: "1.19"
# This step is needed as the following one tries to remove
# kustomize for each test but has no permission to do so
- name: Remove pre-installed kustomize
Expand Down
6 changes: 5 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
@@ -1,9 +1,12 @@
.idea/
.vscode/

WORKSPACE
# don't check in the build output of the book
docs/book/book/

# ignore auto-generated dir by `mdbook serve`
docs/book/src/docs

# Editor temp files
*~
\#*#
Expand All @@ -22,3 +25,4 @@ docs/book/book/
# skip testdata go.sum, since it may have
# different result depending on go version
/testdata/**/go.sum
/docs/book/src/simple-external-plugin-tutorial/testdata/sampleexternalplugin/v1/bin
44 changes: 39 additions & 5 deletions .golangci.yml
Original file line number Diff line number Diff line change
@@ -1,3 +1,7 @@
run:
deadline: 5m
allow-parallel-runners: true

issues:
# don't skip warning about doc comments
# don't exclude the default set of lint
Expand All @@ -13,8 +17,41 @@ linters-settings:
enable=fieldalignment: true
revive:
rules:
- name: if-return
disabled: true
# The following rules are recommended https://github.com/mgechev/revive#recommended-configuration
- name: blank-imports
- name: context-as-argument
- name: context-keys-type
- name: dot-imports
- name: error-return
- name: error-strings
- name: error-naming
- name: exported
disabled: true # TODO: Investigate if it should be enabled. Disabled for now due to many findings.
- name: if-return
disabled: true # TODO: Investigate if it should be enabled. Disabled for now due to many findings.
- name: increment-decrement
- name: var-naming
disabled: true # TODO: Investigate if it should be enabled. Disabled for now due to many findings.
- name: var-declaration
- name: package-comments
disabled: true # TODO: Investigate if it should be enabled. Disabled for now due to many findings.
- name: range
- name: receiver-naming
- name: time-naming
- name: unexported-return
- name: indent-error-flow
- name: errorf
- name: empty-block
disabled: true # TODO: Investigate if it should be enabled. Disabled for now due to many findings.
- name: superfluous-else
- name: unused-parameter
- name: unreachable-code
- name: redefines-builtin-id
#
# Rules in addition to the recommended configuration above.
#
- name: bool-literal-in-expr
- name: constant-logical-expr

linters:
disable-all: true
Expand All @@ -40,6 +77,3 @@ linters:
- unconvert
- unparam
- unused

run:
deadline: 5m
64 changes: 64 additions & 0 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -62,6 +62,63 @@ Following the targets that can be used to test your changes locally.

**NOTE** To use the `make lint` is required to install `golangci-lint` locally. More info: https://github.com/golangci/golangci-lint#install

### Test Plugin

If your intended PR creates a new plugin, make sure the PR also provides test cases. Testing should include:

1. `e2e tests` to validate the behavior of the proposed plugin.
2. `sample projects` to verify the scaffolded output from the plugin.

#### 1. Plugin E2E Tests

All the plugins provided by Kubebuilder should be validated through `e2e-tests` across multiple platforms.

Current Kubebuilder provides the testing framework that includes testing code based on [ginkgo](https://github.com/onsi/ginkgo), [Github Actions](https://github.com/Kavinjsir/kubebuilder/blob/docs%2Ftest-plugin/.github/workflows/testdata.yml) for unit tests, and multiple env tests driven by [test-infra](https://github.com/kubernetes/test-infra/blob/master/config/jobs/kubernetes-sigs/kubebuilder/kubebuilder-presubmits.yaml).

To fully test the proposed plugin:

1. Create a new package(folder) under `test/e2e/<your-plugin>`.
2. Create [e2e_suite_test.go](https://github.com/kubernetes-sigs/kubebuilder/blob/v3.7.0/test/e2e/v4/e2e_suite_test.go), which imports the necessary testing framework.
3. Create `generate_test.go` ([ref](https://github.com/kubernetes-sigs/kubebuilder/blob/v3.7.0/test/e2e/v4/generate_test.go)). That should:
- Introduce/Receive a `TextContext` instance
- Trigger the plugin's bound subcommands. See [Init](https://github.com/kubernetes-sigs/kubebuilder/blob/v3.7.0/test/e2e/utils/test_context.go#L213), [CreateAPI](https://github.com/kubernetes-sigs/kubebuilder/blob/v3.6.0/test/e2e/utils/test_context.go#L222)
- Use [PluginUtil](https://pkg.go.dev/sigs.k8s.io/kubebuilder/v3/pkg/plugin/util) to verify the scaffolded outputs. See [InsertCode](https://github.com/kubernetes-sigs/kubebuilder/blob/v3.7.0/pkg/plugin/util/util.go#L67), [ReplaceInFile](https://github.com/kubernetes-sigs/kubebuilder/blob/v3.6.0/pkg/plugin/util/util.go#L196), [UncommendCode](https://github.com/kubernetes-sigs/kubebuilder/blob/v3.6.0/pkg/plugin/util/util.go#L86)
4. Create `plugin_cluster_test.go` ([ref](https://github.com/kubernetes-sigs/kubebuilder/blob/v3.7.0/test/e2e/v4/plugin_cluster_test.go)). That should:

- 4.1. Setup testing environment, e.g:

- Cleanup environment, create temp dir. See [Prepare](https://github.com/kubernetes-sigs/kubebuilder/blob/v3.7.0/test/e2e/utils/test_context.go#L97)
- If your test will cover the provided features then, ensure that you install prerequisites CRDs: See [InstallCertManager](https://github.com/kubernetes-sigs/kubebuilder/blob/v3.7.0/test/e2e/utils/test_context.go#L138), [InstallPrometheusManager](https://github.com/kubernetes-sigs/kubebuilder/blob/v3.6.0/test/e2e/utils/test_context.go#L171)

- 4.2. Run the function from `generate_test.go`.

- 4.3. Further make sure the scaffolded output works, e.g:

- Execute commands in your `Makefile`. See [Make](https://github.com/kubernetes-sigs/kubebuilder/blob/v3.7.0/test/e2e/utils/test_context.go#L240)
- Temporary load image of the testing controller. See [LoadImageToKindCluster](https://github.com/kubernetes-sigs/kubebuilder/blob/v3.7.0/test/e2e/utils/test_context.go#L283)
- Call Kubectl to validate running resources. See [utils.Kubectl](https://pkg.go.dev/sigs.k8s.io/kubebuilder/v3/test/e2e/utils#Kubectl)

- 4.4. Delete temporary resources after testing exited, e.g:
- Uninstall prerequisites CRDs: See [UninstallPrometheusOperManager](https://github.com/kubernetes-sigs/kubebuilder/blob/v3.7.0/test/e2e/utils/test_context.go#L183)
- Delete temp dir. See [Destroy](https://github.com/kubernetes-sigs/kubebuilder/blob/v3.7.0/test/e2e/utils/test_context.go#L255)

5. Add the command in [test/e2e/plugin](https://github.com/kubernetes-sigs/kubebuilder/blob/v3.7.0/test/e2e/setup.sh#L65) to run your testing code:

```shell
go test $(dirname "$0")/<your-plugin-test-folder> $flags -timeout 30m
```

#### 2. Sample Projects from the Plugin

It is also necessary to test consistency of the proposed plugin across different env and the integration with other plugins.

This is performed by generating sample projects based on the plugins. The CI workflow defined in Github Action would validate the availability and the consistency.

See:

- [test/testdata/generated.sh](https://github.com/kubernetes-sigs/kubebuilder/blob/v3.7.0/test/testdata/generate.sh#L144)
- [make generate](https://github.com/kubernetes-sigs/kubebuilder/blob/v3.7.0/Makefile#L70)

## PR Process

See [VERSIONING.md](VERSIONING.md) for a full description. TL;DR:
Expand All @@ -82,6 +139,13 @@ changes, which don't deserve a release note. Please don't abuse it.
You can also use the equivalent emoji directly, since GitHub doesn't
render the `:xyz:` aliases in PR titles.

If the PR is "plugin" scoped, you may also append the responding plugin names in the prefix.
[For instance](https://github.com/kubernetes-sigs/kubebuilder/commit/0b36d0c4021bbf52f29d5a990157466761ec180c):

```
🐛 (kustomize/v2-alpha): Fix typo issue in the labels added to the manifests
```

Individual commits should not be tagged separately, but will generally be
assumed to match the PR. For instance, if you have a bugfix in with
a breaking change, it's generally encouraged to submit the bugfix
Expand Down
12 changes: 9 additions & 3 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -72,18 +72,22 @@ generate-testdata: ## Update/generate the testdata in $GOPATH/src/sigs.k8s.io/ku
./test/testdata/generate.sh

.PHONY: lint
lint: golangci-lint ## Run golangci-lint linter
lint: golangci-lint yamllint ## Run golangci-lint linter & yamllint
$(GOLANGCI_LINT) run

.PHONY: lint-fix
lint-fix: golangci-lint ## Run golangci-lint linter and perform fixes
$(GOLANGCI_LINT) run --fix

.PHONY: yamllint
yamllint:
@docker run --rm $$(tty -s && echo "-it" || echo) -v $(PWD):/data cytopia/yamllint:latest testdata -d "{extends: relaxed, rules: {line-length: {max: 120}}}" --no-warnings

GOLANGCI_LINT = $(shell pwd)/bin/golangci-lint
golangci-lint:
@[ -f $(GOLANGCI_LINT) ] || { \
set -e ;\
curl -sSfL https://raw.githubusercontent.com/golangci/golangci-lint/master/install.sh | sh -s -- -b $(shell dirname $(GOLANGCI_LINT)) v1.49.0 ;\
curl -sSfL https://raw.githubusercontent.com/golangci/golangci-lint/master/install.sh | sh -s -- -b $(shell dirname $(GOLANGCI_LINT)) v1.50.1 ;\
}

.PHONY: apidiff
Expand All @@ -92,7 +96,7 @@ apidiff: go-apidiff ## Run the go-apidiff to verify any API differences compared

.PHONY: go-apidiff
go-apidiff:
go install github.com/joelanford/go-apidiff@v0.4.0
go install github.com/joelanford/go-apidiff@v0.5.0

##@ Tests

Expand Down Expand Up @@ -139,6 +143,8 @@ test-e2e-ci: ## Run the end-to-end tests (used in the CI)`
.PHONY: test-book
test-book: ## Run the cronjob tutorial's unit tests to make sure we don't break it
cd ./docs/book/src/cronjob-tutorial/testdata/project && make test
cd ./docs/book/src/component-config-tutorial/testdata/project && make test
cd ./docs/book/src/multiversion-tutorial/testdata/project && make test

.PHONY: test-license
test-license: ## Run the license check
Expand Down
4 changes: 2 additions & 2 deletions OWNERS_ALIASES
Original file line number Diff line number Diff line change
Expand Up @@ -6,11 +6,11 @@ aliases:
kubebuilder-admins:
- pwittrock
- camilamacedo86
- jmrodri
- varshaprasad96

# non-admin folks who can approve any PRs in the repo
kubebuilder-approvers:
- jmrodri
- varshaprasad96

# folks who can review and LGTM any PRs in the repo (doesn't include
# approvers & admins -- those count too via the OWNERS file)
Expand Down
2 changes: 1 addition & 1 deletion RELEASE.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ to create a new branch. Instead, you will just need to ensure that all major fix
`release-MAJOR.MINOR` branch. To know more about versioning check https://semver.org/.

**Note:** Before `3.5.*` release this project was released based on `MAJOR`. A change to the
the process was done to ensure that we have an aligned process under the org (similar to `controller-runtime` and
process was done to ensure that we have an aligned process under the org (similar to `controller-runtime` and
`controller-tools`) and to make it easier to produce patch releases.

## How to do a release
Expand Down
12 changes: 0 additions & 12 deletions WORKSPACE

This file was deleted.

2 changes: 1 addition & 1 deletion build/.goreleaser.yml
Original file line number Diff line number Diff line change
Expand Up @@ -44,7 +44,7 @@ builds:
- darwin_amd64
- darwin_arm64
env:
- KUBERNETES_VERSION=1.24.1
- KUBERNETES_VERSION=1.25.0
- CGO_ENABLED=0

# Only binaries of the form "kubebuilder_${goos}_${goarch}" will be released.
Expand Down
Loading

0 comments on commit ce1a6bc

Please sign in to comment.