Expect(err).ShouldNot(HaveOccurred()) Eventually(session).Should(gexec.Exit()) result := types.Result{} if err := json.Unmarshal(session.Out.Contents(), &result); err != nil { panic(err) } mac := contVeth.Attrs().HardwareAddr ip := result.IP4.IP.IP.String() result.IP4.IP.IP = result.IP4.IP.IP.To4() // Make sure the IP is respresented as 4 bytes Expect(result.IP4.IP.Mask.String()).Should(Equal("ffffffff")) // datastore things: // Profile is created with correct details profile, err := calicoClient.Profiles().Get(api.ProfileMetadata{Name: "net1"}) Expect(err).ShouldNot(HaveOccurred()) Expect(profile.Metadata.Tags).Should(ConsistOf("net1")) Expect(profile.Spec.EgressRules).Should(Equal([]api.Rule{{Action: "allow"}})) Expect(profile.Spec.IngressRules).Should(Equal([]api.Rule{{Action: "allow", Source: api.EntityRule{Tag: "net1"}}})) // The endpoint is created in etcd endpoints, err := calicoClient.WorkloadEndpoints().List(api.WorkloadEndpointMetadata{}) Expect(err).ShouldNot(HaveOccurred()) Expect(endpoints.Items).Should(HaveLen(1)) Expect(endpoints.Items[0].Metadata).Should(Equal(api.WorkloadEndpointMetadata{ Node: hostname, Name: "eth0", Workload: containerID, Orchestrator: "cni", }))