Skip to content

Commit 0638edf

Browse files
feat(arcades): add public identity schema
1 parent bedd616 commit 0638edf

5 files changed

Lines changed: 3445 additions & 0 deletions

File tree

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
CREATE TABLE "arcade"."installation_identities" (
2+
"id" bigserial PRIMARY KEY NOT NULL,
3+
"public_id" text NOT NULL,
4+
"venue_id" bigint NOT NULL,
5+
"game_id" text NOT NULL,
6+
"version" text,
7+
"cabinet_model" text,
8+
"region" text,
9+
"network" text,
10+
"created_at" timestamp with time zone DEFAULT now() NOT NULL,
11+
CONSTRAINT "installation_identities_public_id_unique" UNIQUE("public_id"),
12+
CONSTRAINT "installation_identities_logical_identity_unique" UNIQUE NULLS NOT DISTINCT("venue_id","game_id","region","network","version","cabinet_model"),
13+
CONSTRAINT "installation_identities_public_id_check" CHECK ("arcade"."installation_identities"."public_id" ~ '^dins_[23456789abcdefghjkmnpqrstvwxyz]{10}$')
14+
);
15+
--> statement-breakpoint
16+
ALTER TABLE "arcade"."installations" ADD COLUMN "installation_identity_id" bigint;--> statement-breakpoint
17+
ALTER TABLE "arcade"."venues" ADD COLUMN "public_id" text;--> statement-breakpoint
18+
ALTER TABLE "arcade"."installation_identities" ADD CONSTRAINT "installation_identities_venue_id_venues_id_fk" FOREIGN KEY ("venue_id") REFERENCES "arcade"."venues"("id") ON DELETE cascade ON UPDATE no action;--> statement-breakpoint
19+
ALTER TABLE "arcade"."installation_identities" ADD CONSTRAINT "installation_identities_game_id_games_id_fk" FOREIGN KEY ("game_id") REFERENCES "arcade"."games"("id") ON DELETE no action ON UPDATE no action;--> statement-breakpoint
20+
CREATE INDEX "installation_identities_venue_idx" ON "arcade"."installation_identities" USING btree ("venue_id");--> statement-breakpoint
21+
CREATE INDEX "installation_identities_game_idx" ON "arcade"."installation_identities" USING btree ("game_id");--> statement-breakpoint
22+
ALTER TABLE "arcade"."installations" ADD CONSTRAINT "installations_installation_identity_id_installation_identities_id_fk" FOREIGN KEY ("installation_identity_id") REFERENCES "arcade"."installation_identities"("id") ON DELETE cascade ON UPDATE no action;--> statement-breakpoint
23+
CREATE INDEX "installations_identity_idx" ON "arcade"."installations" USING btree ("installation_identity_id");--> statement-breakpoint
24+
ALTER TABLE "arcade"."venues" ADD CONSTRAINT "venues_public_id_unique" UNIQUE("public_id");--> statement-breakpoint
25+
ALTER TABLE "arcade"."venues" ADD CONSTRAINT "venues_public_id_check" CHECK ("arcade"."venues"."public_id" is null or "arcade"."venues"."public_id" ~ '^dven_[23456789abcdefghjkmnpqrstvwxyz]{10}$');

0 commit comments

Comments
 (0)