-
Notifications
You must be signed in to change notification settings - Fork 6
Expand file tree
/
Copy pathstream.js
More file actions
106 lines (83 loc) · 2.96 KB
/
stream.js
File metadata and controls
106 lines (83 loc) · 2.96 KB
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
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
const { execSync } = require('child_process');
const { readFileSync, mkdirSync, existsSync, writeFileSync } = require('fs');
const { join } = require('path');
const project_repos = JSON.parse(readFileSync('remote_repos/project_repos.json', 'utf8'));
const activity_repos = JSON.parse(readFileSync('remote_repos/activity_repos.json', 'utf8'));
const resources_repos = JSON.parse(readFileSync('remote_repos/resources_repos.json', 'utf8'));
position = 2;
// Resources
for (const [name, url] of Object.entries(resources_repos)) {
const repoDir = join(__dirname, 'temp_resources', name);
const destDir = join(__dirname, 'docs', 'resources');
// Clone the repository
execSync(`git clone ${url} ${repoDir}`);
// Create destination directory if it doesn't exist
if (!existsSync(destDir)) {
mkdirSync(destDir, { recursive: true });
}
// Copy the docs/web_docs directory to the destination
execSync(`cp -r ${join(repoDir, 'docs', 'web_docs')}/* ${destDir}`);
// Create _category_.json file
const categoryContent = {
label: name,
position: position,
link: {
type: "generated-index"
}
};
writeFileSync(join(destDir, '_category_.json'), JSON.stringify(categoryContent, null, 2));
console.log(`Copied markdown content from ${name}`);
position++;
}
// Activities
// Reset position
position = 4;
for (const [name, url] of Object.entries(activity_repos)) {
const repoDir = join(__dirname, 'temp_activity', name);
const destDir = join(__dirname, 'docs', 'activities', name);
// Clone the repository
execSync(`git clone ${url} ${repoDir}`);
// Create destination directory if it doesn't exist
if (!existsSync(destDir)) {
mkdirSync(destDir, { recursive: true });
}
// Copy the docs/web_docs directory to the destination
execSync(`cp -r ${join(repoDir, 'docs', 'web_docs')}/* ${destDir}`);
// Create _category_.json file
const categoryContent = {
label: name,
position: position,
link: {
type: "generated-index"
}
};
writeFileSync(join(destDir, '_category_.json'), JSON.stringify(categoryContent, null, 2));
console.log(`Copied docs from ${name}`);
position++;
}
// Projects
// Reset position
position = 2;
for (const [name, url] of Object.entries(project_repos)) {
const repoDir = join(__dirname, 'temp_projects', name);
const destDir = join(__dirname, 'docs', 'projects', name);
// Clone the repository
execSync(`git clone ${url} ${repoDir}`);
// Create destination directory if it doesn't exist
if (!existsSync(destDir)) {
mkdirSync(destDir, { recursive: true });
}
// Copy the docs/web_docs directory to the destination
execSync(`cp -r ${join(repoDir, 'docs', 'web_docs')}/* ${destDir}`);
// Create _category_.json file
const categoryContent = {
label: name,
position: position,
link: {
type: "generated-index"
}
};
writeFileSync(join(destDir, '_category_.json'), JSON.stringify(categoryContent, null, 2));
console.log(`Copied docs from ${name}`);
position++;
}