Files
cgalo5758 a94ff08336 Add Discourse integration
Deliver forum posting entitlements through managed group membership with
identity linkage, periodic reconciliation, webhook handling, and an
operator mapping surface.

Include fake and live test environments, setup documentation,
migrations,
and end-to-end coverage.
2026-07-20 19:49:34 -07:00

114 lines
5.2 KiB
YAML

version: "2"
sql:
- engine: "postgresql"
schema:
- "../../../db/migrations/"
- "migrations/"
- "../../../db/sqlc_schemas.sql"
queries: "queries/"
gen:
go:
package: "discourse"
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:
discourse_user_link: UserLink
discourse_user_links: UserLink
discourse_group_mapping: GroupMapping
discourse_group_mappings: GroupMapping
discourse_observed_group_member: ObservedGroupMember
discourse_observed_group_members: ObservedGroupMember
core_organization: Organization
core_organizations: Organization
core_workspace: Workspace
core_workspaces: Workspace
core_role: Role
core_roles: Role
core_role_assignment: RoleAssignment
core_role_assignments: RoleAssignment
core_org_member: OrgMember
core_org_members: OrgMember
core_org_type: OrganizationOrgType
core_org_types: OrganizationOrgType
# Spillover tables pulled in because ../db/migrations/ declares the
# whole "core" schema. Renamed to match the canonical mapping in
# internal/integration/sqlc.yaml (see the fedwiki store's sqlc.yaml
# for the same list and rationale).
core_person: IdentityPerson
core_persons: IdentityPerson
core_user: IdentityUser
core_users: IdentityUser
core_account: BillingAccount
core_accounts: BillingAccount
core_boolean_entitlement: EntitlementsBooleanEntitlement
core_boolean_entitlements: EntitlementsBooleanEntitlement
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_invoice: BillingInvoice
core_invoices: BillingInvoice
core_invoice_line_item: BillingInvoiceLineItem
core_invoice_line_items: BillingInvoiceLineItem
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_outbox: IntegrationOutbox
core_outboxes: IntegrationOutbox
core_payment: BillingPayment
core_payments: BillingPayment
core_payment_method: BillingPaymentMethod
core_payment_methods: BillingPaymentMethod
core_plan_ladder: BillingPlanLadder
core_plan_ladders: BillingPlanLadder
core_plan_ladder_tier: BillingPlanLadderTier
core_plan_ladder_tiers: BillingPlanLadderTier
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_price: BillingPrice
core_prices: BillingPrice
core_product: BillingProduct
core_products: BillingProduct
core_product_kind: BillingProductKind
core_product_kinds: BillingProductKind
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_resource_pool: EntitlementsResourcePool
core_resource_pools: EntitlementsResourcePool
core_subscription: BillingSubscription
core_subscriptions: BillingSubscription
core_subscription_change: BillingSubscriptionChange
core_subscription_changes: BillingSubscriptionChange
core_subscription_item: BillingSubscriptionItem
core_subscription_items: BillingSubscriptionItem
core_subscription_scheduled_change: BillingSubscriptionScheduledChange
core_subscription_scheduled_changes: BillingSubscriptionScheduledChange
core_webhook_event: IntegrationWebhookEvent
core_webhook_events: IntegrationWebhookEvent
overrides:
- db_type: "uuid"
go_type: "string"