interface PublisherGCSConfig {
    bucket?: string;
    folder?: string;
    keyResolver?: ((fileName, platform, arch) => string);
    metadataGenerator?: ((artifact) => ConfigMetadata);
    predefinedAcl?: PredefinedAcl;
    private?: boolean;
    public?: boolean;
    storageOptions: StorageOptions;
}

Properties

bucket?: string

The name of the Google Cloud Storage bucket where artifacts are uploaded.

folder?: string

The key prefix where artifacts are uploaded, e.g., my/prefix.

Defaults to the application version specified in the app's package.json.

keyResolver?: ((fileName, platform, arch) => string)

Custom function to provide the key to upload a given file to

Type declaration

    • (fileName, platform, arch): string
    • Parameters

      • fileName: string
      • platform: string
      • arch: string

      Returns string

metadataGenerator?: ((artifact) => ConfigMetadata)

Generate optional Metadata for GCS Objects See https://cloud.google.com/storage/docs/metadata for more info. Expects a function that takes a GCSArtifact object and returns a ConfigMetadata object.

Type declaration

    • (artifact): ConfigMetadata
    • Parameters

      Returns ConfigMetadata

predefinedAcl?: PredefinedAcl

Apply a predefined set of access controls to this object.

private?: boolean

Whether to make uploaded artifacts private. Alias for config.predefinedAcl = 'private'.

public?: boolean

Whether to make uploaded artifacts public to the internet. Alias for config.predefinedAcl = 'publicRead'.

storageOptions: StorageOptions

Options passed into the Storage client constructor. See https://cloud.google.com/nodejs/docs/reference/storage/latest/storage/storage for full reference.