本文整理汇总了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()
}
示例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)
}
示例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.`)
}
}
示例4: fetch
async fetch(app: string): Promise<any[]> {
let buildpacks = await this.heroku.get(`/apps/${app}/buildpack-installations`)
return this.mapBuildpackResponse(buildpacks)
}