当前位置: 首页>>代码示例>>TypeScript>>正文


TypeScript builder-util.TmpDir类代码示例

本文整理汇总了TypeScript中builder-util.TmpDir的典型用法代码示例。如果您正苦于以下问题:TypeScript TmpDir类的具体用法?TypeScript TmpDir怎么用?TypeScript TmpDir使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。


在下文中一共展示了TmpDir类的8个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的TypeScript代码示例。

示例1: createSelfSignedCert

export async function createSelfSignedCert(publisher: string) {
  const tmpDir = new TmpDir()
  const targetDir = process.cwd()
  const tempPrefix = path.join(await tmpDir.getTempDir({prefix: "self-signed-cert-creator"}), sanitizeFileName(publisher))
  const cer = `${tempPrefix}.cer`
  const pvk = `${tempPrefix}.pvk`

  log.info(chalk.bold('When asked to enter a password ("Create Private Key Password"), please select "None".'))

  try {
    await ensureDir(path.dirname(tempPrefix))
    const vendorPath = path.join(await getSignVendorPath(), "windows-10", process.arch)
    await exec(path.join(vendorPath, "makecert.exe"),
      ["-r", "-h", "0", "-n", `CN=${quoteString(publisher)}`, "-eku", "1.3.6.1.5.5.7.3.3", "-pe", "-sv", pvk, cer])

    const pfx = path.join(targetDir, `${sanitizeFileName(publisher)}.pfx`)
    await unlinkIfExists(pfx)
    await exec(path.join(vendorPath, "pvk2pfx.exe"), ["-pvk", pvk, "-spc", cer, "-pfx", pfx])
    log.info({file: pfx}, `created. Please see https://electron.build/code-signing how to use it to sign.`)

    const certLocation = "Cert:\\LocalMachine\\TrustedPeople"
    log.info({file: pfx, certLocation}, `importing. Operation will be succeed only if runned from root. Otherwise import file manually.`)
    await spawn("powershell.exe", ["Import-PfxCertificate", "-FilePath", `"${pfx}"`, "-CertStoreLocation", ""])
  }
  finally {
    await tmpDir.cleanup()
  }
}
开发者ID:ledinhphuong,项目名称:electron-builder,代码行数:28,代码来源:create-self-signed-cert.ts

示例2: test

test("postpone symlink", async () => {
  const tmpDir = new TmpDir()
  const source = await tmpDir.getTempDir()
  const aSourceFile = path.join(source, "z", "Z")
  const bSourceFileLink = path.join(source, "B")
  await outputFile(aSourceFile, "test")
  await symlink(aSourceFile, bSourceFileLink)

  const dest = await tmpDir.getTempDir()
  await copyDir(source, dest)

  await tmpDir.cleanup()
})
开发者ID:jwheare,项目名称:electron-builder,代码行数:13,代码来源:filesTest.ts

示例3: test

test("Bintray upload", async () => {
  const version = versionNumber()

  const tmpDir = new TmpDir()
  const artifactPath = await tmpDir.getTempFile({suffix: ".icns"})
  await copyFile(iconPath, artifactPath)

  //noinspection SpellCheckingInspection
  const publisher = new BintrayPublisher(publishContext, {provider: "bintray", owner: "actperepo", package: "test", repo: "generic", token: "5df2cadec86dff91392e4c419540785813c3db15"}, version)
  try {
    await publisher.upload(artifactPath, Arch.x64)
    await publisher.upload(artifactPath, Arch.x64)
  }
  finally {
    try {
      await publisher.deleteRelease()
    }
    finally {
      await tmpDir.cleanup()
    }
  }
})
开发者ID:jwheare,项目名称:electron-builder,代码行数:22,代码来源:ArtifactPublisherTest.ts

示例4: test

test("Bintray upload", async () => {
  const version = "42.0.0"
  const tmpDir = new TmpDir("artifact-publisher-test")
  const artifactPath = await tmpDir.getTempFile({suffix: " test-space.icns"})
  await copyFile(iconPath, artifactPath)

  //noinspection SpellCheckingInspection
  const publisher = new BintrayPublisher(publishContext, {provider: "bintray", owner: "actperepo", package: "test", repo: "generic", token: "5df2cadec86dff91392e4c419540785813c3db15"}, version)
  try {
    // force delete old version to ensure that test doesn't depend on previous runs
    await publisher.deleteRelease(true)
    await publisher.upload({file: artifactPath, arch: Arch.x64})
    await publisher.upload({file: artifactPath, arch: Arch.x64})
  }
  finally {
    try {
      await publisher.deleteRelease(false)
    }
    finally {
      await tmpDir.cleanup()
    }
  }
})
开发者ID:electron-userland,项目名称:electron-builder,代码行数:23,代码来源:ArtifactPublisherTest.ts

示例5: downloadCertificate

export async function downloadCertificate(urlOrBase64: string, tmpDir: TmpDir, currentDir: string): Promise<string> {
  urlOrBase64 = urlOrBase64.trim()

  let file: string | null = null
  if ((urlOrBase64.length > 3 && urlOrBase64[1] === ":") || urlOrBase64.startsWith("/") || urlOrBase64.startsWith(".")) {
    file = urlOrBase64
  }
  else if (urlOrBase64.startsWith("file://")) {
    file = urlOrBase64.substring("file://".length)
  }
  else if (urlOrBase64.startsWith("~/")) {
    file = path.join(homedir(), urlOrBase64.substring("~/".length))
  }
  else {
    const isUrl = urlOrBase64.startsWith("https://")
    if (isUrl || urlOrBase64.length > 2048 || urlOrBase64.endsWith("=")) {
      const tempFile = await tmpDir.getTempFile({suffix: ".p12"})
      if (isUrl) {
        await httpExecutor.download(urlOrBase64, tempFile)
      }
      else {
        await outputFile(tempFile, Buffer.from(urlOrBase64, "base64"))
      }
      return tempFile
    }
    else {
      file = urlOrBase64
    }
  }

  file = path.resolve(currentDir, file)
  const stat = await statOrNull(file)
  if (stat == null) {
    throw new Error(`${file} doesn't exist`)
  }
  else if (!stat.isFile()) {
    throw new Error(`${file} not a file`)
  }
  else {
    return file
  }
}
开发者ID:jwheare,项目名称:electron-builder,代码行数:42,代码来源:codeSign.ts

示例6: outputFile

export async function writeUpdateConfig<T extends GenericServerOptions | GithubOptions | BintrayOptions | S3Options | SpacesOptions>(data: T): Promise<string> {
  const updateConfigPath = path.join(await tmpDir.getTempDir({prefix: "test-update-config"}), "app-update.yml")
  await outputFile(updateConfigPath, serializeToYaml(data))
  return updateConfigPath
}
开发者ID:ledinhphuong,项目名称:electron-builder,代码行数:5,代码来源:updaterTestUtil.ts

示例7: TestAppAdapter

export async function createTestAppAdapter(version: string = "0.0.1") {
  return new TestAppAdapter(version, await tmpDir.getTempDir())
}
开发者ID:electron-userland,项目名称:electron-builder,代码行数:3,代码来源:updaterTestUtil.ts

示例8:

afterEach(() => tmpDir.cleanup())
开发者ID:ledinhphuong,项目名称:electron-builder,代码行数:1,代码来源:macCodeSignTest.ts


注:本文中的builder-util.TmpDir类示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。