diff --git a/README.md b/README.md index e1ef851..5788bbe 100644 --- a/README.md +++ b/README.md @@ -15,15 +15,13 @@ This module uses PowerShell, which is pre-installed on Windows. If you're not on ``` 1. Run `Import-TeamsUsers -File `, where `` is the path to the CSV file. You can add the `-Create` flag if you want to create a new team first. -
- If you can't run non-signed scripts - If your policy requires scripts to be digitally signed, run +### If you can't run non-signed scripts +If your policy requires scripts to be digitally signed, run ```powershell Set-ExecutionPolicy Bypass -Scope Process ``` then try running the command again. You may require administrative rights to change the Execution Policy. -
# Need help? If you need assistance, please try the following: diff --git a/TeamsUserEnroller.psd1 b/TeamsUserEnroller.psd1 index ee3e255..e9a8e10 100644 --- a/TeamsUserEnroller.psd1 +++ b/TeamsUserEnroller.psd1 @@ -12,7 +12,7 @@ # RootModule = '' # Version number of this module. -ModuleVersion = '2.2.0' +ModuleVersion = '2.2.1' # Supported PSEditions # CompatiblePSEditions = @() diff --git a/TeamsUserEnroller.psm1 b/TeamsUserEnroller.psm1 index 852fa6e..be04703 100644 --- a/TeamsUserEnroller.psm1 +++ b/TeamsUserEnroller.psm1 @@ -39,6 +39,39 @@ Function Import-TeamsUsers { Begin { $ErrorActionPreference = 'Stop' + + ##### CHECK FOR NEW VERSION ##### + Try { + # Get information from GitHub Releases + $releases = Invoke-RestMethod -Method Get -Uri "https://api.github.com/repos/luketainton/TeamsUserEnroller/releases"; + $rel = $releases[0]; + $latest_version = $rel.tag_name -replace 'v', ''; + $latest_version_changes = $rel.body; + + # Get currently installed version + $current_version = (Get-Module TeamsUserEnroller | Select-Object Version).Version; + + # Compare versions and alert user if newer version available + if ($current_version -lt $latest_version) { + Write-Host -ForegroundColor Yellow "A new version of TeamsUserEnroller has been released!"; + Write-Host -ForegroundColor Yellow "Latest version: $latest_version"; + Write-Host -ForegroundColor Yellow "Installed version: $current_version"; + Write-Host -ForegroundColor Yellow "`n$latest_version_changes"; + $Consent = Read-Host -Prompt "`nWould you like to update now? [y/N]" + If ($Consent -eq "y" -Or $Consent -eq "Y") { + Update-Module -Name TeamsUserEnroller -RequiredVersion "2.2.0"; + $after_update_ver = (Get-Module TeamsUserEnroller | Select-Object Version).Version; + if ($after_update_ver -eq $latest_version) { + Write-Host -ForegroundColor Green "Update completed."; + } Else { + Write-Host -ForegroundColor Red "Update failed. Please update manually."; + } + } + } + } Catch { + Write-Host -ForegroundColor Red "An error occurred while checking for updates. Continuing."; + } + ##### IMPORT CSV FILE ##### Try { $ImportCmd = "Import-CSV $File"