Skip to main content

GitlabSource class

Namespace: Velopack.Sources

Retrieves available releases from a GitLab repository. This class only downloads assets from the very latest GitLab release.

public class GitlabSource : GitBase<GitlabRelease>, IUpdateSource

Inherits: GitBase<GitlabRelease>
Implements: IUpdateSource

Constructors

ConstructorSummary
GitlabSourceRetrieves available releases from a GitLab repository. This class only

GitlabSource(repoUrl, accessToken, upcomingRelease, downloader)

public GitlabSource(string repoUrl, string accessToken, bool upcomingRelease, IFileDownloader? downloader = null)

Retrieves available releases from a GitLab repository. This class only downloads assets from the very latest GitLab release.

Parameters

NameTypeDescription
repoUrlstringThe URL of the GitLab repository to download releases from
(e.g. https://gitlab.com/api/v4/projects/ProjectId)
accessTokenstringThe GitLab access token to use with the request to download releases.
upcomingReleaseboolIf true, the latest upcoming release will be downloaded. If false, the latest
stable release will be downloaded.
downloaderIFileDownloaderThe file downloader used to perform HTTP requests.

Properties

PropertySummary
Authorization

Authorization

protected override (string Name, string Value)? Authorization { get; }

Methods

MethodSummary
GetAssetUrlFromNameGiven a GitlabRelease and an asset filename (eg. 'RELEASES') this
GetReleasesRetrieves a list of GitlabRelease from the current repository.

GetAssetUrlFromName(release, assetName)

protected override string GetAssetUrlFromName(GitlabRelease release, string assetName)

Given a GitlabRelease and an asset filename (eg. 'RELEASES') this function will return either DirectAssetUrl or Url, depending whether an access token is available or not. Throws if the specified release has no matching assets.

Parameters

NameTypeDescription
releaseGitlabRelease
assetNamestring

Returns string

GetReleases(includePrereleases)

protected override Task<GitlabRelease[]> GetReleases(bool includePrereleases)

Retrieves a list of GitlabRelease from the current repository.

Parameters

NameTypeDescription
includePrereleasesbool

Returns Task<GitlabRelease[]>


Generated from Velopack 1.1.1