Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion AzDevOps/AzDevOps.psd1
Original file line numberDiff line numberDiff line change
Expand Up@@ -70,7 +70,7 @@

# Functions to export from this module, for best performance, do not use wildcards and do not delete the entry, use an empty array if there are no functions to export.
# FunctionsToExport = @('Connect-Organization','Invoke-RestMethod','Get-Build','Get-BuildLog','Remove-Build','Start-Build','Get-BuildDefinition','Get-BuildFolder','New-BuildFolder','Remove-BuildFolder','Get-Process','Get-Project','Get-ProjectProperty','New-Project','Remove-Project','Update-Project','Get-Team','Get-TeamMember','New-Team','Remove-Team','Update-Team','Get-Operation')
FunctionsToExport = @('Connect-Organization','Invoke-Endpoint','Get-Build','Get-BuildLog','Remove-Build','Start-Build','Get-BuildDefinition','Get-BuildFolder','New-BuildFolder','Remove-BuildFolder','Get-Process','Get-Project','Get-ProjectProperty','New-Project','Remove-Project','Update-Project','Get-Team','Get-TeamMember','New-Team','Remove-Team','Update-Team','Get-Feed','Get-Repository','New-Repository','Remove-Repository','Get-Operation')
FunctionsToExport = @('Connect-Organization','Invoke-Endpoint','Get-Build','Get-BuildLog','Remove-Build','Start-Build','Get-BuildDefinition','Get-BuildFolder','New-BuildFolder','Remove-BuildFolder','Get-Process','Get-Project','Get-ProjectProperty','New-Project','Remove-Project','Update-Project','Get-Team','Get-TeamMember','New-Team','Remove-Team','Update-Team','Get-Feed','Get-FeedView','Get-Repository','New-Repository','Remove-Repository','Get-Operation')

# Cmdlets to export from this module, for best performance, do not use wildcards and do not delete the entry, use an empty array if there are no cmdlets to export.
CmdletsToExport = @()
Expand Down
2 changes: 1 addition & 1 deletion AzDevOps/feed/feed.psd1
Original file line numberDiff line numberDiff line change
Expand Up@@ -69,7 +69,7 @@ Description = 'A collection of functions to work with Azure Devops Feeds'
# NestedModules = @()

# Functions to export from this module, for best performance, do not use wildcards and do not delete the entry, use an empty array if there are no functions to export.
FunctionsToExport = @('Get-Feed')
FunctionsToExport = @('Get-Feed','Get-FeedView')

# Cmdlets to export from this module, for best performance, do not use wildcards and do not delete the entry, use an empty array if there are no cmdlets to export.
CmdletsToExport = '*'
Expand Down
2 changes: 1 addition & 1 deletion AzDevOps/feed/feeds/Public/GetFeed.ps1
Original file line numberDiff line numberDiff line change
Expand Up@@ -35,7 +35,7 @@ function Get-Feed
$Uri = $Global:azDevOpsFeed + "$($thisProject.id)/_apis/packaging/feeds?api-version=$($ApiVersion)";
if ($Name)
{
$Feed = Get-AdoFeed -Project $thisProject.Name |Where-Object -Property Name -eq $Name -Verbose:$VerbosePreference;
$Feed = Get-AdoFeed -Project $thisProject.Name |Where-Object -Property Name -eq $Name -Verbose:$VerbosePreference;
Write-Verbose " FeedId : $($Feed.id)";
$Uri = $Global:azDevOpsFeed + "$($thisProject.id)/_apis/packaging/feeds/$($Feed.id)?api-version=$($ApiVersion)";
return (Invoke-AdoEndpoint -Uri ([System.Uri]::new($Uri)) -Method Get -Headers $Global:azDevOpsHeader -Verbose:$VerbosePreference);
Expand Down
92 changes: 92 additions & 0 deletions AzDevOps/feed/feeds/Public/GetFeedView.ps1
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,92 @@
function Get-FeedView
{
[CmdletBinding(
HelpURI = 'https://github.com/Azure-Devops-PowerShell-Module/projects/blob/master/docs/Get-AdoFeedView.md#get-adofeedview',
PositionalBinding = $true)]
[OutputType([Object])]
param (
[Parameter(Mandatory = $false)]
[string]$Project,
[Parameter(Mandatory = $true)]
[string]$Feed,
[Parameter(Mandatory = $false)]
[string]$Name,
[Parameter(Mandatory = $false)]
[ValidateSet('7.1-preview.1')]
[string]$ApiVersion = '7.1-preview.1'
)
begin
{
Write-Verbose "GetFeedView : Begin Processing";
Write-Verbose " Project : $($Project)";
Write-Verbose " Feed : $($Feed)";
Write-Verbose " Name : $($Name)";
Write-Verbose " ApiVersion : $($ApiVersion)";
try
{
$ErrorActionPreference = 'Stop';
$Error.Clear();
#
# Are we connected
#
if ($Global:azDevOpsConnected)
{
if (!([string]::IsNullOrEmpty($Feed)) -and ([string]::IsNullOrEmpty($Project)) -and ([string]::IsNullOrEmpty($Name)))
{
$thisFeed = Get-AdoFeed -Name $Feed -Verbose:$VerbosePreference;
$Uri = $Global:azDevOpsFeed + "_apis/packaging/feeds/$($thisFeed.id)/views?api-version=$($ApiVersion)";
Write-Verbose "GetFeedView : All Org Views";
Write-Verbose " Feed : $($thisFeed.id)";
}
if (!([string]::IsNullOrEmpty($Feed)) -and ([string]::IsNullOrEmpty($Project)) -and !(([string]::IsNullOrEmpty($Name))))
{
$thisFeed = Get-AdoFeed -Name $Feed -Verbose:$VerbosePreference;
$Uri = $Global:azDevOpsFeed + "_apis/packaging/feeds/$($thisFeed.id)/views?api-version=$($ApiVersion)";
$thisView = (Invoke-AdoEndpoint -Uri ([System.Uri]::new($Uri)) -Method Get -Headers $Global:azDevOpsHeader -Verbose:$VerbosePreference).Value |Where-Object -Property Name -eq $Name;
$Uri = $Global:azDevOpsFeed + "_apis/packaging/feeds/$($thisFeed.id)/views/$($thisView.id)?api-version=$($ApiVersion)";
Write-Verbose "GetFeedView : Specific Org View";
Write-Verbose " Feed : $($thisFeed.id)";
Write-Verbose " View : $($thisView.id)";
}
if (!([string]::IsNullOrEmpty($Feed)) -and !(([string]::IsNullOrEmpty($Project))) -and ([string]::IsNullOrEmpty($Name)))
{
$thisProject = Get-AdoProject -Verbose:$VerbosePreference | Where-Object -Property Name -eq $Project;
$thisFeed = Get-AdoFeed -Project $Project -Name $Feed -verbose:$VerbosePreference;
$Uri = $Global:azDevOpsFeed + "$($thisProject.id)/_apis/packaging/feeds/$($thisFeed.id)/views?api-version=$($ApiVersion)";
Write-Verbose "GetFeedView : All Project Views";
Write-Verbose " Project : $($thisProject.id)";
Write-Verbose " Feed : $($thisFeed.id)";
}
if (!([string]::IsNullOrEmpty($Feed)) -and !(([string]::IsNullOrEmpty($Project))) -and !(([string]::IsNullOrEmpty($Name))))
{
$thisProject = Get-AdoProject -Verbose:$VerbosePreference | Where-Object -Property Name -eq $Project;
$thisFeed = Get-AdoFeed -Project $Project -Name $Feed -verbose:$VerbosePreference;
$Uri = $Global:azDevOpsFeed + "$($thisProject.id)/_apis/packaging/feeds/$($thisFeed.id)/views?api-version=$($ApiVersion)";
$thisView = (Invoke-AdoEndpoint -Uri ([System.Uri]::new($Uri)) -Method Get -Headers $Global:azDevOpsHeader -Verbose:$VerbosePreference).Value |Where-Object -Property Name -eq $Name;
$Uri = $Global:azDevOpsFeed + "$($thisProject.id)/_apis/packaging/feeds/$($thisFeed.id)/views/$($Name)?api-version=$($ApiVersion)";
Write-Verbose "GetFeedView : Specific Project View";
Write-Verbose " Project : $($thisProject.id)";
Write-Verbose " Feed : $($thisFeed.id)";
Write-Verbose " View : $($thisView.id)";
}
if ($Uri)
{
Write-Verbose " Uri : $($Uri)";
$Result = (Invoke-AdoEndpoint -Uri ([System.Uri]::new($Uri)) -Method Get -Headers $Global:azDevOpsHeader -Verbose:$VerbosePreference);
if ($Result.Value)
{
return $Result.Value;
}
else
{
return $Result;
}
}
}
}
catch
{
throw $_;
}
}
}