Replace product-kind branching and direct position writes with enclosed database functions driven by structural product shape. Migrate grant and provision data, unify operator issuance, update subscription and expiry flows, and add migration and integration proofs.
106 lines
4.8 KiB
YAML
106 lines
4.8 KiB
YAML
version: "2"
|
|
sql:
|
|
- engine: "postgresql"
|
|
schema:
|
|
- "../db/migrations/"
|
|
- "../db/sqlc_schemas.sql"
|
|
queries: "queries/"
|
|
gen:
|
|
go:
|
|
package: "billing"
|
|
out: "."
|
|
sql_package: "database/sql"
|
|
emit_json_tags: true
|
|
emit_prepared_queries: false
|
|
emit_interface: true
|
|
emit_exact_table_names: false
|
|
emit_empty_slices: true
|
|
omit_unused_structs: true
|
|
rename:
|
|
core_account: Account
|
|
core_accounts: Account
|
|
core_price: Price
|
|
core_prices: Price
|
|
core_product: Product
|
|
core_products: Product
|
|
core_subscription: Subscription
|
|
core_subscriptions: Subscription
|
|
core_subscription_item: SubscriptionItem
|
|
core_subscription_items: SubscriptionItem
|
|
core_subscription_change: SubscriptionChange
|
|
core_subscription_changes: SubscriptionChange
|
|
core_subscription_scheduled_change: SubscriptionScheduledChange
|
|
core_subscription_scheduled_changes: SubscriptionScheduledChange
|
|
core_invoice: Invoice
|
|
core_invoices: Invoice
|
|
core_invoice_line_item: InvoiceLineItem
|
|
core_invoice_line_items: InvoiceLineItem
|
|
core_payment: Payment
|
|
core_payments: Payment
|
|
core_payment_method: PaymentMethod
|
|
core_payment_methods: PaymentMethod
|
|
core_plan_ladder: PlanLadder
|
|
core_plan_ladders: PlanLadder
|
|
core_plan_ladder_tier: PlanLadderTier
|
|
core_plan_ladder_tiers: PlanLadderTier
|
|
core_product_kind: ProductKind
|
|
core_product_kinds: ProductKind
|
|
# Spillover tables pulled in because ../db/migrations/ declares the
|
|
# whole "core" schema. Renamed to match the exact pre-consolidation
|
|
# type names (from their old owning schema) so model diffs stay
|
|
# schema-string-only -- see internal/integration/sqlc.yaml for the
|
|
# canonical mapping this list is drawn from.
|
|
core_person: IdentityPerson
|
|
core_persons: IdentityPerson
|
|
core_user: IdentityUser
|
|
core_users: IdentityUser
|
|
core_organization: OrganizationOrganization
|
|
core_organizations: OrganizationOrganization
|
|
core_workspace: OrganizationWorkspace
|
|
core_workspaces: OrganizationWorkspace
|
|
core_role: OrganizationRole
|
|
core_roles: OrganizationRole
|
|
core_role_assignment: OrganizationRoleAssignment
|
|
core_role_assignments: OrganizationRoleAssignment
|
|
core_org_member: OrganizationOrgMember
|
|
core_org_members: OrganizationOrgMember
|
|
core_org_type: OrganizationOrgType
|
|
core_org_types: OrganizationOrgType
|
|
core_entitlement_set: EntitlementsEntitlementSet
|
|
core_entitlement_sets: EntitlementsEntitlementSet
|
|
core_entitlement_set_rule: EntitlementsEntitlementSetRule
|
|
core_entitlement_set_rules: EntitlementsEntitlementSetRule
|
|
core_grant: EntitlementsGrant
|
|
core_grants: EntitlementsGrant
|
|
core_numeric_entitlement: EntitlementsNumericEntitlement
|
|
core_numeric_entitlements: EntitlementsNumericEntitlement
|
|
core_numeric_entitlement_contribution: EntitlementsNumericEntitlementContribution
|
|
core_numeric_entitlement_contributions: EntitlementsNumericEntitlementContribution
|
|
core_numeric_entitlement_usage: EntitlementsNumericEntitlementUsage
|
|
core_numeric_entitlement_usages: EntitlementsNumericEntitlementUsage
|
|
core_pool_assignment: EntitlementsPoolAssignment
|
|
core_pool_assignments: EntitlementsPoolAssignment
|
|
core_pool_provision: EntitlementsPoolProvision
|
|
core_pool_provisions: EntitlementsPoolProvision
|
|
core_pool_provision_ladder: EntitlementsPoolProvisionLadder
|
|
core_pool_provision_ladders: EntitlementsPoolProvisionLadder
|
|
core_pool_provision_transition: EntitlementsPoolProvisionTransition
|
|
core_pool_provision_transitions: EntitlementsPoolProvisionTransition
|
|
core_resource_pool: EntitlementsResourcePool
|
|
core_resource_pools: EntitlementsResourcePool
|
|
core_outbox: IntegrationOutbox
|
|
core_outboxes: IntegrationOutbox
|
|
core_provider: Provider
|
|
core_providers: Provider
|
|
core_provider_operation: ProviderOperation
|
|
core_provider_operations: ProviderOperation
|
|
core_provider_state: IntegrationProviderState
|
|
core_provider_states: IntegrationProviderState
|
|
core_resource_key: ResourceKey
|
|
core_resource_keys: ResourceKey
|
|
core_webhook_event: IntegrationWebhookEvent
|
|
core_webhook_events: IntegrationWebhookEvent
|
|
overrides:
|
|
- db_type: "uuid"
|
|
go_type: "string"
|