question-mark
Stuck on an issue?

Lightrun Answers was designed to reduce the constant googling that comes with debugging 3rd party libraries. It collects links to all the places you might be looking at while hunting down a tough bug.

And, if you’re still stuck at the end, we’re happy to hop on a call to see how we can help out.

Need to append "/index" to all requests on local setup

See original GitHub issue

Describe the bug

On the local setup (docker-compose), one needs to append /index to all GET requests.

Expected behaviour

API as defined in the OpenAPI document.

Technical details

This is a workaround to a “fundamental design flaw” in MinIO, through which files can not have the same name as directories. This is not an issue on “proper” S3 compatible storages (e.g. AWS or OpenShift) and only affects local development - on open shift, the files are properly renamed. However, this is still a deviation from the documented API.

Possible Fix

Option A

  • Remove MinIO and the “upload” distribution runner from the local setup, instead serve the files generated by the “assembly” runner from the local file system using something like nginx (config from mock server can be reused). This would enable easy end-2end scenario testing (submission to distribution), but would also mean that not all of our code is run locally.

Option B:

  • Look for an alternative to MinIO that supports files and directories having the same name

Option C:

  • Remove MinIO and force users to provide some S3 compatible bucket themselves (e.g. private AWS S3, etc.)

Option D:

  • Add the “/index” suffixes to the actual API definition

Option E:

  • Just leave this as is for now, wait for Apple/Google to finally release a backend API spec and then implement that instead. Any “fixing” of the current API probably needs to be thrown away in a few days anyways when they force an API spec onto us.

Option F:

  • ???

Issue Analytics

  • State:closed
  • Created 3 years ago
  • Comments:5 (5 by maintainers)

github_iconTop GitHub Comments

1reaction
CCFennercommented, May 21, 2020

The objectstore endpoint needs to be defined in the docker-compose.yml, see https://github.com/corona-warn-app/cwa-server/pull/228. This fixes the connection issue between was and cloudserver.

0reactions
ole-lilienthalcommented, May 21, 2020

Thanks @CCFenner 👍 Saved my day… PR will follow in a bit, just some cleanup to be done.

Read more comments on GitHub >

github_iconTop Results From Across the Web

nginx - Append index.html to all requests that are a directory ...
I am trying to create a nginx rule that will append /index.html to all directory requests for the /static endpoint. For example, requests...
Read more >
Uploading Data with Index Handlers - Apache Solr
Index Handlers are Request Handlers designed to add, delete and update documents to the index. In addition to having plugins for importing rich...
Read more >
Index API | Elasticsearch Guide [8.5] | Elastic
To automatically create a data stream or index with an index API request, you must have the auto_configure , create_index , or manage...
Read more >
How To Define Routes and HTTP Request Methods in Express
This is where you will handle your routes and HTTP request methods: touch index.js. Copy. Install both Express and nodemon as dependencies.
Read more >
Local Secondary Indexes - Amazon DynamoDB
Retrieve data quickly from a local secondary index that has a composite primary key (partition key and sort key) with Amazon DynamoDB.
Read more >

github_iconTop Related Medium Post

No results found

github_iconTop Related StackOverflow Question

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Reddit Thread

No results found

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Dev.to Post

No results found

github_iconTop Related Hashnode Post

No results found