Skip to content

Commit 3916ec9

Browse files
authored
Merge pull request #87 from kdjstudios/master
Adding Ability to specify which content to transfer.
2 parents 5a6c99c + 59ff196 commit 3916ec9

4 files changed

Lines changed: 44 additions & 9 deletions

File tree

README.md

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -88,6 +88,22 @@ IAM User who owns these credential must have [write permissions](https://docs.aw
8888

8989
Existing bucket, with an appropriate security policy. One possible policy is to allow [public access](https://docs.aws.amazon.com/AmazonS3/latest/dev/WebsiteAccessPermissionsReqd.html).
9090

91+
#### transfer.milestones
92+
93+
If this is set to true (default) then the migration process will transfer milestones.
94+
95+
#### transfer.labels
96+
97+
If this is set to true (default) then the migration process will transfer labels.
98+
99+
#### transfer.issues
100+
101+
If this is set to true (default) then the migration process will transfer issues.
102+
103+
#### transfer.mergeRequests
104+
105+
If this is set to true (default) then the migration process will transfer merge requests.
106+
91107
#### debug
92108

93109
As default it is set to false. Doesn't fire the requests to github api and only does the work on the gitlab side to test for wonky cases before using up api-calls

sample_settings.ts

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,12 @@ export default {
2828
conversion: {
2929
useLowerCaseLabels: true,
3030
},
31+
transfer: {
32+
milestones: true,
33+
labels: true,
34+
issues: true,
35+
mergeRequests: true,
36+
},
3137
debug: false,
3238
usePlaceholderIssuesForMissingIssues: true,
3339
useReplacementIssuesForCreationFails: true,

src/index.ts

Lines changed: 16 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -128,19 +128,26 @@ async function migrate() {
128128
await githubHelper.registerRepoId();
129129

130130
// transfer GitLab milestones to GitHub
131-
await transferMilestones();
131+
if (settings.transfer.milestones) {
132+
await transferMilestones();
133+
}
132134

133135
// transfer GitLab labels to GitHub
134-
await transferLabels(true, settings.conversion.useLowerCaseLabels);
136+
if (settings.transfer.labels) {
137+
await transferLabels(true, settings.conversion.useLowerCaseLabels);
138+
}
135139

136140
// Transfer issues with their comments; do this before transferring the merge requests
137-
await transferIssues();
138-
139-
if (settings.mergeRequests.log) {
140-
// log merge requests
141-
await logMergeRequests(settings.mergeRequests.logFile);
142-
} else {
143-
await transferMergeRequests();
141+
if (settings.transfer.issues) {
142+
await transferIssues();
143+
}
144+
if (settings.transfer.mergeRequests) {
145+
if (settings.mergeRequests.log) {
146+
// log merge requests
147+
await logMergeRequests(settings.mergeRequests.logFile);
148+
} else {
149+
await transferMergeRequests();
150+
}
144151
}
145152
} catch (err) {
146153
console.error('Error during transfer:');

src/settings.ts

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,12 @@ export default interface Settings {
1111
conversion: {
1212
useLowerCaseLabels: boolean;
1313
};
14+
transfer: {
15+
milestones: boolean;
16+
labels: boolean;
17+
issues: boolean;
18+
mergeRequests: boolean;
19+
};
1420
usePlaceholderIssuesForMissingIssues: boolean;
1521
useReplacementIssuesForCreationFails: boolean;
1622
useIssuesForAllMergeRequests: boolean;

0 commit comments

Comments
 (0)