pmalek
Repos
70
Followers
16
Following
2

:gorilla: Kong for Kubernetes: The official Ingress Controller for Kubernetes.

1818
533

Run a watchdog on top of ethminer

4
0

Today I Learned

0
0

Vim plugin, toggle maximize your window

quick aims to be a small header only library to help black box testing in C++

2
0

Events

fix(gateway-api): verify TLS/TCPRoute is accepted before pushing to Gateway

As for the UDP issue: I'm personally in favor of postponing this (unless we have a strong desire to include this in 2.8). Reason being that the fix might take some time and be more involved (although I can be convinced otherwise).

Created at 4 minutes ago
Introduce a retry mechanism for fetching files from the internet

Problem statement

Sometimes the framework can receive a 4xx or 5xx HTTP error code when requesting a file (like a manifest) in order to deploy/teardown an add-on. These in most cases are intermittent and should be retried since as a developer I do not want to have my full suite of tests to fail because Github returned a 503.

Example of a failed CI: https://github.com/Kong/kubernetes-testing-framework/actions/runs/3647089054/jobs/6158901046

=== RUN   TestKongWithNodePort
    kongaddon_test.go:243: configuring the testing environment, with the kong addon using NodePort service type for proxy
    kongaddon_test.go:248: building the testing environment and Kubernetes cluster
20[22](https://github.com/Kong/kubernetes-testing-framework/actions/runs/3647089054/jobs/6158901046#step:6:23)/12/08 09:48:52 well-defined vars that were never replaced: SERVICE_NAME,SERVICE_NAMESPACE
    kongaddon_test.go:250: 
        	Error Trace:	/home/runner/work/kubernetes-testing-framework/kubernetes-testing-framework/test/integration/kongaddon_test.go:[25](https://github.com/Kong/kubernetes-testing-framework/actions/runs/3647089054/jobs/6158901046#step:6:26)0
        	Error:      	Received unexpected error:
        	            	failed to deploy addon kong: Error: INSTALLATION FAILED: failed to fetch https://github.com/Kong/charts/releases/download/kong-2.13.1/kong-2.13.1.tgz : 503 Service Unavailable
        	            	: exit status 1
        	Test:       	TestKongWithNodePort
--- FAIL: TestKongWithNodePort (138.36s)
Created at 34 minutes ago
api: data race when calling `Kustomizer.Run()` from multiple goroutines

Understood. Thanks for your response. How would you feel about introducing a lock on that variable, and making it be accessed/set from a func that controls this lock? Wouldn't that help?

Created at 45 minutes ago
pmalek delete branch dependabot/go_modules/google.golang.org/api-0.104.0
Created at 49 minutes ago

chore(deps): bump google.golang.org/api from 0.103.0 to 0.104.0 (#465)

Bumps google.golang.org/api from 0.103.0 to 0.104.0.


updated-dependencies:

  • dependency-name: google.golang.org/api dependency-type: direct:production update-type: version-update:semver-minor ...

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

Signed-off-by: dependabot[bot] support@github.com Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

Created at 49 minutes ago
pull request closed
chore(deps): bump google.golang.org/api from 0.103.0 to 0.104.0

Bumps google.golang.org/api from 0.103.0 to 0.104.0.

Dependabot compatibility score

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


You can trigger Dependabot actions by commenting on this PR:

  • @dependabot rebase will rebase this PR
  • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
  • @dependabot merge will merge this PR after your CI passes on it
  • @dependabot squash and merge will squash and merge this PR after your CI passes on it
  • @dependabot cancel merge will cancel a previously requested merge and block automerging
  • @dependabot reopen will reopen this PR if it is closed
  • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
  • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
Created at 49 minutes ago
chore(ci): remove dependabot automerge (approve)

What this PR does / why we need it:

This PR removes auto approval of dependabot's PRs.

Created at 1 hour ago
pmalek create branch delete-dependabot-automerge
Created at 1 hour ago

chore(deps): bump golangci/golangci-lint-action from 3.3.0 to 3.3.1 (#233)

Bumps golangci/golangci-lint-action from 3.3.0 to 3.3.1.


updated-dependencies:

  • dependency-name: golangci/golangci-lint-action dependency-type: direct:production update-type: version-update:semver-patch ...

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

Signed-off-by: dependabot[bot] support@github.com Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

ci: unlock CI golangci-lint version and add more rules (#236)

chore(deps): use only sigs.k8s.io/yaml to handle yaml

Signed-off-by: Matthieu MOREL matthieu.morel35@gmail.com

ci: add one CI step that requires all tests to pass (#241)

chore(deps): bump sigs.k8s.io/yaml from 1.2.0 to 1.3.0 (#243)

Bumps sigs.k8s.io/yaml from 1.2.0 to 1.3.0.


updated-dependencies:

  • dependency-name: sigs.k8s.io/yaml dependency-type: direct:production update-type: version-update:semver-minor ...

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

Signed-off-by: dependabot[bot] support@github.com Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

fix: correctly ingest entity defaults with maps values

The current implementation of the fillConfigRecord function works as follows:

  • navigate the entity structure
  • for each field, check whether it's set or not
  • if it's already set, move onto the next field
  • if it's not set, check the entity schema and set a default if that's defined

This works well in most cases, except for plugins fields being maps. For such fields, this simple check may not be enough since the field may be composed of several sub-fields possibly having their own default values. This means that moving onto the next field when the current map field is set may results into its inner sub-fields not being set with default values.

In decK, where this function is heavily used, this issue results in misleading deployment diffs.

This commit expands the check logic to also verify that all default values are set, even those of maps fields.

chore: add kong 3.1.0 to CI (#240)

Merge branch 'main' into feat/oauth2-client-type

Created at 17 hours ago
issue comment
feat: add keys and key-sets as core entities

Added the other methods and tests... which of course require Kong newer than 3.0, so they're not running on CI

@javierguerragiraldez If you merge main or rebase you'll get #240 which introduces 3.1.0 to the CI.

Created at 17 hours ago

chore: add kong 3.1.0 to CI (#240)

Created at 17 hours ago
delete branch
pmalek delete branch add-kong-3.1.0-to-ci
Created at 17 hours ago
pull request closed
chore: add kong 3.1.0 to CI
Created at 17 hours ago
⚠️ go/v4-alpha: change the layout to follow Golang Standards

I think it may be important to note that being under pkg/ does not preclude the notion of doing this.

I might be behind on the times! Is it possible now to have a go module nested within another go module? I'm not sure how that would work. At a minimum it seems like it would be confusing, but I'm interested to know if and how people are doing this.

You might want to look at a prominent example in the wild: https://github.com/open-telemetry/opentelemetry-collector-contrib with all the processors, exporters and receivers having their own respective modules e.g. https://github.com/open-telemetry/opentelemetry-collector-contrib/tree/main/processor/resourceprocessor (+ the naming of the tags for nested modules).

Created at 18 hours ago

chore(deps): use only sigs.k8s.io/yaml to handle yaml

Signed-off-by: Matthieu MOREL matthieu.morel35@gmail.com

ci: add one CI step that requires all tests to pass (#241)

chore(deps): bump sigs.k8s.io/yaml from 1.2.0 to 1.3.0 (#243)

Bumps sigs.k8s.io/yaml from 1.2.0 to 1.3.0.


updated-dependencies:

  • dependency-name: sigs.k8s.io/yaml dependency-type: direct:production update-type: version-update:semver-minor ...

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

Signed-off-by: dependabot[bot] support@github.com Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

fix: correctly ingest entity defaults with maps values

The current implementation of the fillConfigRecord function works as follows:

  • navigate the entity structure
  • for each field, check whether it's set or not
  • if it's already set, move onto the next field
  • if it's not set, check the entity schema and set a default if that's defined

This works well in most cases, except for plugins fields being maps. For such fields, this simple check may not be enough since the field may be composed of several sub-fields possibly having their own default values. This means that moving onto the next field when the current map field is set may results into its inner sub-fields not being set with default values.

In decK, where this function is heavily used, this issue results in misleading deployment diffs.

This commit expands the check logic to also verify that all default values are set, even those of maps fields.

Merge branch 'main' into add-kong-3.1.0-to-ci

Created at 18 hours ago
⚠️ go/v4-alpha: change the layout to follow Golang Standards

Dropping my 2 cents as well into the mix: I don't have a hard opinion on putting apis under pkg/ or not but I do see a benefit of doing so my making it "standard" as per the #932 and also thanks to separation of directories in a way that:

  • we have cmd/ for app's entrypoints (main.go, flags and such)
  • pkg/ for all the code that is exportable and usable from outside
  • internal/ where folks can put their controllers code and anything else that they don't want to share outside (make part of the API contract)

Hence my slight 👍 on putting apis into pkg/.

Created at 18 hours ago
issue comment
fix: correctly ingest entity defaults with maps values

Thanks for the nice description on this one! 🙇

Created at 20 hours ago
pmalek delete branch dependabot/go_modules/cloud.google.com/go/container-1.9.0
Created at 1 day ago

chore(deps): bump cloud.google.com/go/container from 1.8.0 to 1.9.0 (#460)

Bumps cloud.google.com/go/container from 1.8.0 to 1.9.0.


updated-dependencies:

  • dependency-name: cloud.google.com/go/container dependency-type: direct:production update-type: version-update:semver-minor ...

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

Signed-off-by: dependabot[bot] support@github.com Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

Created at 1 day ago
pull request closed
chore(deps): bump cloud.google.com/go/container from 1.8.0 to 1.9.0

Bumps cloud.google.com/go/container from 1.8.0 to 1.9.0.

Dependabot compatibility score

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


You can trigger Dependabot actions by commenting on this PR:

  • @dependabot rebase will rebase this PR
  • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
  • @dependabot merge will merge this PR after your CI passes on it
  • @dependabot squash and merge will squash and merge this PR after your CI passes on it
  • @dependabot cancel merge will cancel a previously requested merge and block automerging
  • @dependabot reopen will reopen this PR if it is closed
  • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
  • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
Created at 1 day ago
delete branch
pmalek delete branch dependabot/go_modules/main/sigs.k8s.io/yaml-1.3.0
Created at 1 day ago

chore(deps): bump sigs.k8s.io/yaml from 1.2.0 to 1.3.0 (#243)

Bumps sigs.k8s.io/yaml from 1.2.0 to 1.3.0.


updated-dependencies:

  • dependency-name: sigs.k8s.io/yaml dependency-type: direct:production update-type: version-update:semver-minor ...

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

Signed-off-by: dependabot[bot] support@github.com Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

Created at 1 day ago
pull request closed
chore(deps): bump sigs.k8s.io/yaml from 1.2.0 to 1.3.0

Bumps sigs.k8s.io/yaml from 1.2.0 to 1.3.0.

Dependabot compatibility score

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


You can trigger Dependabot actions by commenting on this PR:

  • @dependabot rebase will rebase this PR
  • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
  • @dependabot merge will merge this PR after your CI passes on it
  • @dependabot squash and merge will squash and merge this PR after your CI passes on it
  • @dependabot cancel merge will cancel a previously requested merge and block automerging
  • @dependabot reopen will reopen this PR if it is closed
  • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
  • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
Created at 1 day ago