summaryrefslogtreecommitdiff
path: root/copy.bara.sky
blob: e96ffc0c632ebd243515c53ca834521e0b4b49ea (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
30
31
32
33
34
# This configuration is for migrating code from one Git repository to another using Copybara.
# It selectively copies content, excluding specific paths and preserving authorship.

# To test locally
# sourceUrl = "/path/to/source"
# destinationUrl = "/path/to/dest"

sourceUrl = "git@github.com:10gen/mongo.git"
destinationUrl = "git@github.com:mongodb/mongo.git"

core.workflow(
    name = "default",
    origin = git.origin(
        url = sourceUrl,
        ref = "v8.0",
    ),
    destination = git.destination(
        url = destinationUrl,
        fetch = "v8.0",
        push = "v8.0",
    ),
    # 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 nopthing 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"),
    ],
)