I'm trying to configure bdbag to fetch via Globus for Whole Tale bags that have been downloaded to a user's local system. Looking at https://github.com/fair-research/bdbag/blob/master/doc/config.md, I see that I need a keychain.json, but it's not clear how the average user would configure this on their local system.
Here's what I have working so far. It seems a bit complex, so I'm hoping there's a more straightforward way:
- Install GCP and configure access with "/" writeable (since the transfer uses full paths)
pip install globus-cli and install sqlite3
globus login (this creates the transfer token)
sqlite3 ~/.globus/cli/storage.db "select * from token_storage where resource_server = 'transfer.api.globus.org'"
- Obtain the local endpoint ID from https://app.globus.org/endpoints
- Create
~/.bdbag/keychain.json:
[
{
"uri": "globus://",
"auth_type": "globus_transfer",
"auth_params": {
"local_endpoint": "<local endpoint ID>",
"transfer_token": "<access token from sqlite3 query>"
}
}
]
I'm happy to contribute a documentation PR. The basic requirements seem to be:
- Local endpoint and a way to obtain the endpoint ID
- A way to obtain a valid transfer token for the user
I'm trying to configure bdbag to fetch via Globus for Whole Tale bags that have been downloaded to a user's local system. Looking at https://github.com/fair-research/bdbag/blob/master/doc/config.md, I see that I need a
keychain.json, but it's not clear how the average user would configure this on their local system.Here's what I have working so far. It seems a bit complex, so I'm hoping there's a more straightforward way:
pip install globus-cliand installsqlite3globus login(this creates the transfer token)sqlite3 ~/.globus/cli/storage.db "select * from token_storage where resource_server = 'transfer.api.globus.org'"~/.bdbag/keychain.json:I'm happy to contribute a documentation PR. The basic requirements seem to be: