dtantsur / rust-osauth

Asynchronous OpenStack session and authentication for Rust
Apache License 2.0
12 stars 9 forks source link

list-servers example fails on Liberty cloud #20

Closed mchlumsky closed 3 weeks ago

mchlumsky commented 4 years ago

The list-servers example fails on our old Liberty cloud:

$ RUST_LOG=debug cargo run --example list-servers
    Finished dev [unoptimized + debuginfo] target(s) in 0.13s
     Running `target/debug/examples/list-servers`
[2020-07-16T01:52:24Z DEBUG osauth::session] No cached information for service compute, fetching
[2020-07-16T01:52:24Z DEBUG osauth::identity] Requesting a catalog endpoint for service 'compute', filters EndpointFilters { interfaces: ValidInterfaces { items: [Public, Public, Public], len: 1 }, region: Some("msr") }
[2020-07-16T01:52:24Z DEBUG reqwest::connect] starting new connection: http://host.domain.tld:5000/
[2020-07-16T01:52:24Z DEBUG hyper::client::connect::dns] resolving host="host.domain.tld"
[2020-07-16T01:52:24Z DEBUG hyper::client::connect::http] connecting to x.x.x.x:5000
[2020-07-16T01:52:24Z DEBUG hyper::client::connect::http] connected to x.x.x.x:5000
[2020-07-16T01:52:24Z DEBUG hyper::proto::h1::io] flushed 170 bytes
[2020-07-16T01:52:24Z DEBUG hyper::proto::h1::io] flushed 198 bytes
[2020-07-16T01:52:25Z DEBUG hyper::proto::h1::io] read 8192 bytes
[2020-07-16T01:52:25Z DEBUG hyper::proto::h1::io] parsed 6 headers
[2020-07-16T01:52:25Z DEBUG hyper::proto::h1::conn] incoming body is content-length (17774 bytes)
[2020-07-16T01:52:25Z DEBUG reqwest::async_impl::client] response '201 Created' for http://host.domain.tld:5000/v3/auth/tokens
[2020-07-16T01:52:25Z DEBUG hyper::proto::h1::io] read 6702 bytes
[2020-07-16T01:52:25Z DEBUG hyper::proto::h1::io] read 3284 bytes
[2020-07-16T01:52:25Z DEBUG hyper::proto::h1::conn] incoming body completed
[2020-07-16T01:52:25Z DEBUG hyper::client::pool] pooling idle connection for ("http", host.domain.tld:5000)
[2020-07-16T01:52:25Z DEBUG osauth::identity] Received a token expiring at 2020-07-16 13:52:25.150831 +00:00
[2020-07-16T01:52:25Z DEBUG osauth::endpointfilters] Received Endpoint { interface: "public", region: "msr", url: "https://host.domain.tld:8774/v2/<project-id>" } for compute
[2020-07-16T01:52:25Z DEBUG osauth::protocol] Fetching compute service info from https://host.domain.tld:8774/v2/<project-id>
[2020-07-16T01:52:25Z DEBUG reqwest::connect] starting new connection: https://host.domain.tld:8774/
[2020-07-16T01:52:25Z DEBUG hyper::client::connect::dns] resolving host="host.domain.tld"
[2020-07-16T01:52:25Z DEBUG hyper::client::connect::http] connecting to y.y.y.y:8774
[2020-07-16T01:52:25Z DEBUG hyper::client::connect::http] connected to y.y.y.y:8774
[2020-07-16T01:52:25Z DEBUG hyper::proto::h1::io] flushed 336 bytes
[2020-07-16T01:52:25Z DEBUG hyper::proto::h1::io] read 342 bytes
[2020-07-16T01:52:25Z DEBUG hyper::proto::h1::io] parsed 4 headers
[2020-07-16T01:52:25Z DEBUG hyper::proto::h1::conn] incoming body is content-length (154 bytes)
[2020-07-16T01:52:25Z DEBUG hyper::proto::h1::conn] incoming body completed
[2020-07-16T01:52:25Z DEBUG hyper::client::pool] pooling idle connection for ("https", host.domain.tld:8774)
[2020-07-16T01:52:25Z DEBUG reqwest::async_impl::client] response '404 Not Found' for https://host.domain.tld:8774/v2/<project-id>
[2020-07-16T01:52:25Z DEBUG osauth::protocol] Got HTTP 404 from https://host.domain.tld:8774/v2/<project-id>, trying parent endpoint
[2020-07-16T01:52:25Z DEBUG osauth::protocol] Fetching compute service info from https://host.domain.tld:8774/v2/
[2020-07-16T01:52:25Z DEBUG hyper::client::pool] reuse idle connection for ("https", host.domain.tld:8774)
[2020-07-16T01:52:25Z DEBUG hyper::proto::h1::io] flushed 304 bytes
[2020-07-16T01:52:25Z DEBUG hyper::proto::h1::io] read 574 bytes
[2020-07-16T01:52:25Z DEBUG hyper::proto::h1::io] parsed 4 headers
[2020-07-16T01:52:25Z DEBUG hyper::proto::h1::conn] incoming body is content-length (401 bytes)
[2020-07-16T01:52:25Z DEBUG hyper::proto::h1::conn] incoming body completed
[2020-07-16T01:52:25Z DEBUG hyper::client::pool] pooling idle connection for ("https", host.domain.tld:8774)
[2020-07-16T01:52:25Z DEBUG reqwest::async_impl::client] response '200 OK' for https://host.domain.tld:8774/v2/
[2020-07-16T01:52:25Z DEBUG osauth::protocol] Received ServiceInfo { root_url: "https://host.domain.tld:8774/v2/", major_version: Some(ApiVersion(2, 0)), current_version: None, minimum_version: None } for compute service
[2020-07-16T01:52:25Z DEBUG hyper::client::pool] reuse idle connection for ("https", host.domain.tld:8774)
[2020-07-16T01:52:25Z DEBUG hyper::proto::h1::io] flushed 311 bytes
[2020-07-16T01:52:25Z DEBUG hyper::proto::h1::io] read 342 bytes
[2020-07-16T01:52:25Z DEBUG hyper::proto::h1::io] parsed 4 headers
[2020-07-16T01:52:25Z DEBUG hyper::proto::h1::conn] incoming body is content-length (154 bytes)
[2020-07-16T01:52:25Z DEBUG hyper::proto::h1::conn] incoming body completed
[2020-07-16T01:52:25Z DEBUG hyper::client::pool] pooling idle connection for ("https", host.domain.tld:8774)
[2020-07-16T01:52:25Z DEBUG reqwest::async_impl::client] response '404 Not Found' for https://host.domain.tld:8774/v2/servers
thread 'main' panicked at 'Failed to list servers: Error { kind: ResourceNotFound, message: "<html>\n <head>\n  <title>404 Not Found</title>\n </head>\n <body>\n  <h1>404 Not Found</h1>\n  The resource could not be found.<br /><br />\n\n\n\n </body>\n</html>", status: Some(404) }', examples/list-servers.rs:34:32
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
dtantsur commented 3 years ago

If you're by chance still here, could you run

openstack --debug server list

? I'd like to compare the operations.

dtantsur commented 3 weeks ago

I think I must admit it now: I'm not going to fix Liberty support. Sorry!