Sprint 1: Database contains usage-related tables and queries generated by sqlc
In order to build a first version of the billing service and prepare to store usage data in a database, we want to use sqlc to define a database schema and some queries for each table. We may want to use a migration tool to set up the database.
The scope of this ticket is storing the raw usage data for all resources Cloud.gov bills customers for. The tables related to credits will be handled separately next sprint.
- sqlc: https://docs.sqlc.dev/en/latest/
- Go migration package: https://github.com/golang-migrate/migrate
Acceptance Criteria
Tables for:
-
Customer information -
Each category of billable item -
Each individually billable instance -
Each reading of usage data
Security considerations
- sqlc will handle preventing sql injection attacks
Implementation sketch
Edited by Zach Rollyson