summaryrefslogtreecommitdiff
path: root/copy.bara.staging.sky
blob: 051a10aad9ee577bea45fb21e9b6a460164921f6 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
# This configuration is for migrating code from one Git repository to another using Copybara.
# It selectively copies content, excluding specific paths and preserving authorship.
sourceUrl = "https://github.com/10gen/mongo.git"
destinationUrl = "https://github.com/10gen/mongo-copybara.git"

core.workflow(
    name = "default",
    origin = git.origin(
        url = sourceUrl,
        ref = "master",
    ),
    destination = git.destination(
        url = destinationUrl,
        fetch = "master",
        push = "master",
    ),
    # Change path to the folder you want to publish publicly
    origin_files = glob(["**"], exclude = ["src/mongo/db/modules/**"]),
    authoring = authoring.pass_thru("MongoDB <mongodb@mongodb.com>"),
    mode = "ITERATIVE",
    # Change the path here to the folder you want to publish publicly
    transformations = [
        # (^.*?) - matches the first line (without the newline char)
        # \n - matches the first newline (or nothing at all if there is no newline). If there is no match then nothing happens
        # ((\n|.)*) - matches everything after
        # Overall, this copies only the first line of the commit rather than the body
        metadata.scrubber("(^.*?)\n((\n|.)*)", replacement = "$1"),
    ],
)