Interfaces
MetadataAccessor
Options
Variables
BASE_PATH
BASE_PATH = "/computeMetadata/v1"
GCE_LINUX_BIOS_PATHS
GCE_LINUX_BIOS_PATHS: {
BIOS_DATE: string;
BIOS_VENDOR: string;
}
Known paths unique to Google Compute Engine Linux instances
gcpResidencyCache
gcpResidencyCache: boolean | null
A cache for the detected GCP Residency.
HEADER_NAME
HEADER_NAME = "Metadata-Flavor"
HEADER_VALUE
HEADER_VALUE = "Google"
HEADERS
HEADERS: Readonly<{ "metadata-flavor":="" "google";="" }="">
HOST_ADDRESS
HOST_ADDRESS = "http://169.254.169.254"
METADATA_SERVER_DETECTION
METADATA_SERVER_DETECTION: Readonly<{ 'assume-present':="" "don't="" try="" to="" ping="" the="" metadata="" server,="" but="" assume="" it's="" present";="" none:="" "don't="" try="" to="" ping="" the="" metadata="" server,="" but="" don't="" try="" to="" use="" it="" either";="" 'bios-only':="" "treat="" the="" result="" of="" a="" bios="" probe="" as="" canonical="" (don't="" fall="" back="" to="" pinging)";="" 'ping-only':="" "skip="" the="" bios="" probe,="" and="" go="" straight="" to="" pinging";="" }="">
Metadata server detection override options.
Available via process.env.METADATA_SERVER_DETECTION
.
SECONDARY_HOST_ADDRESS
SECONDARY_HOST_ADDRESS = "http://metadata.google.internal."
Functions
bulk(properties)
export declare function bulk
Retrieve metadata items in parallel.
Parameter | |
---|---|
Name | Description |
properties | T The metadata properties to retrieve |
Returns | |
---|---|
Type | Description |
Promise<R> | The metadata in |
Type Parameters | |
---|---|
Type | Description |
T | |
R |
Example
const data = await bulk([
{
metadataKey: 'instance',
},
{
metadataKey: 'project/project-id',
},
] as const);
// data.instance;
// data['project/project-id'];
detectGCPResidency()
export declare function detectGCPResidency(): boolean;
Determines if the process is running on Google Cloud Platform.
Returns | |
---|---|
Type | Description |
boolean | {boolean} |
getGCPResidency()
export declare function getGCPResidency(): boolean;
Detects GCP Residency. Caches results to reduce costs for subsequent calls.
Returns | |
---|---|
Type | Description |
boolean |
instance(options)
export declare function instance
Obtain metadata for the current GCE instance.
Parameter | |
---|---|
Name | Description |
options | string | Options |
Returns | |
---|---|
Type | Description |
Promise<T> |
Type Parameter | |
---|---|
Type | Description |
T |
Example
const serviceAccount: {} = await instance('service-accounts/');
const serviceAccountEmail: string = await instance('service-accounts/default/email');
isAvailable()
export declare function isAvailable(): Promise
Determine if the metadata server is currently available.
Returns | |
---|---|
Type | Description |
Promise<boolean> |
isGoogleCloudServerless()
export declare function isGoogleCloudServerless(): boolean;
Determines if the process is running on a Google Cloud Serverless environment (Cloud Run or Cloud Functions instance).
Uses the: - . - .
Returns | |
---|---|
Type | Description |
boolean | {boolean} |
isGoogleComputeEngine()
export declare function isGoogleComputeEngine(): boolean;
Determines if the process is running on a Google Compute Engine instance.
Returns | |
---|---|
Type | Description |
boolean | {boolean} |
isGoogleComputeEngineLinux()
export declare function isGoogleComputeEngineLinux(): boolean;
Determines if the process is running on a Linux Google Compute Engine instance.
Returns | |
---|---|
Type | Description |
boolean | {boolean} |
isGoogleComputeEngineMACAddress()
export declare function isGoogleComputeEngineMACAddress(): boolean;
Determines if the process is running on a Google Compute Engine instance with a known MAC address.
Returns | |
---|---|
Type | Description |
boolean | {boolean} |
project(options)
export declare function project
Obtain metadata for the current GCP project.
Parameter | |
---|---|
Name | Description |
options | string | Options |
Returns | |
---|---|
Type | Description |
Promise<T> |
Type Parameter | |
---|---|
Type | Description |
T |
Example
const projectId: string = await project('project-id');
const numericProjectId: number = await project('numeric-project-id');
requestTimeout()
export declare function requestTimeout(): number;
Obtain the timeout for requests to the metadata server.
In certain environments and conditions requests can take longer than the default timeout to complete. This function will determine the appropriate timeout based on the environment.
Returns | |
---|---|
Type | Description |
number | {number} a request timeout duration in milliseconds. |
resetIsAvailableCache()
export declare function resetIsAvailableCache(): void;
reset the memoized isAvailable() lookup.
Returns | |
---|---|
Type | Description |
void |
setGCPResidency(value)
export declare function setGCPResidency(value?: boolean | null): void;
Sets the detected GCP Residency. Useful for forcing metadata server detection behavior.
Set null
to autodetect the environment (default behavior).
Parameter | |
---|---|
Name | Description |
value | boolean | null |
Returns | |
---|---|
Type | Description |
void |
universe(options)
export declare function universe
Obtain metadata for the current universe.
Parameter | |
---|---|
Name | Description |
options | string | Options |
Returns | |
---|---|
Type | Description |
Promise<T> |
Type Parameter | |
---|---|
Type | Description |
T |
Example
const universeDomain: string = await universe('universe_domain');
Type Aliases
BulkResults
export type BulkResults
Type Parameter | |
---|---|
Type | Description |
T |