Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Don't use local s3 data for tests, use open-neurodata with use_https=True #261

Open
bvarjavand opened this issue Apr 5, 2021 · 9 comments
Assignees

Comments

@bvarjavand
Copy link
Contributor

There is around 500mb of s3-formatted data in our data folder which isn't strictly necessary for testing.
Specifically, the change requested is that tests for the neuron trace class use the following urls instead of searching filepaths.

"s3://open-neurodata/brainlit/brain1"
"s3://open-neurodata/brainlit/brain1_segments"

The code modified would just be these lines.

Then, we can uncomment these 2 lines in .gitignore to significantly reduce the size of the repo.

@tathey1
Copy link
Member

tathey1 commented Apr 28, 2021

let's address this first

@JacopoTeneggi
Copy link
Collaborator

JacopoTeneggi commented May 1, 2021

The use of use_https=True has proven to break CloudVolume on versions of python later than 3.8.5 . Initially, we thought it was an issue limited to versions later than 3.9.0 (see #272 ), but running tests with the use of use_https=True failed (see 641fa85 ). This is because the version of python shipped in cimg/python3.8 , which is used in CircleCI, is 3.8.9 . I tried bumping CV to the latest version, but there are some other requirements that have conflicts.

@tathey1
Copy link
Member

tathey1 commented May 1, 2021

So @JacopoTeneggi , is there any way for you to access our data on s3 without an access key?

@JacopoTeneggi
Copy link
Collaborator

JacopoTeneggi commented May 1, 2021

Not currently @tathey1 I saved the data for tests in data/ . I can access things directly with boto, but not through cloudvolume

@tathey1
Copy link
Member

tathey1 commented May 3, 2021

Also, I believe use_https=True is causing issues with cloud volume in python 3.7, e.g. see NotImplementedError here

@JacopoTeneggi
Copy link
Collaborator

@bvarjavand , @tathey1 and I were discussing this idea: saving some service account credentials on CircleCI as environmental variables and add a step to the pipeline that will save the credentials in ./cloudvolume so that we can initialize an authenticated neuroglancer_session without worrying about use_https and delete the data from the repo

@tathey1
Copy link
Member

tathey1 commented May 3, 2021

@alishakodibagkar can you look into if this is possible^

@bvarjavand
Copy link
Contributor Author

@JacopoTeneggi @tathey1 @alishakodibagkar I had things setup using the username stored in the travis.yml file, like here. The password was encrypted and only available as a travis CI environment variable, and you need both public and private keys to access the aws data. I believe the same kind of thing can be done in CircleCI according to this link. I created the .secrets file using a script here and it ran every time in the .yml file (here). Let me know if you have any questions.

@github-actions
Copy link

github-actions bot commented Feb 8, 2023

Stale issue message

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

4 participants