ALOps.BCOpenAPI.psm1

Get-Item $PSScriptRoot | Get-ChildItem -Recurse -Filter '*.ps1' |  
                        Where-Object FullName -NotLike '*Tests.ps1' |  
                        Where-Object FullName -NotLike '*_config.ps1' | 
                        Where-Object FullName -NotLike '*_dependencies.ps1' | 
                        Where-Object Name -NotLike '_*.ps1' | 
                        Sort-Object Name | ForEach-Object {
    Write-Verbose "Loading $($_.Name)"
    . $_.fullname
}

if (Test-Path $PSScriptRoot\_config.ps1) {
    . $PSScriptRoot\_config.ps1
}

Export-ModuleMember -Function * -Variable *

if (Test-Path $PSScriptRoot\_dependencies.ps1) {
    . $PSScriptRoot\_dependencies.ps1
}

Write-Host "Use [Install-ALOpsBCOpenAPI] to install [ALOps BC OpenAPI] service with default." -ForegroundColor Green
Write-Host ""
Write-Host "To streamline the ALOpsBCOpenAPI Service with an existing Reverse-Proxy, use the following rules:"
Write-Host "Each request matching a rule bellow should be forwarded to the ALOpsBCOpenAPI endpoint."
Write-Host ""
Write-Host " acl var(txn.txnpath) -m reg -i ^\/swagger\/ # /swagger/..."
Write-Host " acl var(txn.txnpath) -m reg -i ^\/[^\.]*\/api\/(.*)\/swagger$ # /<serverinstance>/api/publisher/group/version/swagger"
Write-Host " acl var(txn.txnpath) -m reg -i ^\/[^\.]*\/api\/(.*)\/openapi$ # /<serverinstance>/api/publisher/group/version/openapi"
Write-Host " acl var(txn.txnpath) -m reg -i ^\/[^\.]*\/api\/discover$ # /<serverinstance>/api/discover"
Write-Host " acl var(txn.txnpath) -m reg -i ^\/[^\.]*\/api$ # /<serverinstance>/api"
Write-Host " acl var(txn.txnpath) -m reg -i ^\/[^\.]*\/api\/$ # /<serverinstance>/api/"
Write-Host ""