fix(releases): проверять манифест и достоверность сведений о сборке

This commit is contained in:
Denozordec committed 2026-10-03 21:59:55 +07:00
1 parent d5edfe5ef6
commit 1d27127b52
10 files changed
+135 -64

No files matched your search

+6 -35
View File
@@ -1,36 +1,7 @@
import { readFileSync } from "node:fs"
import { join } from "node:path"
export interface ReleaseCommit {
sha: string
shortSha: string
subject: string
author: string
type: string
}
export interface ReleaseManifest {
version: string
tag: string
publishedAt: string | null
releaseUrl: string
commits: ReleaseCommit[]
}
const fallbackManifest: ReleaseManifest = {
version: "1.0.0",
tag: "v1.0.0",
publishedAt: null,
releaseUrl: "",
commits: [],
}
export function readReleaseManifest(): ReleaseManifest {
try {
const filePath = join(process.cwd(), "public", "release-manifest.json")
const raw = readFileSync(filePath, "utf8")
return JSON.parse(raw) as ReleaseManifest
} catch {
return fallbackManifest
}
import {readFileSync} from "node:fs"
import {join} from "node:path"
import {parseReleaseManifest,type ReleaseManifest} from "./release-metadata"
export type {ReleaseManifest,ReleaseCommit} from "./release-metadata"
export function readReleaseManifest():ReleaseManifest|null {
try{return parseReleaseManifest(JSON.parse(readFileSync(join(process.cwd(),"public","release-manifest.json"),"utf8")))}catch{return null}
}