GTBitsOfGood / GTBitsOfGood/juno
[Spring 2026] Automate Azure/S3 API keys creation
- Dominant language
- TypeScript
- Stars
- 14
- Forks
- 1
- PR merge metrics
- No merged PRs in 30d
Description
# Context
- Juno currently asks users to manually create API keys on Azure/S3 external dashboards and add them to Juno's File Provider table.
- The process of requesting access to Bog's shared file storage account requires lots of coordination with exec people
- Azure/S3 dashboard can be hard to navigate for unfamiliar people
# Requirement:
- Store BOG's Azure/S3 account/subscription ID as env variables
- When creating a File Provider:
- Check hasApiKeys flag (edit File Provider request to have this flag). If true, proceed with normal code flow
- If false, create storage accounts in Azure
- In Azure, under BoG's subscription account, users can have multiple storage accounts to store buckets and files.
- 1 storage account = 1 Juno File Provider (ideally, each project team should only have 1 File Provider, but can be flexible depending on use cases)
- For S3, need some research on S3 subscription and see if we need to create a sub-account like Azure or directly use the account whose credentials are in env variables
- Create/fetch api keys from these platforms and add to the File Provider while creating these objects.
- **Juno Dashboard:** Add options to not provide API keys and use auto-key creation in File Provider table
Contributor guide
No contributing guide indexed for this repository
Research direction
Start by tracing the File Provider creation request and the Juno Dashboard File Provider table. Research how Azure subscription and storage-account keys are created, and whether S3 needs a sub-account or can use the configured account credentials. Done means the hasApiKeys option, environment configuration, automatic key creation, and dashboard choice work for both providers.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- aws, azure, typescript
- Domain
- backend, cloud
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Quiet
- Clarity
- Needs clarification
- Newbie friendliness
- 35/100