fix example and e2e test
This commit is contained in:
11
test/e2e/discard_writer.go
Normal file
11
test/e2e/discard_writer.go
Normal file
@ -0,0 +1,11 @@
|
||||
package e2e
|
||||
|
||||
import "io"
|
||||
|
||||
var discardWriter io.Writer = discard{}
|
||||
|
||||
type discard struct{}
|
||||
|
||||
func (d discard) Write(p []byte) (n int, err error) {
|
||||
return len(p), nil
|
||||
}
|
@ -3,6 +3,7 @@ package e2e
|
||||
import (
|
||||
"fmt"
|
||||
"os"
|
||||
"os/exec"
|
||||
"path/filepath"
|
||||
"strings"
|
||||
"testing"
|
||||
@ -17,7 +18,8 @@ import (
|
||||
)
|
||||
|
||||
var speicalTests = map[string]func(*testing.T){
|
||||
"quickstart/201-vmss-packer-jumpbox": test201VmssPackerJumpbox,
|
||||
"quickstart/201-vmss-packer-jumpbox": test201VmssPackerJumpbox,
|
||||
"quickstart/101-virtual-network-manager-create-management-group-scope": test101VirtualNetworkManagerCreateManagementGroupScope,
|
||||
}
|
||||
|
||||
func Test_Quickstarts(t *testing.T) {
|
||||
@ -141,6 +143,36 @@ func test201VmssPackerJumpbox(t *testing.T) {
|
||||
}, nil)
|
||||
}
|
||||
|
||||
func test101VirtualNetworkManagerCreateManagementGroupScope(t *testing.T) {
|
||||
rootPath := filepath.Join("..", "..")
|
||||
f := filepath.Join("quickstart", "101-virtual-network-manager-create-management-group-scope")
|
||||
tenantId := os.Getenv("ARM_TENANT_ID")
|
||||
clientId := os.Getenv("ARM_CLIENT_ID")
|
||||
clientSecret := os.Getenv("ARM_CLIENT_SECRET")
|
||||
msiId := os.Getenv("MSI_ID")
|
||||
var cmd *exec.Cmd
|
||||
if tenantId != "" && clientId != "" && clientSecret != "" {
|
||||
cmd = exec.Command("az", "login", "--service-principal", "-u", clientId, "-p", clientSecret, "--tenant", tenantId)
|
||||
err := cmd.Run()
|
||||
require.NoError(t, err, "cannot login via service principal: %+v", err)
|
||||
} else if msiId != "" {
|
||||
cmd = exec.Command("az", "login", "--identity", "--username", msiId)
|
||||
err := cmd.Run()
|
||||
require.NoError(t, err, "cannot login via identity: %+v", err)
|
||||
} else {
|
||||
t.Fatalf("To test `quickstart/101-virtual-network-manager-create-management-group-scope` you must set `ARM_TENANT_ID`, `ARM_CLIENT_ID`, `ARM_CLIENT_SECRET`, or set `MSI_ID` so we can run `az login`.")
|
||||
}
|
||||
cmd.Stdout = discardWriter
|
||||
defer func() {
|
||||
cmd := exec.Command("az", "logout")
|
||||
cmd.Stdout = discardWriter
|
||||
_ = cmd.Run()
|
||||
}()
|
||||
helper.RunE2ETest(t, rootPath, f, terraform.Options{
|
||||
Upgrade: true,
|
||||
}, nil)
|
||||
}
|
||||
|
||||
func removeDuplicates(s []string) []string {
|
||||
m := make(map[string]struct{})
|
||||
result := []string{}
|
||||
|
Reference in New Issue
Block a user