tweaks to getLatestRelease
This commit is contained in:
parent
e093729707
commit
f04a5e0168
@ -1,5 +1,5 @@
|
|||||||
{
|
{
|
||||||
"Linux":"Libation.\\d+.\\d+.\\d+-linux-chardonnay",
|
"WindowsClassic": "Libation\\.\\d+\\.\\d+\\.\\d+-win-classic\\.zip",
|
||||||
"WindowsClassic":"Libation.\\d+.\\d+.\\d+-win-classic.zip",
|
"WindowsAvalonia":"Libation\\.\\d+\\.\\d+\\.\\d+-win-chardonnay\\.zip",
|
||||||
"WindowsAvalonia":"Libation.\\d+.\\d+.\\d+-win-chardonnay"
|
"LinuxAvalonia": "Libation\\.\\d+\\.\\d+\\.\\d+-linux-chardonnay"
|
||||||
}
|
}
|
||||||
|
|||||||
@ -313,7 +313,7 @@ namespace AppScaffolding
|
|||||||
{
|
{
|
||||||
WindowsClassic,
|
WindowsClassic,
|
||||||
WindowsAvalonia,
|
WindowsAvalonia,
|
||||||
Linux
|
LinuxAvalonia
|
||||||
}
|
}
|
||||||
|
|
||||||
public static UpgradeProperties GetLatestRelease(ReleaseIdentifier releaseID = ReleaseIdentifier.WindowsClassic)
|
public static UpgradeProperties GetLatestRelease(ReleaseIdentifier releaseID = ReleaseIdentifier.WindowsClassic)
|
||||||
@ -362,15 +362,18 @@ namespace AppScaffolding
|
|||||||
}
|
}
|
||||||
private static async System.Threading.Tasks.Task<Octokit.Release> getLatestRelease(ReleaseIdentifier releaseID)
|
private static async System.Threading.Tasks.Task<Octokit.Release> getLatestRelease(ReleaseIdentifier releaseID)
|
||||||
{
|
{
|
||||||
var gitHubClient = new Octokit.GitHubClient(new Octokit.ProductHeaderValue("Libation"));
|
var ownerAccount = "rmcrackan";
|
||||||
|
var repoName = "Libation";
|
||||||
|
|
||||||
|
var gitHubClient = new Octokit.GitHubClient(new Octokit.ProductHeaderValue(repoName));
|
||||||
|
|
||||||
//Download the release index
|
//Download the release index
|
||||||
var bts = await gitHubClient.Repository.Content.GetRawContent("Mbucari", "Libation", ".releaseindex.json");
|
var bts = await gitHubClient.Repository.Content.GetRawContent(ownerAccount, repoName, ".releaseindex.json");
|
||||||
var releaseIndex = JObject.Parse(System.Text.Encoding.ASCII.GetString(bts));
|
var releaseIndex = JObject.Parse(System.Text.Encoding.ASCII.GetString(bts));
|
||||||
var regexPattern = releaseIndex.Value<string>(releaseID.ToString());
|
var regexPattern = releaseIndex.Value<string>(releaseID.ToString());
|
||||||
|
|
||||||
// https://octokitnet.readthedocs.io/en/latest/releases/
|
// https://octokitnet.readthedocs.io/en/latest/releases/
|
||||||
var releases = await gitHubClient.Repository.Release.GetAll("rmcrackan", "Libation");
|
var releases = await gitHubClient.Repository.Release.GetAll(ownerAccount, repoName);
|
||||||
|
|
||||||
var regex = new System.Text.RegularExpressions.Regex(regexPattern, System.Text.RegularExpressions.RegexOptions.IgnoreCase);
|
var regex = new System.Text.RegularExpressions.Regex(regexPattern, System.Text.RegularExpressions.RegexOptions.IgnoreCase);
|
||||||
var latest = releases.FirstOrDefault(r => !r.Draft && !r.Prerelease && r.Assets.Any(a => regex.IsMatch(a.Name)));
|
var latest = releases.FirstOrDefault(r => !r.Draft && !r.Prerelease && r.Assets.Any(a => regex.IsMatch(a.Name)));
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user