rigjs 2.1.24 → 2.1.27
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/built/index.js +67 -67
- package/lib/deploy/index.ts +2 -0
- package/lib/publish/index.ts +85 -49
- package/package.json +1 -1
package/lib/deploy/index.ts
CHANGED
package/lib/publish/index.ts
CHANGED
|
@@ -21,40 +21,45 @@ const setRewriteUri = async (
|
|
|
21
21
|
['enhance_break']
|
|
22
22
|
);
|
|
23
23
|
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
24
|
+
const configId = rwriteResult?.DomainConfigList.DomainConfigModel[0].ConfigId;
|
|
25
|
+
for (let i = 0; i <= 200; i++) {
|
|
26
|
+
const configInfo = await cdn.describeCdnDomainConfigs(domain, configId);
|
|
27
|
+
if (configInfo.DomainConfigs.DomainConfig[0].Status === 'success') {
|
|
28
|
+
break;
|
|
29
|
+
} else if (configInfo.DomainConfigs.DomainConfig[0].Status === 'failed') {
|
|
30
|
+
throw new Error('cdn rewrite fail');
|
|
31
|
+
}
|
|
32
|
+
if (i === 200) {
|
|
33
|
+
throw new Error('cdn rewrite timeout 10min');
|
|
34
|
+
}
|
|
35
|
+
await delay(3000);
|
|
36
|
+
}
|
|
35
37
|
};
|
|
36
38
|
|
|
37
39
|
const refreshCache = async (urls: string[], cdn: CDN) => {
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
40
|
+
const refreshResult = await cdn.refreshCache(urls.join('\n'));
|
|
41
|
+
console.log('Please Wait For RefreshCache...');
|
|
42
|
+
for (let i = 0; i <= 200; i++) {
|
|
43
|
+
const desResult = await cdn.describeRefreshTaskById(
|
|
44
|
+
refreshResult.RefreshTaskId
|
|
45
|
+
);
|
|
46
|
+
let successCount = 0;
|
|
47
|
+
for (const item of desResult.Tasks) {
|
|
48
|
+
if (item.Status === 'Complete') {
|
|
49
|
+
successCount++;
|
|
50
|
+
} else if (item.Status === 'Failed') {
|
|
51
|
+
throw new Error('RefreshCache Failed');
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
if (successCount === desResult.Tasks.length) {
|
|
55
|
+
break;
|
|
56
|
+
}
|
|
57
|
+
if (i === 200) {
|
|
58
|
+
throw new Error('refresh cache timeout 10min');
|
|
59
|
+
}
|
|
60
|
+
await delay(3000);
|
|
61
|
+
}
|
|
62
|
+
console.log('RefreshCache Done');
|
|
58
63
|
};
|
|
59
64
|
|
|
60
65
|
export default async (cmd: any) => {
|
|
@@ -103,6 +108,15 @@ export default async (cmd: any) => {
|
|
|
103
108
|
cdn
|
|
104
109
|
)
|
|
105
110
|
);
|
|
111
|
+
//mpa匹配文件
|
|
112
|
+
setRewriteUriPromises.push(
|
|
113
|
+
setRewriteUri(
|
|
114
|
+
domain,
|
|
115
|
+
`^\\/([^?]*\\.[a-zA-Z0-9]+)($|\\?)`,
|
|
116
|
+
`/${endpoint.deployDir.replace(/\\/g, '/')}/$1`,
|
|
117
|
+
cdn
|
|
118
|
+
)
|
|
119
|
+
);
|
|
106
120
|
} else if (cicd.web_type === 'history') {
|
|
107
121
|
//spa/history匹配非首页
|
|
108
122
|
setRewriteUriPromises.push(
|
|
@@ -113,17 +127,28 @@ export default async (cmd: any) => {
|
|
|
113
127
|
cdn
|
|
114
128
|
)
|
|
115
129
|
);
|
|
130
|
+
//spa-history匹配文件
|
|
131
|
+
setRewriteUriPromises.push(
|
|
132
|
+
setRewriteUri(
|
|
133
|
+
domain,
|
|
134
|
+
`^\\/([^?]*\\.[a-zA-Z0-9]+)($|\\?)`,
|
|
135
|
+
`/${endpoint.deployDir.replace(/\\/g, '/')}/$1`,
|
|
136
|
+
cdn
|
|
137
|
+
)
|
|
138
|
+
);
|
|
139
|
+
}else{
|
|
140
|
+
//spa-hash匹配文件
|
|
141
|
+
//hash模式支持一个域名支持多个网页应用的入口路径,如/,/app1,/app2,都是不同的网页应用
|
|
142
|
+
//需要替换webpack中的publicPath为实际OSS的目录
|
|
143
|
+
setRewriteUriPromises.push(
|
|
144
|
+
setRewriteUri(
|
|
145
|
+
domain,
|
|
146
|
+
`^\\/([^?]*\\.[a-zA-Z0-9]+)($|\\?)`,
|
|
147
|
+
`/$1`,
|
|
148
|
+
cdn
|
|
149
|
+
)
|
|
150
|
+
);
|
|
116
151
|
}
|
|
117
|
-
//匹配文件,3个模式通用
|
|
118
|
-
const divide = webEntryPath === '/' ? '' : '/';
|
|
119
|
-
setRewriteUriPromises.push(
|
|
120
|
-
setRewriteUri(
|
|
121
|
-
domain,
|
|
122
|
-
`^${webEntryPath}${divide}([^?]*\\.[a-zA-Z0-9]+)($|\\?)`,
|
|
123
|
-
`/${endpoint.deployDir.replace(/\\/g, '/')}/$1`,
|
|
124
|
-
cdn
|
|
125
|
-
)
|
|
126
|
-
);
|
|
127
152
|
//首页匹配正则,hash,history,mpa三个模式通用
|
|
128
153
|
setRewriteUriPromises.push(
|
|
129
154
|
setRewriteUri(
|
|
@@ -145,14 +170,25 @@ export default async (cmd: any) => {
|
|
|
145
170
|
}
|
|
146
171
|
|
|
147
172
|
for (const domain of endpoint.domains) {
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
173
|
+
if (cicd.web_type !== 'hash'){
|
|
174
|
+
setRewriteUriPromises.push(
|
|
175
|
+
setRewriteUri(
|
|
176
|
+
domain,
|
|
177
|
+
'^\\/([^?]*\\.[a-zA-Z0-9]+)($|\\?)',
|
|
178
|
+
`/${endpoint.deployDir.replace(/\\/g, '/')}/$1`,
|
|
179
|
+
cdn
|
|
180
|
+
)
|
|
181
|
+
);
|
|
182
|
+
}else{
|
|
183
|
+
setRewriteUriPromises.push(
|
|
184
|
+
setRewriteUri(
|
|
185
|
+
domain,
|
|
186
|
+
'^\\/([^?]*\\.[a-zA-Z0-9]+)($|\\?)',
|
|
187
|
+
`/$1`,
|
|
188
|
+
cdn
|
|
189
|
+
)
|
|
190
|
+
);
|
|
191
|
+
}
|
|
156
192
|
setRewriteUriPromises.push(
|
|
157
193
|
setRewriteUri(
|
|
158
194
|
domain,
|
package/package.json
CHANGED