26 Commits

Author SHA1 Message Date
8242b06085 Revert "Update YouTube.ps1"
This reverts commit bdca80cf21.
2024-01-02 14:17:04 +07:00
bdca80cf21 Update YouTube.ps1 2024-01-02 01:16:22 +07:00
271a6e13c6 Update YouTube.ps1 2024-01-02 01:11:11 +07:00
7f15206c6d Fix indents
Signed-off-by: Lev Rusanov <30170278+JDM170@users.noreply.github.com>
2023-12-01 21:08:39 +07:00
dab245fc0d Update Build.yml
Signed-off-by: Lev Rusanov <30170278+JDM170@users.noreply.github.com>
2023-12-01 13:03:21 +07:00
aec3595c1f Update YouTube.ps1
Signed-off-by: Lev Rusanov <30170278+JDM170@users.noreply.github.com>
2023-12-01 12:58:17 +07:00
6d79dcd962 Update Build.ps1
Signed-off-by: Lev Rusanov <30170278+JDM170@users.noreply.github.com>
2023-12-01 12:57:50 +07:00
c6fe465f1e Update README.md
Signed-off-by: Lev Rusanov <30170278+JDM170@users.noreply.github.com>
2023-08-28 13:21:14 +07:00
7c399049ae Change step names in CI
Signed-off-by: Lev Rusanov <30170278+JDM170@users.noreply.github.com>
2023-08-28 13:21:00 +07:00
cfce0e86f7 Fix interacting with latest revanced-cli
Signed-off-by: Lev Rusanov <30170278+JDM170@users.noreply.github.com>
2023-08-28 13:06:13 +07:00
faf94e4e29 Update ReVanced_Patches.ps1 2023-07-17 04:20:38 +07:00
ad506f52ce Update Build.ps1
Signed-off-by: Lev Rusanov <30170278+JDM170@users.noreply.github.com>
2023-07-14 14:07:15 +07:00
a110a4b243 Update Scripts/YouTube.ps1
Signed-off-by: Lev Rusanov <30170278+JDM170@users.noreply.github.com>
2023-07-11 22:19:36 +07:00
71d741090a Update Build.ps1
Signed-off-by: Lev Rusanov <30170278+JDM170@users.noreply.github.com>
2023-07-11 22:19:31 +07:00
5acbf45673 Update Scripts/YouTube.ps1
Signed-off-by: Lev Rusanov <30170278+JDM170@users.noreply.github.com>
2023-07-11 22:11:05 +07:00
0429d83c29 Update Build.ps1
Signed-off-by: Lev Rusanov <30170278+JDM170@users.noreply.github.com>
2023-07-11 22:10:05 +07:00
52588a3dd5 Restore file from previous commits and fix link
Signed-off-by: Lev Rusanov <30170278+JDM170@users.noreply.github.com>
2023-07-09 22:45:32 +07:00
c60238c508 fix youtube downloading from actions 2
Signed-off-by: Lev Rusanov <30170278+JDM170@users.noreply.github.com>
2023-07-09 22:41:45 +07:00
02582d4598 fix youtube downloading from actions
Signed-off-by: Lev Rusanov <30170278+JDM170@users.noreply.github.com>
2023-07-09 22:39:05 +07:00
6898697b69 implemented finding actual APK link (not BUNDLE)
Signed-off-by: Lev Rusanov <30170278+JDM170@users.noreply.github.com>
2023-07-09 22:29:17 +07:00
79ceecf058 Fix YouTube download link
Signed-off-by: Lev Rusanov <30170278+JDM170@users.noreply.github.com>
2023-06-11 21:00:06 +07:00
ab77af47b0 Update Build.yml 2023-03-28 15:33:24 +07:00
db5e3f387f Update README.md 2023-02-17 23:07:45 +07:00
5b0be70e7a Update
Signed-off-by: Lev Rusanov <30170278+JDM170@users.noreply.github.com>
2023-02-09 23:24:10 +07:00
0106b5861b Update files
Signed-off-by: Lev Rusanov <30170278+JDM170@users.noreply.github.com>
2023-02-07 15:42:14 +07:00
90b7a1d005 Update Zulu_JDK.ps1 2023-02-07 15:13:47 +07:00
9 changed files with 140 additions and 99 deletions

View File

@@ -1,9 +1,6 @@
name: Build
on:
push:
tags:
- "*"
workflow_dispatch:
jobs:
@@ -13,52 +10,56 @@ jobs:
steps:
- uses: actions/checkout@main
- name: Installing AngleSharp
- name: Install AngleSharp
run: |
Install-Package AngleSharp -Source https://www.nuget.org/api/v2 -SkipDependencies -Force
- name: Downloading YouTube
- name: Download YouTube
run: |
New-Item -Path Temp -ItemType Directory -Force
. Scripts\YouTube.ps1
- name: Downloading ReVanced CLI
- name: Download ReVanced CLI
run: |
. Scripts\ReVanced_CLI.ps1
- name: Downloading ReVanced Patches
- name: Download ReVanced Patches
run: |
. Scripts\ReVanced_Patches.ps1
- name: Downloading ReVanced Integrations
- name: Download ReVanced Integrations
run: |
. Scripts\ReVanced_Intergrations.ps1
- name: Downloading Vanced MicroG
- name: Download Vanced MicroG
run: |
. Scripts\MicroG.ps1
- name: Downloading and expanding Zulu JDK
- name: Download and expanding Zulu JDK
run: |
. Scripts\Zulu_JDK.ps1
- name: Building
- name: Build
run: |
$JavaPath = (Resolve-Path -Path "Temp\jdk_windows-x64_bin\zulu*win_x64\bin\java.exe").Path
& $JavaPath `
-jar "Temp\revanced-cli.jar" `
--apk "Temp\youtube.apk" `
--bundle "Temp\revanced-patches.jar" `
-jar "Temp\revanced-cli.jar" patch `
--patch-bundle "Temp\revanced-patches.jar" `
--merge "Temp\revanced-integrations.apk" `
--exclude hide-time-and-seekbar --exclude always-autorepeat --exclude hide-captions-button --exclude disable-fullscreen-panels --exclude old-quality-layout `
--clean `
--temp-dir "Temp\Temp" `
--out "Temp\revanced.apk"
--exclude "always-autorepeat" `
--exclude "hide-captions-button" `
--exclude "hide-timestamp" `
--exclude "hide-seekbar" `
--purge `
--resource-cache "Temp\Temp" `
--out "Temp\revanced.apk" `
"Temp\youtube.apk"
- name: Creating archive
- name: Create archive
run: |
Get-ChildItem Temp\Temp -Recurse -Force
$Parameters = @{
Path = "Temp\revanced.apk", "Temp\microg.apk"
DestinationPath = "ReVanced.zip"
@@ -67,25 +68,19 @@ jobs:
}
Compress-Archive @Parameters
- name: Creating Release Notes
- name: Create Release Notes
id: read_release
run: |
# https://en.wikipedia.org/wiki/Percent-encoding
$Release = (Get-Content -Path ReleaseNotesTemplate.md -Encoding utf8 -Raw).replace("`n", "%0A").replace("`r", "%0D").replace("YouTubeTag", "${{ env.LatestSupportedYT }}").replace("CLITag", "${{ env.CLIvtag }}").replace("PatchesTag", "${{ env.Patchesvtag }}").replace("IntegrationsTag", "${{ env.IntegrationsTag }}").replace("MicroGTag", "${{ env.MicroGTag }}").replace("ZuluTag", "${{ env.ZuluTag }}")
(Get-Content -Path ReleaseNotesTemplate.md -Encoding utf8 -Raw).replace("YouTubeTag", "${{ env.LatestSupportedYT }}").replace("CLITag", "${{ env.CLIvtag }}").replace("PatchesTag", "${{ env.Patchesvtag }}").replace("IntegrationsTag", "${{ env.IntegrationsTag }}").replace("MicroGTag", "${{ env.MicroGTag }}").replace("ZuluTag", "${{ env.ZuluTag }}") | Set-Content -Path ReleaseNotesTemplate.md -Encoding utf8 -Force
# https://trstringer.com/github-actions-multiline-strings/
echo "::set-output name=RELEASE_BODY::$Release"
# echo "RELEASE_BODY=$Release" >> $GITHUB_OUTPUT
# echo "RELEASE_BODY=$Release" >> $env:GITHUB_ENV
Add-Content -Path $env:GITHUB_OUTPUT -Value "ReleaseBody=ReleaseNotesTemplate.md"
$ReleaseName = Get-Date -f "yyyy.MM.dd"
echo "RELEASE_NAME=$ReleaseName" >> $env:GITHUB_ENV
- name: Uploading to Releases
- name: Upload to Releases
uses: softprops/action-gh-release@master
with:
tag_name: ${{ env.RELEASE_NAME }}
token: ${{ github.token }}
body_path: ${{ steps.read_release.outputs.ReleaseBody }}
files: ReVanced.zip
body: ${{ steps.read_release.outputs.RELEASE_BODY }}
# body: ${{ env.RELEASE_BODY }}

View File

@@ -18,6 +18,10 @@
# Requires -Version 5.1
# Doesn't work on PowerShell 7.2 due it doesn't contains IE parser engine. You have to use a 3rd party module to make it work like it's presented in CI/CD config: AngleSharp
# Invoke-Webrequest speedup workaround. Improved downloads speeds significantly.
# Ref: https://www.codewrecks.com/post/azdo/pills/powershell-download/
$ProgressPreference = 'SilentlyContinue'
# Download all files to "Script location folder\ReVanced"
$WorkingFolder = Split-Path $MyInvocation.MyCommand.Path -Parent
if (-not (Test-Path -Path "$WorkingFolder\ReVanced"))
@@ -37,10 +41,26 @@ $versions = ($JSON | Where-Object -FilterScript {$_.compatiblePackages.name -eq
$LatestSupported = $versions | Sort-Object -Descending -Unique | Select-Object -First 1
$LatestSupported = $LatestSupported.replace(".", "-")
# Get unique key to generate direct link
# https://www.apkmirror.com/apk/google-inc/youtube/
# Try to find correct NON-Bundle version
$Parameters = @{
Uri = "https://www.apkmirror.com/apk/google-inc/youtube/youtube-$($LatestSupported)-release/youtube-$($LatestSupported)-2-android-apk-download/"
Uri = "https://www.apkmirror.com/apk/google-inc/youtube/youtube-$($LatestSupported)-release/youtube-$($LatestSupported)-android-apk-download/"
UseBasicParsing = $false # Disabled
Verbose = $true
}
$URLParse = (Invoke-Webrequest @Parameters).Links.outerHTML | Where-Object -FilterScript {$_ -like "*YouTube $($LatestSupported.replace("-", ".")) (nodpi)*"}
# Check if variable contains a data
if ($URLParse)
{
$URL = "https://www.apkmirror.com/apk/google-inc/youtube/youtube-$($LatestSupported)-release/youtube-$($LatestSupported)-android-apk-download/"
}
else
{
$URL = "https://www.apkmirror.com/apk/google-inc/youtube/youtube-$($LatestSupported)-release/youtube-$($LatestSupported)-2-android-apk-download/"
}
# Get unique key to generate direct link
$Parameters = @{
Uri = $URL
UseBasicParsing = $false # Disabled
Verbose = $true
}
@@ -48,7 +68,7 @@ $Request = Invoke-Webrequest @Parameters
$nameProp = $Request.ParsedHtml.getElementsByClassName("accent_bg btn btn-flat downloadButton") | ForEach-Object -Process {$_.nameProp}
$Parameters = @{
Uri = "https://www.apkmirror.com/apk/google-inc/youtube/youtube-$($LatestSupported)-release/youtube-$($LatestSupported)-2-android-apk-download/download/$($nameProp)"
Uri = "$($URL)/download/$($nameProp)"
UseBasicParsing = $false # Disabled
Verbose = $true
}
@@ -71,10 +91,9 @@ $Parameters = @{
UseBasicParsing = $true
Verbose = $true
}
$Tag = (Invoke-RestMethod @Parameters).tag_name
$Tag2 = $Tag.replace("v", "")
$URL = (Invoke-RestMethod @Parameters).assets.browser_download_url
$Parameters = @{
Uri = "https://github.com/revanced/revanced-cli/releases/download/$Tag/revanced-cli-$Tag2-all.jar"
Uri = $URL
Outfile = "$WorkingFolder\ReVanced\revanced-cli.jar"
UseBasicParsing = $true
Verbose = $true
@@ -87,10 +106,9 @@ $Parameters = @{
UseBasicParsing = $true
Verbose = $true
}
$Tag = (Invoke-RestMethod @Parameters).tag_name
$Tag2 = $Tag.replace("v", "")
$URL = ((Invoke-RestMethod @Parameters).assets | Where-Object -FilterScript {$_.content_type -eq "application/java-archive"}).browser_download_url
$Parameters = @{
Uri = "https://github.com/revanced/revanced-patches/releases/download/$Tag/revanced-patches-$Tag2.jar"
Uri = $URL
Outfile = "$WorkingFolder\ReVanced\revanced-patches.jar"
UseBasicParsing = $true
Verbose = $true
@@ -103,11 +121,8 @@ $Parameters = @{
UseBasicParsing = $true
Verbose = $true
}
# $Tag = (Invoke-RestMethod @Parameters).tag_name
# $Tag2 = $Tag.replace("v", "")
$URL = (Invoke-RestMethod @Parameters).assets.browser_download_url
$Parameters = @{
# Uri = "https://github.com/revanced/revanced-integrations/releases/download/$Tag/revanced-integrations-$Tag2.apk"
Uri = $URL
Outfile = "$WorkingFolder\ReVanced\revanced-integrations.apk"
UseBasicParsing = $true
@@ -121,15 +136,21 @@ $Parameters = @{
UseBasicParsing = $true
Verbose = $true
}
$Tag = (Invoke-RestMethod @Parameters).tag_name
$URL = (Invoke-RestMethod @Parameters).assets.browser_download_url
$Parameters = @{
Uri = "https://github.com/TeamVanced/VancedMicroG/releases/download/$Tag/microg.apk"
Uri = $URL
Outfile = "$WorkingFolder\ReVanced\microg.apk"
UseBasicParsing = $true
Verbose = $true
}
Invoke-RestMethod @Parameters
# Sometimes older version of zulu-jdk causes conflict, so remove older version before proceeding.
if (Test-Path -Path "$WorkingFolder\ReVanced\jdk")
{
Remove-Item -Path "$WorkingFolder\ReVanced\jdk" -Recurse -Force
}
# https://github.com/ScoopInstaller/Java/blob/master/bucket/zulu-jdk.json
$Parameters = @{
Uri = "https://raw.githubusercontent.com/ScoopInstaller/Java/master/bucket/zulu-jdk.json"
@@ -156,21 +177,24 @@ Expand-Archive @Parameters
Remove-Item -Path "$WorkingFolder\ReVanced\jdk_windows-x64_bin.zip" -Force
# https://github.com/revanced/revanced-patches
# Let's create patched APK
& "$WorkingFolder\ReVanced\jdk\zulu*win_x64\bin\java.exe" `
-jar "$WorkingFolder\ReVanced\revanced-cli.jar" `
--apk "$WorkingFolder\ReVanced\youtube.apk" `
--bundle "$WorkingFolder\ReVanced\revanced-patches.jar" `
-jar "$WorkingFolder\ReVanced\revanced-cli.jar" patch `
--patch-bundle "$WorkingFolder\ReVanced\revanced-patches.jar" `
--merge "$WorkingFolder\ReVanced\revanced-integrations.apk" `
--exclude hide-time-and-seekbar --exclude always-autorepeat --exclude hide-captions-button --exclude disable-fullscreen-panels --exclude old-quality-layout `
--clean `
--temp-dir "$WorkingFolder\ReVanced\Temp" `
--out "$WorkingFolder\ReVanced\revanced.apk"
--exclude "always-autorepeat" `
--exclude "hide-captions-button" `
--exclude "hide-timestamp" `
--exclude "hide-seekbar" `
--purge `
--resource-cache "$WorkingFolder\ReVanced\Temp" `
--out "$WorkingFolder\ReVanced\revanced.apk" `
"$WorkingFolder\ReVanced\youtube.apk"
# Open working directory with builded files
# Invoke-Item -Path "$WorkingFolder\ReVanced"
# Remove temp directory, because cli failed to clean up directory
Remove-Item -Path "$WorkingFolder\ReVanced\Temp" -Recurse -Force -Confirm:$false
# Remove-Item -Path "$WorkingFolder\ReVanced\Temp" -Recurse -Force -Confirm:$false
Write-Warning -Message "Latest available revanced.apk & microg.apk are ready in `"$WorkingFolder\ReVanced`""

View File

@@ -2,29 +2,26 @@
# ReVanced builder
Build ReVanced package (.apk) easily than ever using latest ReVanced patches and dependencies
Build ReVanced package (.apk) easily than ever using latest ReVanced patches and dependencies locally or via cloud
## Usage
### Locally
* To build `revanced.apk` locally you need just to run [`Build.ps1`](https://github.com/JDM170/ReVanced_Builder/blob/main/Build.ps1) via PowerShell;
* All [patches](https://github.com/revanced/revanced-patches) except the followings applied to `revanced.apk`:
* always-autorepeat
* enable-wide-searchbar
* disable-fullscreen-panels
* premium-heading
* tablet-mini-player
* hide-captions-button
* hide-timestamp
* hide-seekbar
* The script downloads latest available YouTube package (having parsed [JSON](https://github.com/revanced/revanced-patches/blob/main/patches.json)) supported by ReVanced Team from <https://apkmirror.com> and all dependencies and build package using [Zulu JDK](https://www.azul.com/downloads/?package=jdk);
* Script installs no apps — everything will be held in your `Script location folder\ReVanced`;
* After compiling you get `revanced.apk` & `microg.apk` ready to be installed;
* Release notes are generated dynamically using the [ReleaseNotesTemplate.md](https://github.com/JDM170/ReVanced_Builder/blob/main/ReleaseNotesTemplate.md) template.
## By using CI/CD
### By using CI/CD
```powershell
git clone https://github.com/JDM170/ReVanced_Builder
```
Trigger the [`Build`](https://github.com/JDM170/ReVanced_Builder/actions/workflows/Build.yml) Action manually to create [release page](https://github.com/JDM170/ReVanced_Builder/releases/latest) with configured release notes showing dependencies used for building.
Trigger the [`Build`](https://github.com/JDM170/ReVanced_Builder/actions/workflows/Build.yml) action manually to create [release page](https://github.com/JDM170/ReVanced_Builder/releases/latest) with configured release notes showing dependencies used for building.
![image](https://user-images.githubusercontent.com/10544660/187949763-82fd7a07-8e4e-4527-b631-11920077141f.png)
@@ -39,7 +36,11 @@ Trigger the [`Build`](https://github.com/JDM170/ReVanced_Builder/actions/workflo
## Links
* [APKMirror](https://apkmirror.com)
* [ReVanced CLI](https://github.com/revanced/revanced-cli)
* [ReVanced Patches](https://github.com/revanced/revanced-patches)
* [ReVanced Manager](https://github.com/revanced/revanced-manager)
* [Telegram](https://t.me/sophia_chat)
* [ReVanced Integrations](https://github.com/revanced/revanced-integrations)
* [Vanced MicroG](https://github.com/TeamVanced/VancedMicroG)
* [AngleSharp](https://github.com/AngleSharp/AngleSharp)
* [Zulu JDK](https://github.com/ScoopInstaller/Java)
* [Sophia Telegram chat](https://t.me/sophia_chat)

View File

@@ -4,13 +4,15 @@ $Parameters = @{
UseBasicParsing = $true
Verbose = $true
}
$MicroGTag = (Invoke-RestMethod @Parameters).tag_name
$apiResult = Invoke-RestMethod @Parameters
$URL = $apiResult.assets.browser_download_url
$TAG = $apiResult.tag_name
$Parameters = @{
Uri = "https://github.com/TeamVanced/VancedMicroG/releases/download/$MicroGTag/microg.apk"
Outfile = "Temp\microg.apk"
UseBasicParsing = $true
Verbose = $true
Uri = $URL
Outfile = "Temp\microg.apk"
UseBasicParsing = $true
Verbose = $true
}
Invoke-RestMethod @Parameters
echo "MicroGTag=$MicroGTag" >> $env:GITHUB_ENV
echo "MicroGTag=$TAG" >> $env:GITHUB_ENV

View File

@@ -4,14 +4,15 @@ $Parameters = @{
UseBasicParsing = $true
Verbose = $true
}
$CLIvtag = (Invoke-RestMethod @Parameters).tag_name
$CLItag = $CLIvtag.replace("v", "")
$apiResult = Invoke-RestMethod @Parameters
$URL = $apiResult.assets.browser_download_url
$TAG = $apiResult.tag_name
$Parameters = @{
Uri = "https://github.com/revanced/revanced-cli/releases/download/$CLIvtag/revanced-cli-$CLItag-all.jar"
Uri = $URL
Outfile = "Temp\revanced-cli.jar"
UseBasicParsing = $true
Verbose = $true
}
Invoke-RestMethod @Parameters
echo "CLIvtag=$CLIvtag" >> $env:GITHUB_ENV
echo "CLIvtag=$TAG" >> $env:GITHUB_ENV

View File

@@ -5,14 +5,14 @@ $Parameters = @{
Verbose = $true
}
$apiResult = Invoke-RestMethod @Parameters
$IntegrationsTag = $apiResult.tag_name
$URL = $apiResult.assets.browser_download_url
$TAG = $apiResult.tag_name
$Parameters = @{
# Uri = "https://github.com/revanced/revanced-integrations/releases/download/$Tag/revanced-integrations-$Tag2.apk"
Uri = $apiResult.assets.browser_download_url
Uri = $URL
Outfile = "Temp\revanced-integrations.apk"
UseBasicParsing = $true
Verbose = $true
}
Invoke-RestMethod @Parameters
echo "IntegrationsTag=$IntegrationsTag" >> $env:GITHUB_ENV
echo "IntegrationsTag=$TAG" >> $env:GITHUB_ENV

View File

@@ -4,14 +4,15 @@ $Parameters = @{
UseBasicParsing = $true
Verbose = $true
}
$Patchesvtag = (Invoke-RestMethod @Parameters).tag_name
$Patchestag = $Patchesvtag.replace("v", "")
$apiResult = Invoke-RestMethod @Parameters
$URL = ($apiResult.assets | Where-Object -FilterScript {$_.content_type -eq "application/java-archive"}).browser_download_url
$TAG = $apiResult.tag_name
$Parameters = @{
Uri = "https://github.com/revanced/revanced-patches/releases/download/$Patchesvtag/revanced-patches-$Patchestag.jar"
Uri = $URL
Outfile = "Temp\revanced-patches.jar"
UseBasicParsing = $true
Verbose = $true
}
Invoke-RestMethod @Parameters
echo "Patchesvtag=$Patchesvtag" >> $env:GITHUB_ENV
echo "Patchesvtag=$TAG" >> $env:GITHUB_ENV

View File

@@ -13,24 +13,43 @@ $LatestSupportedYT = $LatestSupported.replace(".", "-")
$AngleSharpAssemblyPath = (Get-ChildItem -Path (Split-Path -Path (Get-Package -Name AngleSharp).Source) -Filter "*.dll" -Recurse | Where-Object -FilterScript {$_ -match "standard"} | Select-Object -Last 1).FullName
Add-Type -Path $AngleSharpAssemblyPath
# Get unique key to generate direct link
# https://www.apkmirror.com/apk/google-inc/youtube/
# Create parser object
$angleparser = New-Object -TypeName AngleSharp.Html.Parser.HtmlParser
# Try to find correct NON-Bundle version
$Parameters = @{
Uri = "https://www.apkmirror.com/apk/google-inc/youtube/youtube-$($LatestSupportedYT)-release/youtube-$($LatestSupportedYT)-2-android-apk-download/"
Uri = "https://www.apkmirror.com/apk/google-inc/youtube/youtube-$($LatestSupportedYT)-release/youtube-$($LatestSupportedYT)-android-apk-download/"
UseBasicParsing = $false # Disabled
Verbose = $true
}
$URLParse = (Invoke-Webrequest @Parameters).Links.outerHTML | Where-Object -FilterScript {$_ -like "*YouTube $($LatestSupported) (nodpi)*"}
# Check if variable contains a data
if ($URLParse)
{
$URL = "https://www.apkmirror.com/apk/google-inc/youtube/youtube-$($LatestSupportedYT)-release/youtube-$($LatestSupportedYT)-android-apk-download/"
}
else
{
$URL = "https://www.apkmirror.com/apk/google-inc/youtube/youtube-$($LatestSupportedYT)-release/youtube-$($LatestSupportedYT)-2-android-apk-download/"
}
# Get unique key to generate direct link
$Parameters = @{
Uri = $URL
UseBasicParsing = $false # Disabled
Verbose = $true
}
$Request = Invoke-Webrequest @Parameters
$Parsed = (New-Object -TypeName AngleSharp.Html.Parser.HtmlParser).ParseDocument($Request.Content)
$Parsed = $angleparser.ParseDocument($Request.Content)
$Key = $Parsed.All | Where-Object -FilterScript {$_.ClassName -match "accent_bg btn btn-flat downloadButton"} | ForEach-Object -Process {$_.Search}
$Parameters = @{
Uri = "https://www.apkmirror.com/apk/google-inc/youtube/youtube-$($LatestSupportedYT)-release/youtube-$($LatestSupportedYT)-2-android-apk-download/download/$($Key)"
Uri = "$($URL)/download/$($Key)"
UseBasicParsing = $true
Verbose = $true
}
$Request = Invoke-Webrequest @Parameters
$Parsed = (New-Object -TypeName AngleSharp.Html.Parser.HtmlParser).ParseDocument($Request.Content)
$Parsed = $angleparser.ParseDocument($Request.Content)
$Key = ($Parsed.All | Where-Object -FilterScript { $_.InnerHtml -eq "here" }).Search
# Finally, get the real link
@@ -42,4 +61,4 @@ $Parameters = @{
}
Invoke-Webrequest @Parameters
echo "LatestSupportedYT=$LatestSupportedYT" >> $env:GITHUB_ENV
echo "LatestSupportedYT=$LatestSupported" >> $env:GITHUB_ENV

View File

@@ -4,11 +4,9 @@ $Parameters = @{
UseBasicParsing = $true
Verbose = $true
}
# $URL = (Invoke-RestMethod @Parameters).architecture."64bit".url
# $ZuluTag = (Invoke-RestMethod @Parameters).version
$result = Invoke-RestMethod @Parameters
$URL = $result.architecture."64bit".url
$ZuluTag = $result.version
$apiResult = Invoke-RestMethod @Parameters
$URL = $apiResult.architecture."64bit".url
$TAG = $apiResult.version
$Parameters = @{
Uri = $URL
Outfile = "Temp\jdk_windows-x64_bin.zip"
@@ -17,7 +15,7 @@ $Parameters = @{
}
Invoke-RestMethod @Parameters
echo "ZuluTag=$ZuluTag" >> $env:GITHUB_ENV
echo "ZuluTag=$TAG" >> $env:GITHUB_ENV
Write-Verbose -Message "Expanding Zulu JDK" -Verbose