@pulumi/github
Version:
A Pulumi package for creating and managing github cloud resources.
177 lines (176 loc) • 4.79 kB
TypeScript
import * as pulumi from "@pulumi/pulumi";
import * as outputs from "./types/output";
/**
* Use this data source to retrieve information about a GitHub release in a specific repository.
*
* ## Example Usage
*
* To retrieve the latest release that is present in a repository:
*
* ```typescript
* import * as pulumi from "@pulumi/pulumi";
* import * as github from "@pulumi/github";
*
* const example = github.getRelease({
* repository: "example-repository",
* owner: "example-owner",
* retrieveBy: "latest",
* });
* ```
*
* To retrieve a specific release from a repository based on it's ID:
*/
export declare function getRelease(args: GetReleaseArgs, opts?: pulumi.InvokeOptions): Promise<GetReleaseResult>;
/**
* A collection of arguments for invoking getRelease.
*/
export interface GetReleaseArgs {
/**
* Owner of the repository.
*/
owner: string;
/**
* ID of the release to retrieve. Must be specified when `retrieveBy` = `id`.
*/
releaseId?: number;
/**
* Tag of the release to retrieve. Must be specified when `retrieveBy` = `tag`.
*/
releaseTag?: string;
/**
* Name of the repository to retrieve the release from.
*/
repository: string;
/**
* Describes how to fetch the release. Valid values are `id`, `tag`, `latest`.
*/
retrieveBy: string;
}
/**
* A collection of values returned by getRelease.
*/
export interface GetReleaseResult {
/**
* **Deprecated**: Use `assetsUrl` resource instead
*
* @deprecated use assetsUrl instead
*/
readonly assertsUrl: string;
/**
* Collection of assets for the release. Each asset conforms to the following schema:
*/
readonly assets: outputs.GetReleaseAsset[];
/**
* URL of any associated assets with the release
*/
readonly assetsUrl: string;
/**
* Contents of the description (body) of a release
*/
readonly body: string;
/**
* Date the asset was created
*/
readonly createdAt: string;
/**
* (`Boolean`) indicates whether the release is a draft
*/
readonly draft: boolean;
/**
* URL directing to detailed information on the release
*/
readonly htmlUrl: string;
/**
* The provider-assigned unique ID for this managed resource.
*/
readonly id: string;
/**
* The file name of the asset
*/
readonly name: string;
readonly owner: string;
/**
* (`Boolean`) indicates whether the release is a prerelease
*/
readonly prerelease: boolean;
/**
* Date of release publishing
*/
readonly publishedAt: string;
/**
* ID of release
*/
readonly releaseId?: number;
/**
* Tag of release
*/
readonly releaseTag?: string;
readonly repository: string;
readonly retrieveBy: string;
/**
* Download URL of a specific release in `tar.gz` format
*/
readonly tarballUrl: string;
/**
* Commitish value that determines where the Git release is created from
*/
readonly targetCommitish: string;
/**
* URL that can be used to upload Assets to the release
*/
readonly uploadUrl: string;
/**
* URL of the asset
*/
readonly url: string;
/**
* Download URL of a specific release in `zip` format
*/
readonly zipballUrl: string;
}
/**
* Use this data source to retrieve information about a GitHub release in a specific repository.
*
* ## Example Usage
*
* To retrieve the latest release that is present in a repository:
*
* ```typescript
* import * as pulumi from "@pulumi/pulumi";
* import * as github from "@pulumi/github";
*
* const example = github.getRelease({
* repository: "example-repository",
* owner: "example-owner",
* retrieveBy: "latest",
* });
* ```
*
* To retrieve a specific release from a repository based on it's ID:
*/
export declare function getReleaseOutput(args: GetReleaseOutputArgs, opts?: pulumi.InvokeOutputOptions): pulumi.Output<GetReleaseResult>;
/**
* A collection of arguments for invoking getRelease.
*/
export interface GetReleaseOutputArgs {
/**
* Owner of the repository.
*/
owner: pulumi.Input<string>;
/**
* ID of the release to retrieve. Must be specified when `retrieveBy` = `id`.
*/
releaseId?: pulumi.Input<number>;
/**
* Tag of the release to retrieve. Must be specified when `retrieveBy` = `tag`.
*/
releaseTag?: pulumi.Input<string>;
/**
* Name of the repository to retrieve the release from.
*/
repository: pulumi.Input<string>;
/**
* Describes how to fetch the release. Valid values are `id`, `tag`, `latest`.
*/
retrieveBy: pulumi.Input<string>;
}