A RetroSearch Logo

Home - News ( United States | United Kingdom | Italy | Germany ) - Football scores

Search Query:

Showing content from https://github.com/kubernetes-sigs/kubebuilder/commit/533874b302e9bf94cd7105831f8a543458752973 below:

Merge pull request #2163 from kubernetes-sigs/master · kubernetes-sigs/kubebuilder@533874b · GitHub

File tree Expand file treeCollapse file tree 9 files changed

+28

-27

lines changed

Filter options

Expand file treeCollapse file tree 9 files changed

+28

-27

lines changed Original file line number Diff line number Diff line change

@@ -1,5 +1,5 @@

1 1

name: Bug Report

2 -

about: Problems and issues with code or docs

2 +

description: Problems and issues with code or docs

3 3

labels:

4 4

- kind/bug

5 5

body:

@@ -126,7 +126,7 @@ body:

126 126 127 127

- type: dropdown

128 128

attributes:

129 -

label: " "

129 +

label: "Extra Labels"

130 130

description: |

131 131

If this is *also* a documentation request, etc, please select that below.

132 132

multiple: true

Original file line number Diff line number Diff line change

@@ -1,5 +1,5 @@

1 1

# allow free form issues as an escape hatch. This can be taken away if people abuse it ;-)

2 -

blank_issues_enabled: true

2 +

blank_issues_enabled: true

3 3 4 4

# link to CR and CT for easier access

5 5

contact_links:

Original file line number Diff line number Diff line change

@@ -81,7 +81,7 @@ body:

81 81 82 82

- type: dropdown

83 83

attributes:

84 -

label: " "

84 +

label: "Extra Labels"

85 85

description: |

86 86

If this is *also* a documentation request, etc, please select that below.

87 87

multiple: true

Original file line number Diff line number Diff line change

@@ -95,8 +95,8 @@ separately.

95 95 96 96

The docs are published off of three branches:

97 97 98 -

- `book-v2`: [book.kubebuilder.io](https://book.kubebuilder.io) -- current

99 -

docs

98 +

- `book-v3`: [book.kubebuilder.io](https://book.kubebuilder.io) -- current docs

99 +

- `book-v2`: [book-v2.kubebuilder.io](https://book.kubebuilder.io) -- legacy docs

100 100

- `book-v1`:

101 101

[book-v1.book.kubebuilder.io](https://book-v1.book.kubebuilder.io) --

102 102

legacy docs

Original file line number Diff line number Diff line change

@@ -88,7 +88,7 @@ golangci-lint:

88 88

##@ Tests

89 89 90 90

.PHONY: test

91 -

test: test-unit test-integration test-testdata ## Run the unit and integration tests (used in the CI)

91 +

test: test-unit test-integration test-testdata test-book ## Run the unit and integration tests (used in the CI)

92 92 93 93

.PHONY: test-unit

94 94

test-unit: ## Run the unit tests

@@ -119,3 +119,7 @@ test-e2e-local: ## Run the end-to-end tests locally

119 119

.PHONY: test-e2e-ci

120 120

test-e2e-ci: ## Run the end-to-end tests (used in the CI)`

121 121

./test/e2e/ci.sh

122 + 123 +

.PHONY: test-book

124 +

test-book: ## Run the cronjob tutorial's unit tests to make sure we don't break it

125 +

cd ./docs/book/src/cronjob-tutorial/testdata/project && make test

Original file line number Diff line number Diff line change

@@ -5,7 +5,7 @@ The Kubebuilder Project is released on an as-needed basis. The process is as fol

5 5

1. An issue is proposing a new release with a changelog since the last release. You will need to use the [kubebuilder-release-tools][kubebuilder-release-tools] to generate the notes. See [here][release-notes-generation]

6 6

1. All [OWNERS](OWNERS) must LGTM this release

7 7

1. An OWNER runs `git tag -s $VERSION` and pushes the tag with `git push $VERSION`. Note that after the OWNER push the tag the CI will automatically add the release notes and the assets.

8 -

1. A PR needs to be created to merge `release-X` branch into `book-vX` to pick up the new docs.

8 +

1. A PR needs to be created to merge `master` branch into `book-v3` to pick up the new docs.

9 9

1. The release issue is closed

10 10

1. An announcement email is sent to `kubebuilder@googlegroups.com` with the subject `[ANNOUNCE] kubebuilder $VERSION is released`

11 11 Original file line number Diff line number Diff line change

@@ -34,7 +34,7 @@ the latest controller-tools release. That info is stored in

34 34

## Book Releases

35 35 36 36

The book's main version (https://book.kubebuilder.io) is published off of

37 -

the [book-v2][book-branch] (a version built off the main branch can be

37 +

the [book-v3][book-branch] (a version built off the main branch can be

38 38

found at https://master.book.kubebuilder.io).

39 39 40 40

Docs changes that aren't specific to a new feature should be

@@ -43,7 +43,7 @@ The cherry-picks will automatically be published to the book once their PR

43 43

merges.

44 44 45 45

**When you publish a KubeBuilder release**, be sure to also submit a PR

46 -

that merges the main branch into [book-v2][book-branch], so that it

46 +

that merges the main branch into [book-v3][book-branch], so that it

47 47

describes the latest changes in the new release.

48 48 49 49

[book-branch]: https://github.com/kubernetes-sigs/kubebuilder/tree/tools-releases

@@ -57,7 +57,7 @@ the desired next version. Once the PR is merged, Google Cloud Build will

57 57

take care of building and publishing the artifacts.

58 58 59 59

[envtest-ref]: https://book.kubebuilder.io/reference/artifacts.html

60 -

[tools-branch]: https://github.com/kubernetes-sigs/kubebuilder/tree/tools-releases)

60 +

[tools-branch]: https://github.com/kubernetes-sigs/kubebuilder/tree/tools-releases

61 61 62 62

## Versioning

63 63 Original file line number Diff line number Diff line change

@@ -115,14 +115,16 @@ var _ = BeforeSuite(func() {

115 115

The only difference is that the manager is started in a separate goroutine so it does not block the cleanup of envtest

116 116

when you’re done running your tests.

117 117 118 -

It is not recommended to use the manager client in tests because it is not strongly consistent. Indeed, the manager

119 -

client is designed to do the "right thing" for controllers by default which is to read from caches. The best solution

120 -

is to instantiate a new client using client.New for tests (as k8sClient above). It will provide a client that reads

121 -

directly from the API meaning that you can write tests expecting read-after-write consistency.

122 - 123 -

However, keep in mind that you should not do this in the controller's conciliation loop (read an object after you have

124 -

written it). Kubernetes favors an approach where you first do some reads, process and then do some writes and return.

125 -

This way, you let the queue take care of the next cycle of readings if they are necessary.

118 +

Note that we set up both a "live" k8s client, separate from the manager. This is because when making assertions in

119 +

tests, you generally want to assert against the live state of the API server. If you used the client from the

120 +

manager (`k8sManager.GetClient`), you'd end up asserting against the contents of the cache instead, which is slower

121 +

and can introduce flakiness into your tests. We could use the manager's `APIReader` to accomplish the same thing,

122 +

but that would leave us with two clients in our test assertions and setup (one for reading, one for writing), and

123 +

it'd be easy to make mistakes.

124 + 125 +

Note that we keep the reconciler running against the manager's cache client, though -- we want our controller to

126 +

behave as it would in production, and we use features of the cache (like indicies) in our controller which aren't

127 +

available when talking directly to the API server.

126 128

*/

127 129 128 130

k8sManager, err := ctrl.NewManager(cfg, ctrl.Options{

Original file line number Diff line number Diff line change

@@ -14,11 +14,6 @@

14 14

# See the License for the specific language governing permissions and

15 15

# limitations under the License.

16 16 17 -

source test/common.sh

18 - 19 -

header_text "Running kubebuilder unit tests"

20 -

go test -race -v ./pkg/...

21 - 22 -

./test/integration.sh

23 - 24 -

./test/testdata/test.sh

17 +

# prow calls this file currently, but we can just use `make test` to test

18 +

# the set of things we want.

19 +

make test

You can’t perform that action at this time.


RetroSearch is an open source project built by @garambo | Open a GitHub Issue

Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo

HTML: 3.2 | Encoding: UTF-8 | Version: 0.7.4