Interface GitHubInput

An input for GitHub Releases.

Currently, we cannot support GitHub Actions since artifacts can only be downloaded in zip format. However, you can add a build step that updates a release using IsaacShelton/update-existing-release.

type MUST be github

Hierarchy

  • GitHubInput

Properties

allowPrereleases?: boolean

If true, it will allow a prerelease to be the latest release. This will only do anything if tag is latest.

Defaults to false.

appMetadata: {
    bundleIdentifier: string;
    developerName: string;
    iconURL: string;
    localizedDescription: string;
    name: string;
    permissions?: Permission[];
    screenshotURLs?: string[];
    subtitle?: string;
    tintColor?: string;
}

Metadata for the app. See https://sidestore.io/sidestore-source-types/interfaces/App.html for updated documentation on each value

Type declaration

  • bundleIdentifier: string
  • developerName: string
  • iconURL: string
  • localizedDescription: string
  • name: string
  • Optional permissions?: Permission[]
  • Optional screenshotURLs?: string[]
  • Optional subtitle?: string
  • Optional tintColor?: string
assetRegex?: string

The regex used to match the IPA asset from the assets in the release. I recommend using https://www.regextester.com/ to test your regex.

Defaults to (.*).ipa

changelogLambda?: string

See dateLambda for info on how to use lambdas.

changelogLambda is expected to return a string with the version changelog.

Defaults to the release body. (release.body)

dateLambda?: string

Lambdas have a few options for returning the required output:

  1. A property path that points to the property that should correspond to the output. Examples:
    • release.body
    • ipaAsset.name
  2. The name of a JavaScript/TypeScript function prefixed with function: provided when creating the handler/source. See https://sidestore.io/SideSource/#functions for more info on built in functions and how you can make your own.

You will have access to the release variable (see https://docs.github.com/en/rest/releases/releases#get-the-latest-release) and ipaAsset variable, which is the asset that was picked using assetRegex.

dateLambda is expected to return a string with the date in YYYY-MM-DD format.

Defaults to parsing the date from the release asset updated_at property. (function:ipaAssetUpdatedAtToSourceDate)

repo: string

The repository to use. Must be in {user or org}/{repo name} format.

tag: string

The tag to use when fetching the release. If the tag is latest, it will use the latest release. See allowPrereleases if you want to allow prereleases when fetching the latest release.

type: "github"
versionLambda?: string

See dateLambda for info on how to use lambdas.

versionLambda is expected to return a string with the app version.

Defaults to the release tag name. (release.tag_name)

Generated using TypeDoc