fluxninja / aperture

Rate limiting, caching, and request prioritization for modern workloads
https://docs.fluxninja.com
Apache License 2.0
612 stars 24 forks source link

"aperturectl blueprints list" fails in a WSL (and other Linux) environments (Ubuntu 20.04, 22.04) #3258

Open jgoeres opened 4 months ago

jgoeres commented 4 months ago

Since I am on a Windows box, where as I learned in another issue here the playground doesn't work, I installed aperture controller and agent using the helm charts in a local minikube. I wrote a simple test app, which seems to connect to aperture just fine. I now want to create a rate limiting policy. Alas, the only docs about creating policies I found are either using the SaaS UI or using aperturectl. Alas, there is no Windows binary for aperturectl, so I tried running it from my WSL environment (Ubuntu 20.04). Unfortunately, this fails with

panic: rename /home/<USER>/.aperturectl/blueprints/github.com_fluxninja_aperture_blueprints@latest/.tmp/99a20cdfe3f0988106437d12e0a11aee1975499189/1.24 /home/<USER>/.aperturectl/blueprints/github.com_fluxninja_aperture_blueprints@latest/github.com/jsonnet-libs/k8s-libsonnet/1.24: no such file or directory

Same when I specify a version

Describe the bug aperturectl blueprints list (version 2.34.0) fails in a WSL environment (Ubuntu 20.04)

Steps to reproduce

Get the debian package from https://github.com/fluxninja/aperture/releases/tag/v2.34.0, install as usual with

sudo dpkg -i aperturectl_2.34.0*.deb

Run aperturectl with either

aperturectl blueprints list

or

aperturectl blueprints list

it will fail with

    panic: rename /home/<USER>/.aperturectl/blueprints/github.com_fluxninja_aperture_blueprints@latest/.tmp/99a20cdfe3f0988106437d12e0a11aee1975499189/1.24 /home/<USER>/.aperturectl/blueprints/github.com_fluxninja_aperture_blueprints@latest/github.com/jsonnet-libs/k8s-libsonnet/1.24: no such file or directory

or

    panic: rename /home/<USER>/.aperturectl/blueprints/github.com_fluxninja_aperture_blueprints@v2.34.0/.tmp/99a20cdfe3f0988106437d12e0a11aee1975499189/1.24 /home/<USER>/.aperturectl/blueprints/github.com_fluxninja_aperture_blueprints@v2.34.0/github.com/jsonnet-libs/k8s-libsonnet/1.24: no such file or directory

respectively.
When checking the tar.gz it downloads, in my case

https://github.com/jsonnet-libs/k8s-libsonnet/archive/bf9a62cfd32a58c071b8410bfcdec058475dd25e.tar.gz

I can see that this archive only contains versions 1.26 to 1.29. Not sure why aperture thinks that my k8s version is 1.24, can someone shed some light on this?

What did you expect to see? I see the blueprints available

What did you see instead? The error message mentioned above

What version did you use? 2.34.0

What config did you use?

none (should there be any kind of config for aperturectl?)

OS: WSL with Ubuntu 20.04 distro

jgoeres commented 3 months ago

I meanwhile tried this on an Ubuntu 22.04.3 LTS WSL distro and on a regular CentOS box, same result. I also tried this with different versions (2.34.0, 2.31.1, 2.30.1), always getting the corresponding linux-amd64 binary from the releases page. Same result.