Merge ~ines-almeida/launchpad:merge-db-stable into launchpad:master

Proposed by Ines Almeida
Status: Merged
Approved by: Ines Almeida
Approved revision: 7358bc484c36dd4d1741c38655ab91f581cdd6e0
Merge reported by: Otto Co-Pilot
Merged at revision: not available
Proposed branch: ~ines-almeida/launchpad:merge-db-stable
Merge into: launchpad:master
Diff against target: 26 lines (+20/-0)
1 file modified
database/schema/patch-2211-22-0.sql (+20/-0)
Reviewer Review Type Date Requested Status
Ines Almeida Approve
Review via email: mp+452278@code.launchpad.net

Commit message

Merge db-stable 7358bc484c36dd4d1741c38655ab91f581cdd6e0 (add AccessToken.product)

To post a comment you must log in.
Revision history for this message
Ines Almeida (ines-almeida) wrote :

Self-approving as part of DB deployment

review: Approve

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1diff --git a/database/schema/patch-2211-22-0.sql b/database/schema/patch-2211-22-0.sql
2new file mode 100644
3index 0000000..b568abe
4--- /dev/null
5+++ b/database/schema/patch-2211-22-0.sql
6@@ -0,0 +1,20 @@
7+-- Copyright 2023 Canonical Ltd. This software is licensed under the
8+-- GNU Affero General Public License version 3 (see the file LICENSE).
9+
10+SET client_min_messages=ERROR;
11+
12+ALTER TABLE AccessToken
13+ ADD COLUMN project integer REFERENCES product;
14+
15+COMMENT ON COLUMN AccessToken.project IS 'The project for which the token was issued.';
16+
17+CREATE INDEX accesstoken__project__idx ON AccessToken (project);
18+
19+-- There can only be either a git_repository or a project as target
20+ALTER TABLE AccessToken
21+ ALTER COLUMN git_repository DROP NOT NULL,
22+ ADD CONSTRAINT one_target CHECK (
23+ (public.null_count(ARRAY[git_repository, project]) = 1)
24+ );
25+
26+INSERT INTO LaunchpadDatabaseRevision VALUES (2211, 22, 0);

Subscribers

People subscribed via source and target branches

to status/vote changes: