owltech
Version:
This a backend for OwlTech Company
65 lines (54 loc) • 1.87 kB
Markdown
> Get the metadata from a Google Cloud Platform environment.
[![NPM Version][npm-image]][npm-url]
[![codecov][codecov-image]][codecov-url]
```sh
$ npm install --save gcp-metadata
```
```js
const gcpMetadata = require('gcp-metadata');
```
```js
const isAvailable = await gcpMetadata.isAvailable();
```
```js
const data = await gcpMetadata.instance();
console.log(data); // ... All metadata properties
```
```js
const data = await gcpMetadata.instance('hostname');
console.log(data) // ...Instance hostname
```
```js
const data = await gcpMetadata.instance({
property: 'tags',
params: { alt: 'text' }
});
console.log(data) // ...Tags as newline-delimited list
```
```js
await gcpMetadata.instance({
headers: { 'no-trace': '1' }
}); // ...Request is untraced
```
In some cases number valued properties returned by the Metadata Service may be
too large to be representable as JavaScript numbers. In such cases we return
those values as `BigNumber` objects (from the [bignumber.js][] library). Numbers
that fit within the JavaScript number range will be returned as normal number
values.
```js
const id = await gcpMetadata.instance('id');
console.log(id) // ... BigNumber { s: 1, e: 18, c: [ 45200, 31799277581759 ] }
console.log(id.toString()) // ... 4520031799277581759
```
[]: https://github.com/MikeMcl/bignumber.js
[]: https://codecov.io/gh/googleapis/gcp-metadata/branch/master/graph/badge.svg
[]: https://codecov.io/gh/googleapis/gcp-metadata
[]: https://img.shields.io/npm/v/gcp-metadata.svg
[]: https://www.npmjs.com/package/gcp-metadata