github.com/go-chef/chef@v0.30.1/testapi/policygroup.go (about)

     1  // Test the go-chef/chef chef server api /policy_groups endpoints against a live server
     2  package testapi
     3  
     4  import (
     5  	"fmt"
     6  	"os"
     7  )
     8  
     9  // policy exercise the chef server api
    10  func PolicyGroup() {
    11  	client := Client(nil)
    12  
    13  	// List policy_groups
    14  	policygroupList, err := client.PolicyGroups.List()
    15  	if err != nil {
    16  		fmt.Fprintln(os.Stderr, "Issue printing the existing policy_groups:", err)
    17  	}
    18  	fmt.Printf("List policy_groups %+v\n", policygroupList)
    19  
    20  	// Get specific policy_group
    21  	policygroupOut, err := client.PolicyGroups.Get("testgroup")
    22  	if err != nil {
    23  		fmt.Fprintln(os.Stderr, "Issue getting policy_group testgroup:", err)
    24  	}
    25  	fmt.Printf("Get testgroup %+v\n", policygroupOut)
    26  
    27  	// Get policy from policy group
    28  	policyOut, err := client.PolicyGroups.GetPolicy("testgroup", "testsamp")
    29  	if err != nil {
    30  		fmt.Fprintln(os.Stderr, "Issue getting policy testsamp:", err)
    31  	}
    32  	fmt.Printf("Get testgroup::testsamp %+v\n", policyOut)
    33  
    34  	// Delete policy from policy group
    35  	policyDel, err := client.PolicyGroups.DeletePolicy("testgroup", "testsamp")
    36  	if err != nil {
    37  		fmt.Fprintln(os.Stderr, "Issue deleting policy testsamp:", err)
    38  	}
    39  	fmt.Printf("Delete testgroup::testsamp %+v\n", policyDel)
    40  
    41  	// Delete specific policy_group
    42  	policygroupDel, err := client.PolicyGroups.Delete("testgroup")
    43  	if err != nil {
    44  		fmt.Fprintln(os.Stderr, "Issue deleting policy_group testgroup:", err)
    45  	}
    46  	fmt.Printf("Delete testgroup %+v\n", policygroupDel)
    47  
    48  }