2023-10-11 01:09:33 +02:00
|
|
|
# This configuration is for migrating code from one Git repository to another using Copybara.
|
|
|
|
# It selectively copies content, excluding specific paths and preserving authorship.
|
SERVER-90928 Remove lines other than commit title from syncing (#22589)
# Issue
Remove lines other than commit title from syncing
# Description
SERVER-90928 Remove lines other than commit title from syncing to the
public repo
# Testing
This was tested locally. I tested on the commits in this PR and it seems
to be synced correctly. The staging file I used was
```
# 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 = "/Users/alexander.neben/workspace/mongo2"
destinationUrl = "/Users/alexander.neben/workspace/mongodb-mongo"
# sourceUrl = "git@github.com:10gen/mongo.git"
# destinationUrl = "git@github.com:10gen/mongo-copybara.git"
core.workflow(
name = "default",
origin = git.origin(
url = sourceUrl,
ref = "IamXander/prune_commit",
),
destination = git.destination(
url = destinationUrl,
fetch = "IamXander/prune_commit",
push = "IamXander/prune_commit",
),
# 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 = [
metadata.scrubber("(^.*?)\n((\n|.)*)", replacement = "$1"),
],
)
```
Running git log on `/Users/alexander.neben/workspace/mongodb-mongo`
returns the following
```
commit 8a4879557893ae942f793ad707d56e255bebc72d (HEAD -> IamXander/prune_commit)
Author: Alex Neben <alex.neben@mongodb.com>
Date: Tue May 28 08:55:38 2024 -0700
fixes
GitOrigin-RevId: 3ffa6b95d44ec3fef7e715a3f24652966861f4e1
commit 66cdb3631be92ced2123c7e3fab39e24bed91b2b
Author: Alex Neben <alex.neben@mongodb.com>
Date: Tue May 28 08:50:07 2024 -0700
SERVER-90928 Remove lines other than commit title from syncing
GitOrigin-RevId: 7d90f0f69a17943fb68ba23e2f135d08c00c4943
commit 0063834a4fa519727cc6b816995ea56d9b3328fe
Author: Alex Neben <alex.neben@mongodb.com>
Date: Tue May 28 08:12:24 2024 -0700
SERVER-XYZ asdasdkjfhaskdf akjdhkjashdkjashd example
GitOrigin-RevId: 298831cd1d55319ea368fdd2f1dc604368d94889
commit fc7f29486d762a740c3ebe01c3b7d69a477abe75
Author: Alex Neben <alex.neben@mongodb.com>
Date: Fri May 24 13:55:21 2024 -0700
prune commit message
GitOrigin-RevId: 43692434bf664fe593ee7eb5f53372ca331ecec9
```
Which shows no data after the newline. It also does not include
enterprise code.
GitOrigin-RevId: f78828e412e3ac510c6e56feb541146c688b7603
2024-05-28 23:22:24 +02:00
|
|
|
|
|
|
|
# To test locally
|
|
|
|
# sourceUrl = "/path/to/source"
|
|
|
|
# destinationUrl = "/path/to/dest"
|
|
|
|
|
2024-09-16 17:20:10 +02:00
|
|
|
sourceUrl = "https://github.com/10gen/mongo.git"
|
|
|
|
destinationUrl = "https://github.com/mongodb/mongo.git"
|
2023-10-11 01:09:33 +02:00
|
|
|
|
|
|
|
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
|
2024-01-30 09:31:05 +01:00
|
|
|
origin_files = glob(["**"], exclude = ["src/mongo/db/modules/**"]),
|
2023-10-11 01:09:33 +02:00
|
|
|
authoring = authoring.pass_thru("MongoDB <mongodb@mongodb.com>"),
|
|
|
|
mode = "ITERATIVE",
|
|
|
|
# Change the path here to the folder you want to publish publicly
|
SERVER-90928 Remove lines other than commit title from syncing (#22589)
# Issue
Remove lines other than commit title from syncing
# Description
SERVER-90928 Remove lines other than commit title from syncing to the
public repo
# Testing
This was tested locally. I tested on the commits in this PR and it seems
to be synced correctly. The staging file I used was
```
# 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 = "/Users/alexander.neben/workspace/mongo2"
destinationUrl = "/Users/alexander.neben/workspace/mongodb-mongo"
# sourceUrl = "git@github.com:10gen/mongo.git"
# destinationUrl = "git@github.com:10gen/mongo-copybara.git"
core.workflow(
name = "default",
origin = git.origin(
url = sourceUrl,
ref = "IamXander/prune_commit",
),
destination = git.destination(
url = destinationUrl,
fetch = "IamXander/prune_commit",
push = "IamXander/prune_commit",
),
# 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 = [
metadata.scrubber("(^.*?)\n((\n|.)*)", replacement = "$1"),
],
)
```
Running git log on `/Users/alexander.neben/workspace/mongodb-mongo`
returns the following
```
commit 8a4879557893ae942f793ad707d56e255bebc72d (HEAD -> IamXander/prune_commit)
Author: Alex Neben <alex.neben@mongodb.com>
Date: Tue May 28 08:55:38 2024 -0700
fixes
GitOrigin-RevId: 3ffa6b95d44ec3fef7e715a3f24652966861f4e1
commit 66cdb3631be92ced2123c7e3fab39e24bed91b2b
Author: Alex Neben <alex.neben@mongodb.com>
Date: Tue May 28 08:50:07 2024 -0700
SERVER-90928 Remove lines other than commit title from syncing
GitOrigin-RevId: 7d90f0f69a17943fb68ba23e2f135d08c00c4943
commit 0063834a4fa519727cc6b816995ea56d9b3328fe
Author: Alex Neben <alex.neben@mongodb.com>
Date: Tue May 28 08:12:24 2024 -0700
SERVER-XYZ asdasdkjfhaskdf akjdhkjashdkjashd example
GitOrigin-RevId: 298831cd1d55319ea368fdd2f1dc604368d94889
commit fc7f29486d762a740c3ebe01c3b7d69a477abe75
Author: Alex Neben <alex.neben@mongodb.com>
Date: Fri May 24 13:55:21 2024 -0700
prune commit message
GitOrigin-RevId: 43692434bf664fe593ee7eb5f53372ca331ecec9
```
Which shows no data after the newline. It also does not include
enterprise code.
GitOrigin-RevId: f78828e412e3ac510c6e56feb541146c688b7603
2024-05-28 23:22:24 +02:00
|
|
|
transformations = [
|
|
|
|
# (^.*?) - matches the first line (without the newline char)
|
2024-09-16 17:20:10 +02:00
|
|
|
# \n - matches the first newline (or nothing at all if there is no newline). If there is no match then nothing happens
|
SERVER-90928 Remove lines other than commit title from syncing (#22589)
# Issue
Remove lines other than commit title from syncing
# Description
SERVER-90928 Remove lines other than commit title from syncing to the
public repo
# Testing
This was tested locally. I tested on the commits in this PR and it seems
to be synced correctly. The staging file I used was
```
# 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 = "/Users/alexander.neben/workspace/mongo2"
destinationUrl = "/Users/alexander.neben/workspace/mongodb-mongo"
# sourceUrl = "git@github.com:10gen/mongo.git"
# destinationUrl = "git@github.com:10gen/mongo-copybara.git"
core.workflow(
name = "default",
origin = git.origin(
url = sourceUrl,
ref = "IamXander/prune_commit",
),
destination = git.destination(
url = destinationUrl,
fetch = "IamXander/prune_commit",
push = "IamXander/prune_commit",
),
# 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 = [
metadata.scrubber("(^.*?)\n((\n|.)*)", replacement = "$1"),
],
)
```
Running git log on `/Users/alexander.neben/workspace/mongodb-mongo`
returns the following
```
commit 8a4879557893ae942f793ad707d56e255bebc72d (HEAD -> IamXander/prune_commit)
Author: Alex Neben <alex.neben@mongodb.com>
Date: Tue May 28 08:55:38 2024 -0700
fixes
GitOrigin-RevId: 3ffa6b95d44ec3fef7e715a3f24652966861f4e1
commit 66cdb3631be92ced2123c7e3fab39e24bed91b2b
Author: Alex Neben <alex.neben@mongodb.com>
Date: Tue May 28 08:50:07 2024 -0700
SERVER-90928 Remove lines other than commit title from syncing
GitOrigin-RevId: 7d90f0f69a17943fb68ba23e2f135d08c00c4943
commit 0063834a4fa519727cc6b816995ea56d9b3328fe
Author: Alex Neben <alex.neben@mongodb.com>
Date: Tue May 28 08:12:24 2024 -0700
SERVER-XYZ asdasdkjfhaskdf akjdhkjashdkjashd example
GitOrigin-RevId: 298831cd1d55319ea368fdd2f1dc604368d94889
commit fc7f29486d762a740c3ebe01c3b7d69a477abe75
Author: Alex Neben <alex.neben@mongodb.com>
Date: Fri May 24 13:55:21 2024 -0700
prune commit message
GitOrigin-RevId: 43692434bf664fe593ee7eb5f53372ca331ecec9
```
Which shows no data after the newline. It also does not include
enterprise code.
GitOrigin-RevId: f78828e412e3ac510c6e56feb541146c688b7603
2024-05-28 23:22:24 +02:00
|
|
|
# ((\n|.)*) - matches everything after
|
|
|
|
# Overall, this copies only the first line of the commit rather than the body
|
|
|
|
metadata.scrubber("(^.*?)\n((\n|.)*)", replacement = "$1"),
|
|
|
|
],
|
2023-10-11 01:09:33 +02:00
|
|
|
)
|