DocX
Repos
71
Followers
13
Following
4

HTTP proxy that signs requests for upstream AWS endpoints

2
3

Elixir is a dynamic, functional language designed for building scalable and maintainable applications

0
0

JSONAPI.org Serialization in Elixir.

0
0

Simple angular directive for button showing progress and result of promise (eg resource request call)

19
2

Connect to shell of containerized application like you were used to before Docker

18
4

Confirmation Dialog component for Nette framework

10
2

Events

add test for watch with empty groups

Created at 13 hours ago

add unit test for empty config values

Created at 13 hours ago
issue comment
support impersonation via aut_options and in kubectl config

@cben thanks for the review. I've added the changelog and unit test for watch. Please take a look.

Created at 14 hours ago

add changelog

add unit test for watch

Created at 14 hours ago
issue comment
Kubernetes API Authentication Proxy Request Headers

This is also issue with HTTP client libraries in ruby that does not support sending multiple request headers with same name. It is of course possible to send it on IO level but that is impractical.

Same goes for the Impersonate-User header

Created at 2 weeks ago
issue comment
Impossible to make request with same-name multi-value headers

There is actually open issue in Kubernetes about this. Apparently comma has special semantics for Kubernetes, so just simply joining multiple values with comma is not possible.

Created at 2 weeks ago
issue comment
Impossible to make request with same-name multi-value headers

The golang kubernetes client supports multiple group headers for example:

https://github.com/kubernetes/client-go/blob/c6bd30b9ec5f668df191bc268c6f550c37726edb/transport/round_trippers.go#L251-L252

Created at 2 weeks ago

fix: handle multi value impersonation fields

Created at 2 weeks ago

fix: handle multi value impersonation fields

Created at 2 weeks ago

fix: handle multi value impersonation fields

Created at 2 weeks ago
opened issue
Impossible to make request with same-name multi-value headers

Basic Info

  • Faraday Version: 2.7.4
  • Ruby Version: 3.1.0

Issue description

Setting multi-value headers in request method results in the headers to be send as single header with values joined by comma ,.

This makes it impossible to use some APIs that expects multiple values to be send as independent headers with the same name, example https://kubernetes.io/docs/reference/access-authn-authz/authentication/#user-impersonation

Steps to reproduce

Make request with Faraday:

require "faraday"
Faraday.get("http://localhost/", {}, { "Test" => ["foo", "bar"] })

Received request headers on server side:

GET / HTTP/1.1
Host: localhost
User-Agent: Faraday v2.7.4
Accept: */*
Accept-Encoding: gzip;q=1.0,deflate;q=0.6,identity;q=0.3
Test: foo, bar

Expected headers:

GET / HTTP/1.1
Host: localhost
User-Agent: Faraday v2.7.4
Accept: */*
Accept-Encoding: gzip;q=1.0,deflate;q=0.6,identity;q=0.3
Test: foo
Test: bar
Created at 2 weeks ago

fix: handle multi value impersonation fields

Created at 2 weeks ago
issue comment
support impersonation via auth_options and in kubectl config

Hi @grosser I've updated your work to latest master and tested it works. I've run into the missing impersonation when working on our internal project. Getting the update makes it work.

I've made new PR here: https://github.com/ManageIQ/kubeclient/pull/600 but feel free to update this PR if you think you would loose the credit :)

Created at 2 weeks ago

fix: add headers to faraday client

Created at 2 weeks ago
pull request opened
support impersonation via aut_options and in kubectl config

This PR is rebase and update of https://github.com/ManageIQ/kubeclient/pull/524 to current master version

We tested it and it works as expected

Created at 2 weeks ago
create branch
DocX create branch grosser/impersonate
Created at 2 weeks ago
delete branch
DocX delete branch docx/fix-watcher-race-condition
Created at 3 weeks ago
delete branch
DocX delete branch docx/allow-options-pass-to-informer
Created at 3 weeks ago
issue comment
fix: handle informer.stop_worker race conditions

@cben thanks for merging the other PR. resolved the conflict and rebased the commits to one.

Created at 3 weeks ago

fix: handle Informer#stop_worker race conditions

Created at 3 weeks ago

feat: allow passing options to Informer

Merge pull request #598 from DocX/docx/allow-options-pass-to-informer

feat: allow passing options to Informer

Merge branch 'master' into docx/fix-watcher-race-condition

Created at 3 weeks ago
issue comment
fix: handle informer.stop_worker race conditions

@cben thanks. the error looks like it was flake, however i've updated the unit test code anyway to be more robust and less time-dependent. hopefully it should help.

Created at 3 weeks ago