Skip to content

Instantly share code, notes, and snippets.

@user8446
Created November 1, 2023 15:42
Show Gist options
  • Star 1 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save user8446/934ba6f6e65ec444a1088c41c5534301 to your computer and use it in GitHub Desktop.
Save user8446/934ba6f6e65ec444a1088c41c5534301 to your computer and use it in GitHub Desktop.
cloudflared auto update
#Window title
$host.ui.RawUI.WindowTitle = "Cloudflared auto update"
#Run as admin for start/stop service
#Dependencies
#PowerShellForGitHub module
#BurntToast module
###############################
#Check for updates
$RELEASE_DATE = Get-GitHubRelease -OwnerName cloudflare -RepositoryName cloudflared -Latest | Select-Object -ExpandProperty Created*
$INSTALLED_DATE = Get-Item -Path "C:\Cloudflared\bin\cloudflared.exe" | Select-Object -ExpandProperty LastWriteTime
if ((Get-Date $RELEASE_DATE) -gt (Get-Date $INSTALLED_DATE)) {
Stop-Service -Name "Cloudflared"
#D/L from GitHub using PowerShellForGitHub module
Get-GitHubRelease -OwnerName cloudflare -RepositoryName cloudflared -Latest |
Get-GitHubReleaseAsset |
Where-Object name -In "cloudflared-windows-amd64.exe" |
Get-GitHubReleaseAsset -Path "C:\Cloudflared\bin\cloudflared.exe" -Force
Start-Service -Name "Cloudflared"
New-BurntToastNotification -Text "Cloudflared updated" -Silent
}
exit
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment