blob: 1592d65312f679af49e5cc691c2fcdd0178006e8 [file] [log] [blame]
<#
.SYNOPSIS
This script helps to configure its environment variables based on the component selected.
.EXAMPLE
.\tools\Run.ps1 testing -s functions -c install_maven -y
.EXAMPLE
.\tools\Run.ps1 all_in_one
.EXAMPLE
.\tools\Run.ps1 aai
.PARAMETER s
Test suite to use in testing mode.
.PARAMETER c
Test case to use in testing mode.
.PARAMETER y
Skips warning prompt.
.PARAMETER g
Skips creation or retrieve image process.
.PARAMETER i
Skips installation service process.
.LINK
https://wiki.onap.org/display/DW/ONAP+on+Vagrant
#>
Param(
[ValidateSet("all_in_one","dns", "mr", "sdc", "aai", "mso", "robot", "vid", "sdnc", "portal", "dcae", "policy", "appc", "vfc", "multicloud", "ccsdk", "vnfsdk", "vvp", "openstack", "msb", "testing")]
[Parameter(Mandatory=$True,Position=0)]
[ValidateNotNullOrEmpty()]
[String]
$Command
,
[Parameter(Mandatory=$False,HelpMessage="Test suite to use in testing mode.")]
[Alias("suite")]
[String]
$s = "*"
,
[Parameter(Mandatory=$False,HelpMessage="Test case to sue in testing mode.")]
[Alias("case")]
[String]
$c = "*"
,
[Parameter(Mandatory=$False,HelpMessage="Skips warning prompt.")]
[AllowNull()]
[Switch]
$y = $True
,
[Parameter(Mandatory=$False,HelpMessage="Skips creation or retrieve image process.")]
[AllowNull()]
[Switch]
$skip_get_images = $True
,
[Parameter(Mandatory=$False,HelpMessage="Skips warning prompt.")]
[AllowNull()]
[Switch]
$skip_install = $True
)
if ( -Not "testing".Equals($Command) )
{
if($PsBoundParameters.ContainsKey('s'))
{
Write-Host "Test suite should only be specified in testing mode."
Write-Host ".\tools\Run.ps1 -?"
exit 1
}
if($PsBoundParameters.ContainsKey('c'))
{
Write-Host "Test case should only be specified in testing mode."
Write-Host ".\tools\Run.ps1 -?"
exit 1
}
}
$env:SKIP_GET_IMAGES=$skip_get_images
$env:SKIP_INSTALL=$skip_install
switch ($Command)
{
"all_in_one" { $env:DEPLOY_MODE="all-in-one" }
{ @("dns", "mr", "sdc", "aai", "mso", "robot", "vid", "sdnc", "portal", "dcae", "policy", "appc", "vfc", "multicloud", "ccsdk", "vnfsdk", "vvp", "openstack", "msb") -contains $_ } { $env:DEPLOY_MODE="individual" }
"testing"
{
$env:DEPLOY_MODE="testing"
If(-Not $y)
{
Write-Host "Warning: This test script will delete the contents of ../opt/ and ~/.m2."
$yn = Read-Host "Would you like to continue? [y]es/[n]o: "
switch ($yn)
{
{ @("n", "N") -contains $_ }
{
Write-Host "Exiting."
exit 0
}
}
}
$env:TEST_SUITE=$s
$env:TEST_CASE=$c
&cmd.exe /c rd /s /q .\opt\
&cmd.exe /c rd /s /q $HOME\.m2\
}
default
{
Write-Output $"Usage: $0 {all_in_one|dns|mr|sdc|aai|mso|robot|vid|sdnc|portal|dcae|policy|appc|vfc|multicloud|ccsdk|vnfsdk|vvp|testing}"
exit 1
}
}
vagrant destroy -f $Command
vagrant up $Command