當前位置: 首頁>>代碼示例>>TypeScript>>正文


TypeScript command.APIClient類代碼示例

本文整理匯總了TypeScript中@heroku-cli/command.APIClient的典型用法代碼示例。如果您正苦於以下問題:TypeScript APIClient類的具體用法?TypeScript APIClient怎麽用?TypeScript APIClient使用的例子?那麽, 這裏精選的類代碼示例或許可以為您提供幫助。


在下文中一共展示了APIClient類的4個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的TypeScript代碼示例。

示例1: function

export const completions: Hook<any> = async function ({type, app}: {type?: 'app' | 'addon' | 'config' | 'login' | 'logout', app?: string}) {
  // autocomplete is now in core, skip windows
  if (this.config.windows) return
  const logInOut = type === 'login' || type === 'logout'
  const completionsDir = path.join(this.config.cacheDir, 'autocomplete', 'completions')
  const rm = () => fs.emptyDir(completionsDir)
  const rmKey = (cacheKey: string) => fs.remove(path.join(completionsDir, cacheKey))

  if (type === 'app') return rmKey('app')
  if (type === 'addon' && app) return rmKey(`${app}_addons`)
  if (type === 'config' && app) return rmKey(`${app}_config_vars`)
  if (logInOut) return rm()

  const update = async (completion: any, cacheKey: string) => {
    const cachePath = path.join(completionsDir, cacheKey)
    const options = await completion.options({config: this.config})
    await updateCache(cachePath, options)
  }

  // if user is not logged in, exit
  try {
    const heroku = new APIClient(this.config)
    if (!heroku.auth) return
    await heroku.get('/account', {retryAuth: false})
  } catch (err) {
    this.debug(err.message)
    return
  }

  cli.action.start('Updating completions')
  await rm()
  await acCreate.run([], this.config)

  try {
    await update(AppCompletion, 'app')
    await update(PipelineCompletion, 'pipeline')
    await update(SpaceCompletion, 'space')
    await update(TeamCompletion, 'team')
  } catch (err) {
    this.debug(err.message)
  }
  cli.action.stop()
}
開發者ID:jimmyurl,項目名稱:cli,代碼行數:43,代碼來源:recache.ts

示例2: put

  async put(app: string, buildpackUpdates: {buildpack: string}[]): Promise<BuildpackResponse[]> {
    let buildpacks = await this.heroku.put(`/apps/${app}/buildpack-installations`, {
      headers: {Range: ''},
      body: {updates: buildpackUpdates}
    })

    return this.mapBuildpackResponse(buildpacks)
  }
開發者ID:jimmyurl,項目名稱:cli,代碼行數:8,代碼來源:buildpacks.ts

示例3: clear

  async clear(app: string, command: 'clear' | 'remove', action: 'cleared' | 'removed') {
    await this.put(app, [])

    let configVars: any = await this.heroku.get(`/apps/${app}/config-vars`)
    let message = `Buildpack${command === 'clear' ? 's' : ''} ${action}.`
    if (configVars.body.BUILDPACK_URL) {
      cli.log(message)
      cli.warn('The BUILDPACK_URL config var is still set and will be used for the next release')
    } else if (configVars.body.LANGUAGE_PACK_URL) {
      cli.log(message)
      cli.warn('The LANGUAGE_PACK_URL config var is still set and will be used for the next release')
    } else {
      cli.log(`${message} Next release on ${app} will detect buildpacks normally.`)
    }
  }
開發者ID:jimmyurl,項目名稱:cli,代碼行數:15,代碼來源:buildpacks.ts

示例4: fetch

 async fetch(app: string): Promise<any[]> {
   let buildpacks = await this.heroku.get(`/apps/${app}/buildpack-installations`)
   return this.mapBuildpackResponse(buildpacks)
 }
開發者ID:jimmyurl,項目名稱:cli,代碼行數:4,代碼來源:buildpacks.ts


注:本文中的@heroku-cli/command.APIClient類示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。