Skip to content

Commit 52e445a

Browse files
committed
chore: 1
1 parent ac3e1f7 commit 52e445a

1 file changed

Lines changed: 14 additions & 13 deletions

File tree

scripts/publish-atomgit.js

Lines changed: 14 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -75,20 +75,14 @@ async function getUploadUrl(versionTitle, fileName) {
7575
return response.data
7676
}
7777

78-
async function uploadFile(url, headers, filePath) {
79-
const fileData = fs.readFileSync(filePath)
78+
async function uploadFile(url, headers, data) {
8079
const response = await axios.request({
8180
method: 'PUT',
8281
url,
8382
headers,
84-
data: fileData,
83+
data,
8584
maxBodyLength: Infinity,
86-
validateStatus: status => status < 500,
8785
})
88-
if (response.status >= 400) {
89-
const body = typeof response.data === 'string' ? response.data.slice(0, 200) : JSON.stringify(response.data).slice(0, 200)
90-
throw new Error(`Upload failed with status ${response.status}: ${body}`)
91-
}
9286
return response.data
9387
}
9488

@@ -111,16 +105,23 @@ async function publishToAtomgit() {
111105

112106
for (const fileName of files) {
113107
const filePath = path.join(AssetsDir, fileName)
114-
console.log(`Uploading ${fileName} (${fs.statSync(filePath).size} bytes)...`)
108+
const stat = fs.statSync(filePath)
109+
const fileSizeMB = (stat.size / 1024 / 1024).toFixed(2)
110+
console.log(`Uploading ${fileName} (${stat.size} bytes / ${fileSizeMB} MB)...`)
115111

116-
const uploadUrl = await getUploadUrl(versionTitle, fileName)
112+
const uploadUrlResponse = await getUploadUrl(versionTitle, fileName)
117113

118-
if (!uploadUrl?.url) {
119-
console.error(` Invalid upload URL response:`, JSON.stringify(uploadUrl).slice(0, 200))
114+
if (!uploadUrlResponse?.url) {
115+
console.error(` Invalid upload URL response:`, JSON.stringify(uploadUrlResponse).slice(0, 200))
120116
continue
121117
}
122118

123-
await uploadFile(uploadUrl.url, uploadUrl.headers, filePath)
119+
console.log(` Upload URL prefix: ${uploadUrlResponse.url.slice(0, 80)}...`)
120+
121+
const fileData = fs.createReadStream(filePath)
122+
uploadUrlResponse.headers['Content-Length'] = stat.size
123+
124+
await uploadFile(uploadUrlResponse.url, uploadUrlResponse.headers, fileData)
124125
console.log(` ${fileName} done`)
125126
}
126127

0 commit comments

Comments
 (0)