use of io.fabric8.kubernetes.api.model.rbac.Role in project kubernetes-client by fabric8io.
the class RoleBindingIT method update.
@Test
public void update() {
RoleBinding roleBinding = client.rbac().roleBindings().inNamespace(session.getNamespace()).withName("rb-update").edit(r -> new RoleBindingBuilder(r).editSubject(0).withName("jane-new").endSubject().build());
assertNotNull(roleBinding);
assertEquals("RoleBinding", roleBinding.getKind());
assertNotNull(roleBinding.getMetadata());
assertEquals("rb-update", roleBinding.getMetadata().getName());
assertNotNull(roleBinding.getSubjects());
assertEquals(1, roleBinding.getSubjects().size());
assertEquals("rbac.authorization.k8s.io", roleBinding.getSubjects().get(0).getApiGroup());
assertEquals("User", roleBinding.getSubjects().get(0).getKind());
assertEquals("jane-new", roleBinding.getSubjects().get(0).getName());
assertEquals("default", roleBinding.getSubjects().get(0).getNamespace());
assertNotNull(roleBinding.getRoleRef());
assertEquals("Role", roleBinding.getRoleRef().getKind());
assertEquals("job-reader", roleBinding.getRoleRef().getName());
assertEquals("rbac.authorization.k8s.io", roleBinding.getRoleRef().getApiGroup());
}
use of io.fabric8.kubernetes.api.model.rbac.Role in project kubernetes-client by fabric8io.
the class RoleIT method delete.
@Test
public void delete() {
int countBeforeDeletion = client.rbac().roles().inNamespace(currentNamespace).list().getItems().size();
boolean deleted = client.rbac().roles().inNamespace(currentNamespace).withName("role-delete").delete();
assertTrue(deleted);
DeleteEntity<Role> deleteEntity = new DeleteEntity<>(Role.class, client, "role-delete", currentNamespace);
await().atMost(30, TimeUnit.SECONDS).until(deleteEntity);
RoleList roleList = client.rbac().roles().inNamespace(currentNamespace).list();
assertEquals(countBeforeDeletion - 1, roleList.getItems().size());
}
use of io.fabric8.kubernetes.api.model.rbac.Role in project kubernetes-client by fabric8io.
the class RoleIT method get.
@Test
public void get() {
Role role = client.rbac().roles().inNamespace(currentNamespace).withName("role-get").get();
assertNotNull(role);
assertEquals("Role", role.getKind());
assertNotNull(role.getMetadata());
assertEquals("role-get", role.getMetadata().getName());
assertNotNull(role.getRules());
assertEquals(1, role.getRules().size());
assertNotNull(role.getRules().get(0).getApiGroups());
assertEquals(1, role.getRules().get(0).getApiGroups().size());
assertEquals("batch", role.getRules().get(0).getApiGroups().get(0));
assertNotNull(role.getRules().get(0).getResourceNames());
assertEquals(1, role.getRules().get(0).getResourceNames().size());
assertEquals("my-job", role.getRules().get(0).getResourceNames().get(0));
assertNotNull(role.getRules().get(0).getResources());
assertEquals(1, role.getRules().get(0).getResources().size());
assertEquals("jobs", role.getRules().get(0).getResources().get(0));
assertNotNull(role.getRules().get(0).getVerbs());
assertEquals(3, role.getRules().get(0).getVerbs().size());
assertEquals("get", role.getRules().get(0).getVerbs().get(0));
assertEquals("watch", role.getRules().get(0).getVerbs().get(1));
assertEquals("list", role.getRules().get(0).getVerbs().get(2));
}
use of io.fabric8.kubernetes.api.model.rbac.Role in project kubernetes-client by fabric8io.
the class RoleIT method update.
@Test
public void update() {
Role role = client.rbac().roles().inNamespace(currentNamespace).withName("role-update").edit(r -> new RoleBuilder(r).editRule(0).addToApiGroups(1, "extensions").endRule().build());
assertNotNull(role);
assertEquals("Role", role.getKind());
assertNotNull(role.getMetadata());
assertEquals("role-update", role.getMetadata().getName());
assertNotNull(role.getRules());
assertEquals(1, role.getRules().size());
assertNotNull(role.getRules().get(0).getApiGroups());
assertEquals(2, role.getRules().get(0).getApiGroups().size());
assertEquals("batch", role.getRules().get(0).getApiGroups().get(0));
assertEquals("extensions", role.getRules().get(0).getApiGroups().get(1));
assertNotNull(role.getRules().get(0).getResourceNames());
assertEquals(1, role.getRules().get(0).getResourceNames().size());
assertEquals("my-job", role.getRules().get(0).getResourceNames().get(0));
assertNotNull(role.getRules().get(0).getResources());
assertEquals(1, role.getRules().get(0).getResources().size());
assertEquals("jobs", role.getRules().get(0).getResources().get(0));
assertNotNull(role.getRules().get(0).getVerbs());
assertEquals(3, role.getRules().get(0).getVerbs().size());
assertEquals("get", role.getRules().get(0).getVerbs().get(0));
assertEquals("watch", role.getRules().get(0).getVerbs().get(1));
assertEquals("list", role.getRules().get(0).getVerbs().get(2));
}
use of io.fabric8.kubernetes.api.model.rbac.Role in project kubernetes-client by fabric8io.
the class NetworkPolicyCrudTest method crudTest.
@Test
void crudTest() {
NetworkPolicy networkPolicy = new NetworkPolicyBuilder().withNewMetadata().withName("networkpolicy").addToLabels("foo", "bar").endMetadata().withNewSpec().withNewPodSelector().addToMatchLabels("role", "db").endPodSelector().addToIngress(0, new NetworkPolicyIngressRuleBuilder().addToFrom(0, new NetworkPolicyPeerBuilder().withNewPodSelector().addToMatchLabels("role", "frontend").endPodSelector().build()).addToFrom(1, new NetworkPolicyPeerBuilder().withNewNamespaceSelector().addToMatchLabels("project", "myproject").endNamespaceSelector().build()).addToPorts(0, new NetworkPolicyPortBuilder().withPort(new IntOrString(6379)).withProtocol("TCP").build()).build()).endSpec().build();
// test of Creation
networkPolicy = client.network().v1().networkPolicies().create(networkPolicy);
assertNotNull(networkPolicy);
assertEquals("networkpolicy", networkPolicy.getMetadata().getName());
assertEquals("db", networkPolicy.getSpec().getPodSelector().getMatchLabels().get("role"));
assertEquals("myproject", networkPolicy.getSpec().getIngress().get(0).getFrom().get(1).getNamespaceSelector().getMatchLabels().get("project"));
assertEquals("frontend", networkPolicy.getSpec().getIngress().get(0).getFrom().get(0).getPodSelector().getMatchLabels().get("role"));
assertEquals("TCP", networkPolicy.getSpec().getIngress().get(0).getPorts().get(0).getProtocol());
assertEquals(6379, networkPolicy.getSpec().getIngress().get(0).getPorts().get(0).getPort().getIntVal().intValue());
// test of list
NetworkPolicyList networkPolicyList = client.network().networkPolicies().withLabels(Collections.singletonMap("foo", "bar")).list();
assertNotNull(networkPolicyList);
assertEquals(1, networkPolicyList.getItems().size());
assertEquals("networkpolicy", networkPolicyList.getItems().get(0).getMetadata().getName());
assertEquals("db", networkPolicyList.getItems().get(0).getSpec().getPodSelector().getMatchLabels().get("role"));
assertEquals("myproject", networkPolicyList.getItems().get(0).getSpec().getIngress().get(0).getFrom().get(1).getNamespaceSelector().getMatchLabels().get("project"));
assertEquals("frontend", networkPolicyList.getItems().get(0).getSpec().getIngress().get(0).getFrom().get(0).getPodSelector().getMatchLabels().get("role"));
assertEquals("TCP", networkPolicyList.getItems().get(0).getSpec().getIngress().get(0).getPorts().get(0).getProtocol());
assertEquals(6379, networkPolicyList.getItems().get(0).getSpec().getIngress().get(0).getPorts().get(0).getPort().getIntVal().intValue());
logger.info(networkPolicyList.toString());
// test of updation
networkPolicy = client.network().networkPolicies().withName("networkpolicy").edit(n -> new NetworkPolicyBuilder(n).editSpec().editIngress(0).editFirstPort().withPort(new IntOrString(6679)).endPort().endIngress().endSpec().build());
logger.info("Updated PodSecurityPolicy : " + networkPolicy.toString());
assertNotNull(networkPolicy);
assertEquals("networkpolicy", networkPolicy.getMetadata().getName());
assertEquals("db", networkPolicy.getSpec().getPodSelector().getMatchLabels().get("role"));
assertEquals("myproject", networkPolicy.getSpec().getIngress().get(0).getFrom().get(1).getNamespaceSelector().getMatchLabels().get("project"));
assertEquals("frontend", networkPolicy.getSpec().getIngress().get(0).getFrom().get(0).getPodSelector().getMatchLabels().get("role"));
assertEquals("TCP", networkPolicy.getSpec().getIngress().get(0).getPorts().get(0).getProtocol());
assertEquals(6679, networkPolicy.getSpec().getIngress().get(0).getPorts().get(0).getPort().getIntVal().intValue());
// test of deletion
boolean deleted = client.network().networkPolicies().delete();
assertTrue(deleted);
networkPolicyList = client.network().networkPolicies().list();
assertEquals(0, networkPolicyList.getItems().size());
}
Aggregations