diff --git a/gerrit-reviewdb/src/main/java/com/google/gerrit/reviewdb/client/PatchSet.java b/gerrit-reviewdb/src/main/java/com/google/gerrit/reviewdb/client/PatchSet.java index 7fc140cb13..13ca7aac94 100644 --- a/gerrit-reviewdb/src/main/java/com/google/gerrit/reviewdb/client/PatchSet.java +++ b/gerrit-reviewdb/src/main/java/com/google/gerrit/reviewdb/client/PatchSet.java @@ -199,6 +199,10 @@ public final class PatchSet { @Column(id = 6, notNull = false) protected String groups; + /** Certificate sent with a push that created this patch set. */ + @Column(id = 7, notNull = false) + protected String pushCertficate; + protected PatchSet() { } @@ -258,6 +262,14 @@ public final class PatchSet { return id.toRefName(); } + public String getPushCertificate() { + return pushCertficate; + } + + public void setPushCertificate(String cert) { + pushCertficate = cert; + } + @Override public String toString() { return "[PatchSet " + getId().toString() + "]"; diff --git a/gerrit-server/src/main/java/com/google/gerrit/server/git/ReceiveCommits.java b/gerrit-server/src/main/java/com/google/gerrit/server/git/ReceiveCommits.java index 02c6d1329e..2d7793e5f3 100644 --- a/gerrit-server/src/main/java/com/google/gerrit/server/git/ReceiveCommits.java +++ b/gerrit-server/src/main/java/com/google/gerrit/server/git/ReceiveCommits.java @@ -2075,6 +2075,10 @@ public class ReceiveCommits { newPatchSet.setUploader(currentUser.getAccountId()); newPatchSet.setRevision(toRevId(newCommit)); newPatchSet.setGroups(groups); + if (rp.getPushCertificate() != null) { + newPatchSet.setPushCertificate( + rp.getPushCertificate().toTextWithSignature()); + } if (magicBranch != null && magicBranch.draft) { newPatchSet.setDraft(true); } diff --git a/gerrit-server/src/main/java/com/google/gerrit/server/schema/SchemaVersion.java b/gerrit-server/src/main/java/com/google/gerrit/server/schema/SchemaVersion.java index 9022bfe224..a4a7ddc949 100644 --- a/gerrit-server/src/main/java/com/google/gerrit/server/schema/SchemaVersion.java +++ b/gerrit-server/src/main/java/com/google/gerrit/server/schema/SchemaVersion.java @@ -32,7 +32,7 @@ import java.util.List; /** A version of the database schema. */ public abstract class SchemaVersion { /** The current schema version. */ - public static final Class C = Schema_112.class; + public static final Class C = Schema_113.class; public static int getBinaryVersion() { return guessVersion(C); diff --git a/gerrit-server/src/main/java/com/google/gerrit/server/schema/Schema_113.java b/gerrit-server/src/main/java/com/google/gerrit/server/schema/Schema_113.java new file mode 100644 index 0000000000..32d655e63e --- /dev/null +++ b/gerrit-server/src/main/java/com/google/gerrit/server/schema/Schema_113.java @@ -0,0 +1,25 @@ +// Copyright (C) 2015 The Android Open Source Project +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +package com.google.gerrit.server.schema; + +import com.google.inject.Inject; +import com.google.inject.Provider; + +public class Schema_113 extends SchemaVersion { + @Inject + Schema_113(Provider prior) { + super(prior); + } +}