fix(release): publish AppImages with SquashFS names
GoodBuddy Agents / Validate Agent source (push) Canceled after 0s
GoodBuddy Agents / Build darwin arm64 Agent (push) Canceled after 0s
GoodBuddy Agents / Build linux arm64 Agent (push) Canceled after 0s
GoodBuddy Agents / Build linux x64 Agent (push) Canceled after 0s
Cross-platform packages / Validate source (push) Canceled after 0s
Cross-platform packages / Authorize desktop packaging (push) Canceled after 0s
Cross-platform packages / linux arm64 (push) Canceled after 0s
Cross-platform packages / macos arm64 (push) Canceled after 0s
Cross-platform packages / windows arm64 (push) Canceled after 0s
Cross-platform packages / linux x64 (push) Canceled after 0s
Cross-platform packages / macos x64 (push) Canceled after 0s
Cross-platform packages / windows x64 (push) Canceled after 0s
Cross-platform packages / Publish GitHub and OSS release (push) Canceled after 0s
Deploy website to GitHub Pages / Deploy static website (push) Canceled after 0s
GoodBuddy Agents / Validate Agent source (push) Canceled after 0s
GoodBuddy Agents / Build darwin arm64 Agent (push) Canceled after 0s
GoodBuddy Agents / Build linux arm64 Agent (push) Canceled after 0s
GoodBuddy Agents / Build linux x64 Agent (push) Canceled after 0s
Cross-platform packages / Validate source (push) Canceled after 0s
Cross-platform packages / Authorize desktop packaging (push) Canceled after 0s
Cross-platform packages / linux arm64 (push) Canceled after 0s
Cross-platform packages / macos arm64 (push) Canceled after 0s
Cross-platform packages / windows arm64 (push) Canceled after 0s
Cross-platform packages / linux x64 (push) Canceled after 0s
Cross-platform packages / macos x64 (push) Canceled after 0s
Cross-platform packages / windows x64 (push) Canceled after 0s
Cross-platform packages / Publish GitHub and OSS release (push) Canceled after 0s
Deploy website to GitHub Pages / Deploy static website (push) Canceled after 0s
This commit is contained in:
@@ -1419,6 +1419,31 @@ function verifyArtifacts(directory, options) {
|
||||
}
|
||||
}
|
||||
|
||||
function normalizeAppImageArtifact(directory, options) {
|
||||
if (!options.formats.includes('AppImage')) {
|
||||
return
|
||||
}
|
||||
const candidates = readdirSync(directory, { withFileTypes: true })
|
||||
.filter((entry) => entry.isFile() && entry.name.endsWith('.AppImage'))
|
||||
.map((entry) => entry.name)
|
||||
if (candidates.length !== 1) {
|
||||
throw new Error(
|
||||
`AppImage 产物数量错误:${candidates.join(', ') || '未生成'}`
|
||||
)
|
||||
}
|
||||
const artifactName =
|
||||
`${productName}-${packageJson.version}-` +
|
||||
`${options.arch === 'x64' ? 'x86_64' : 'arm64'}.AppImage`
|
||||
const source = join(directory, candidates[0])
|
||||
const destination = join(directory, artifactName)
|
||||
if (source !== destination) {
|
||||
if (existsSync(destination)) {
|
||||
throw new Error(`AppImage 目标文件已存在:${artifactName}`)
|
||||
}
|
||||
renameSync(source, destination)
|
||||
}
|
||||
}
|
||||
|
||||
function verifyArtifactSignature(filePath, format, arch) {
|
||||
if (format === 'nsis') {
|
||||
if (readChunk(filePath, 2).toString('ascii') !== 'MZ') {
|
||||
@@ -1656,6 +1681,7 @@ async function main(argv = process.argv.slice(2)) {
|
||||
builderArguments,
|
||||
electronBuilderEnvironment(options)
|
||||
)
|
||||
normalizeAppImageArtifact(stagingDirectory, options)
|
||||
const unpackedDirectory = verifyUnpackedOutput(
|
||||
stagingDirectory,
|
||||
options
|
||||
@@ -1718,6 +1744,7 @@ module.exports = {
|
||||
verifyUnpackedOutput,
|
||||
verifyArtifacts,
|
||||
verifyArtifactSignature,
|
||||
normalizeAppImageArtifact,
|
||||
verifyPortableZip,
|
||||
writeManifest
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user