PAIR-code / PAIR-code/deliberate-lab
bug: Cloud Build Deploying indexes for the first time fails
Nobody has claimed this yet.
- Dominant language
- TypeScript
- Stars
- 96
- Forks
- 40
- Avg merge
- 2d 11h
- Merged PRs (30d)
- 20
Description
Currently, the cloudbuild.yaml's DeployFirebaseIndexes build step downloads the existing indexes first before deploying. It does that so that the logs contain a record of the indexes before the deployment. That way, if there's a problem, the Google Cloud Build logs have the necessary information to affect a fix.
However, this causes the DeployFirebaseIndexes step to fail for brand new environments that have no indexes. Somehow we need to disambiguate between the initial case, and a failure-to-read case so that the initial case can proceed with a deployment even though there are no existing indexes to report.
Contributor guide
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 in cloudbuild.yaml at the DeployFirebaseIndexes build step and trace how it downloads existing indexes before deployment. Distinguish a brand-new environment with no indexes from a failure to read indexes, while preserving the pre-deployment index information in the logs. Done means the first deployment proceeds without existing indexes and read failures still prevent an unsafe deployment.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- firebase, google-cloud
- Domain
- build-system, cloud, devops
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Quiet
- Clarity
- Mostly clear
- Newbie friendliness
- 68/100