Q42 / Q42/Template.ComposeMultiplatform
Improve secrets management
Nobody has claimed this yet.
- Dominant language
- Kotlin
- Stars
- 1
- Forks
- 0
- Avg merge
- 7d 15h
- Merged PRs (30d)
- 15
Description
I don't think there is a system at all currently to centralise configuration of api keys etc. Project setup requires you to setup a bunch of github action secrets. This approach pretty much blocks building release builds locally.
If all secrets are in a single file, then the only secret that needs to be setup in github actions is the content of that secrets file. Something like this could be nice: https://github.com/Q42/Template.Android/blob/develop/dummy_secrets.gradle
A disadvantage of that approach is that the gradle file is only used in gradle itself. Not in github action steps.
Implementation
- think of a file format that can be loaded both by gradle and by Github Actions as environment variables...?
- add the contents of that file to github as an Action secret
- Add the file to .gitignored, we don't want secrets in the repo
- let github actions read secrets from that file
- let Gradle read all secrets from that file
- add the file to 1pw
- document in README
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by inspecting the existing Gradle setup, GitHub Actions workflows, .gitignore, and README to inventory how secrets are currently referenced. Decide on a format usable by both Gradle and GitHub Actions, then verify that local release builds and Actions can load it without committing secrets. Done means the shared secret file is ignored, stored in 1Password and GitHub Actions, documented in the README, and consumed by both systems.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- github-actions, kotlin
- Domain
- build-system, ci-cd, security
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Active
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100