Re: Review Request 47933: Add conditional constraints for Kerberos identities to control when they are created

2016-05-27 Thread Robert Levas

---
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/47933/
---

(Updated May 27, 2016, 7:55 p.m.)


Review request for Ambari, Jonathan Hurley, Nate Cole, Oliver Szabo, Sandor 
Magyari, Sumit Mohanty, and Swapan Shridhar.


Changes
---

Fixed merge issue.


Bugs: AMBARI-16437
https://issues.apache.org/jira/browse/AMBARI-16437


Repository: ambari


Description
---

Add conditional constraints for Kerberos identities to control when they are 
created. For example if Kerberos Identity should only be created (and 
distributed) for a component when some other component or service is installed. 

An example of this would be
```
{
  "name": "/HIVE/HIVE_SERVER/hive_server_hive",
  "principal": {
"configuration": "hive-interactive-site/hive.llap.daemon.service.principal"
  },
  "keytab": {
"configuration": "hive-interactive-site/hive.llap.daemon.keytab.file"
  },
  "when" : {
  "contains" : ["services", "HIVE"]
  }
}
```

Note the "`when`" clause. This indicates that this identity should only be 
processed when the set of services contains "HIVE".  An alternative to this 
would be to test the set of components for a certain component.


Diffs (updated)
-

  
ambari-server/src/main/java/org/apache/ambari/server/collections/Predicate.java 
PRE-CREATION 
  
ambari-server/src/main/java/org/apache/ambari/server/collections/PredicateUtils.java
 PRE-CREATION 
  
ambari-server/src/main/java/org/apache/ambari/server/collections/functors/AndPredicate.java
 PRE-CREATION 
  
ambari-server/src/main/java/org/apache/ambari/server/collections/functors/ContainsPredicate.java
 PRE-CREATION 
  
ambari-server/src/main/java/org/apache/ambari/server/collections/functors/ContextTransformer.java
 PRE-CREATION 
  
ambari-server/src/main/java/org/apache/ambari/server/collections/functors/DelegatedMultiplePredicateContainer.java
 PRE-CREATION 
  
ambari-server/src/main/java/org/apache/ambari/server/collections/functors/DelegatedSinglePredicateContainer.java
 PRE-CREATION 
  
ambari-server/src/main/java/org/apache/ambari/server/collections/functors/EqualsPredicate.java
 PRE-CREATION 
  
ambari-server/src/main/java/org/apache/ambari/server/collections/functors/NotPredicate.java
 PRE-CREATION 
  
ambari-server/src/main/java/org/apache/ambari/server/collections/functors/OperationPredicate.java
 PRE-CREATION 
  
ambari-server/src/main/java/org/apache/ambari/server/collections/functors/OrPredicate.java
 PRE-CREATION 
  
ambari-server/src/main/java/org/apache/ambari/server/collections/functors/PredicateClassFactory.java
 PRE-CREATION 
  
ambari-server/src/main/java/org/apache/ambari/server/controller/KerberosHelperImpl.java
 c67c55d 
  
ambari-server/src/main/java/org/apache/ambari/server/serveraction/kerberos/AbstractPrepareKerberosServerAction.java
 0dbd357 
  
ambari-server/src/main/java/org/apache/ambari/server/state/kerberos/AbstractKerberosDescriptorContainer.java
 bb2ed1c 
  
ambari-server/src/main/java/org/apache/ambari/server/state/kerberos/KerberosIdentityDescriptor.java
 d31dd21 
  
ambari-server/src/main/java/org/apache/ambari/server/upgrade/UpgradeCatalog240.java
 9a58b8d 
  
ambari-server/src/test/java/org/apache/ambari/server/collections/PredicateUtilsTest.java
 PRE-CREATION 
  
ambari-server/src/test/java/org/apache/ambari/server/collections/functors/AndPredicateTest.java
 PRE-CREATION 
  
ambari-server/src/test/java/org/apache/ambari/server/collections/functors/ContainsPredicateTest.java
 PRE-CREATION 
  
ambari-server/src/test/java/org/apache/ambari/server/collections/functors/ContextTransformerTest.java
 PRE-CREATION 
  
ambari-server/src/test/java/org/apache/ambari/server/collections/functors/EqualsPredicateTest.java
 PRE-CREATION 
  
ambari-server/src/test/java/org/apache/ambari/server/collections/functors/NotPredicateTest.java
 PRE-CREATION 
  
ambari-server/src/test/java/org/apache/ambari/server/collections/functors/OrPredicateTest.java
 PRE-CREATION 
  
ambari-server/src/test/java/org/apache/ambari/server/controller/KerberosHelperTest.java
 5393fd6 
  
ambari-server/src/test/java/org/apache/ambari/server/state/kerberos/KerberosDescriptorTest.java
 d80d7cc 
  
ambari-server/src/test/java/org/apache/ambari/server/state/kerberos/KerberosIdentityDescriptorTest.java
 0ea7b26 

Diff: https://reviews.apache.org/r/47933/diff/


Testing
---

Manually tested 

# Local test results: PENDING

# Jenkins test results: PENDING


Thanks,

Robert Levas



Re: Review Request 47933: Add conditional constraints for Kerberos identities to control when they are created

2016-05-27 Thread Oliver Szabo

---
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/47933/#review135303
---


Ship it!




Ship It!

- Oliver Szabo


On May 27, 2016, 7:58 p.m., Robert Levas wrote:
> 
> ---
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/47933/
> ---
> 
> (Updated May 27, 2016, 7:58 p.m.)
> 
> 
> Review request for Ambari, Jonathan Hurley, Nate Cole, Oliver Szabo, Sandor 
> Magyari, Sumit Mohanty, and Swapan Shridhar.
> 
> 
> Bugs: AMBARI-16437
> https://issues.apache.org/jira/browse/AMBARI-16437
> 
> 
> Repository: ambari
> 
> 
> Description
> ---
> 
> Add conditional constraints for Kerberos identities to control when they are 
> created. For example if Kerberos Identity should only be created (and 
> distributed) for a component when some other component or service is 
> installed. 
> 
> An example of this would be
> ```
> {
>   "name": "/HIVE/HIVE_SERVER/hive_server_hive",
>   "principal": {
> "configuration": 
> "hive-interactive-site/hive.llap.daemon.service.principal"
>   },
>   "keytab": {
> "configuration": "hive-interactive-site/hive.llap.daemon.keytab.file"
>   },
>   "when" : {
>   "contains" : ["services", "HIVE"]
>   }
> }
> ```
> 
> Note the "`when`" clause. This indicates that this identity should only be 
> processed when the set of services contains "HIVE".  An alternative to this 
> would be to test the set of components for a certain component.
> 
> 
> Diffs
> -
> 
>   
> ambari-server/src/main/java/org/apache/ambari/server/collections/Predicate.java
>  PRE-CREATION 
>   
> ambari-server/src/main/java/org/apache/ambari/server/collections/PredicateUtils.java
>  PRE-CREATION 
>   
> ambari-server/src/main/java/org/apache/ambari/server/collections/functors/AndPredicate.java
>  PRE-CREATION 
>   
> ambari-server/src/main/java/org/apache/ambari/server/collections/functors/ContainsPredicate.java
>  PRE-CREATION 
>   
> ambari-server/src/main/java/org/apache/ambari/server/collections/functors/ContextTransformer.java
>  PRE-CREATION 
>   
> ambari-server/src/main/java/org/apache/ambari/server/collections/functors/DelegatedMultiplePredicateContainer.java
>  PRE-CREATION 
>   
> ambari-server/src/main/java/org/apache/ambari/server/collections/functors/DelegatedSinglePredicateContainer.java
>  PRE-CREATION 
>   
> ambari-server/src/main/java/org/apache/ambari/server/collections/functors/EqualsPredicate.java
>  PRE-CREATION 
>   
> ambari-server/src/main/java/org/apache/ambari/server/collections/functors/NotPredicate.java
>  PRE-CREATION 
>   
> ambari-server/src/main/java/org/apache/ambari/server/collections/functors/OperationPredicate.java
>  PRE-CREATION 
>   
> ambari-server/src/main/java/org/apache/ambari/server/collections/functors/OrPredicate.java
>  PRE-CREATION 
>   
> ambari-server/src/main/java/org/apache/ambari/server/collections/functors/PredicateClassFactory.java
>  PRE-CREATION 
>   
> ambari-server/src/main/java/org/apache/ambari/server/controller/KerberosHelperImpl.java
>  c67c55d 
>   
> ambari-server/src/main/java/org/apache/ambari/server/serveraction/kerberos/AbstractPrepareKerberosServerAction.java
>  0dbd357 
>   
> ambari-server/src/main/java/org/apache/ambari/server/state/kerberos/AbstractKerberosDescriptorContainer.java
>  bb2ed1c 
>   
> ambari-server/src/main/java/org/apache/ambari/server/state/kerberos/KerberosIdentityDescriptor.java
>  d31dd21 
>   
> ambari-server/src/test/java/org/apache/ambari/server/collections/PredicateUtilsTest.java
>  PRE-CREATION 
>   
> ambari-server/src/test/java/org/apache/ambari/server/collections/functors/AndPredicateTest.java
>  PRE-CREATION 
>   
> ambari-server/src/test/java/org/apache/ambari/server/collections/functors/ContainsPredicateTest.java
>  PRE-CREATION 
>   
> ambari-server/src/test/java/org/apache/ambari/server/collections/functors/ContextTransformerTest.java
>  PRE-CREATION 
>   
> ambari-server/src/test/java/org/apache/ambari/server/collections/functors/EqualsPredicateTest.java
>  PRE-CREATION 
>   
> ambari-server/src/test/java/org/apache/ambari/server/collections/functors/NotPredicateTest.java
>  PRE-CREATION 
>   
> ambari-server/src/test/java/org/apache/ambari/server/collections/functors/OrPredicateTest.java
>  PRE-CREATION 
>   
> ambari-server/src/test/java/org/apache/ambari/server/controller/KerberosHelperTest.java
>  5393fd6 
>   
> ambari-server/src/test/java/org/apache/ambari/server/state/kerberos/KerberosDescriptorTest.java
>  d80d7cc 
>   
> ambari-server/src/test/java/org/apache/ambari/server/state/kerberos/KerberosIdentityDescriptorTest.java
>  0ea7b26 
> 
> Diff: https://reviews.apache.org/r/47933/diff/
> 
> 
> Testing
> ---
> 
> Manually tested 
> 
> # Local test results: PENDING
> 
> # 

Re: Review Request 47933: Add conditional constraints for Kerberos identities to control when they are created

2016-05-27 Thread Nate Cole

---
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/47933/#review135300
---


Ship it!




Ship It!

- Nate Cole


On May 27, 2016, 3:58 p.m., Robert Levas wrote:
> 
> ---
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/47933/
> ---
> 
> (Updated May 27, 2016, 3:58 p.m.)
> 
> 
> Review request for Ambari, Jonathan Hurley, Nate Cole, Oliver Szabo, Sandor 
> Magyari, Sumit Mohanty, and Swapan Shridhar.
> 
> 
> Bugs: AMBARI-16437
> https://issues.apache.org/jira/browse/AMBARI-16437
> 
> 
> Repository: ambari
> 
> 
> Description
> ---
> 
> Add conditional constraints for Kerberos identities to control when they are 
> created. For example if Kerberos Identity should only be created (and 
> distributed) for a component when some other component or service is 
> installed. 
> 
> An example of this would be
> ```
> {
>   "name": "/HIVE/HIVE_SERVER/hive_server_hive",
>   "principal": {
> "configuration": 
> "hive-interactive-site/hive.llap.daemon.service.principal"
>   },
>   "keytab": {
> "configuration": "hive-interactive-site/hive.llap.daemon.keytab.file"
>   },
>   "when" : {
>   "contains" : ["services", "HIVE"]
>   }
> }
> ```
> 
> Note the "`when`" clause. This indicates that this identity should only be 
> processed when the set of services contains "HIVE".  An alternative to this 
> would be to test the set of components for a certain component.
> 
> 
> Diffs
> -
> 
>   
> ambari-server/src/main/java/org/apache/ambari/server/collections/Predicate.java
>  PRE-CREATION 
>   
> ambari-server/src/main/java/org/apache/ambari/server/collections/PredicateUtils.java
>  PRE-CREATION 
>   
> ambari-server/src/main/java/org/apache/ambari/server/collections/functors/AndPredicate.java
>  PRE-CREATION 
>   
> ambari-server/src/main/java/org/apache/ambari/server/collections/functors/ContainsPredicate.java
>  PRE-CREATION 
>   
> ambari-server/src/main/java/org/apache/ambari/server/collections/functors/ContextTransformer.java
>  PRE-CREATION 
>   
> ambari-server/src/main/java/org/apache/ambari/server/collections/functors/DelegatedMultiplePredicateContainer.java
>  PRE-CREATION 
>   
> ambari-server/src/main/java/org/apache/ambari/server/collections/functors/DelegatedSinglePredicateContainer.java
>  PRE-CREATION 
>   
> ambari-server/src/main/java/org/apache/ambari/server/collections/functors/EqualsPredicate.java
>  PRE-CREATION 
>   
> ambari-server/src/main/java/org/apache/ambari/server/collections/functors/NotPredicate.java
>  PRE-CREATION 
>   
> ambari-server/src/main/java/org/apache/ambari/server/collections/functors/OperationPredicate.java
>  PRE-CREATION 
>   
> ambari-server/src/main/java/org/apache/ambari/server/collections/functors/OrPredicate.java
>  PRE-CREATION 
>   
> ambari-server/src/main/java/org/apache/ambari/server/collections/functors/PredicateClassFactory.java
>  PRE-CREATION 
>   
> ambari-server/src/main/java/org/apache/ambari/server/controller/KerberosHelperImpl.java
>  c67c55d 
>   
> ambari-server/src/main/java/org/apache/ambari/server/serveraction/kerberos/AbstractPrepareKerberosServerAction.java
>  0dbd357 
>   
> ambari-server/src/main/java/org/apache/ambari/server/state/kerberos/AbstractKerberosDescriptorContainer.java
>  bb2ed1c 
>   
> ambari-server/src/main/java/org/apache/ambari/server/state/kerberos/KerberosIdentityDescriptor.java
>  d31dd21 
>   
> ambari-server/src/test/java/org/apache/ambari/server/collections/PredicateUtilsTest.java
>  PRE-CREATION 
>   
> ambari-server/src/test/java/org/apache/ambari/server/collections/functors/AndPredicateTest.java
>  PRE-CREATION 
>   
> ambari-server/src/test/java/org/apache/ambari/server/collections/functors/ContainsPredicateTest.java
>  PRE-CREATION 
>   
> ambari-server/src/test/java/org/apache/ambari/server/collections/functors/ContextTransformerTest.java
>  PRE-CREATION 
>   
> ambari-server/src/test/java/org/apache/ambari/server/collections/functors/EqualsPredicateTest.java
>  PRE-CREATION 
>   
> ambari-server/src/test/java/org/apache/ambari/server/collections/functors/NotPredicateTest.java
>  PRE-CREATION 
>   
> ambari-server/src/test/java/org/apache/ambari/server/collections/functors/OrPredicateTest.java
>  PRE-CREATION 
>   
> ambari-server/src/test/java/org/apache/ambari/server/controller/KerberosHelperTest.java
>  5393fd6 
>   
> ambari-server/src/test/java/org/apache/ambari/server/state/kerberos/KerberosDescriptorTest.java
>  d80d7cc 
>   
> ambari-server/src/test/java/org/apache/ambari/server/state/kerberos/KerberosIdentityDescriptorTest.java
>  0ea7b26 
> 
> Diff: https://reviews.apache.org/r/47933/diff/
> 
> 
> Testing
> ---
> 
> Manually tested 
> 
> # Local test results: PENDING
> 
> # 

Re: Review Request 47933: Add conditional constraints for Kerberos identities to control when they are created

2016-05-27 Thread Robert Levas

---
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/47933/
---

(Updated May 27, 2016, 3:58 p.m.)


Review request for Ambari, Jonathan Hurley, Nate Cole, Oliver Szabo, Sandor 
Magyari, Sumit Mohanty, and Swapan Shridhar.


Changes
---

Moved `org.apache.ambari.server.state.kerberos.eval` to 
`org.apache.ambari.server.collections`.


Bugs: AMBARI-16437
https://issues.apache.org/jira/browse/AMBARI-16437


Repository: ambari


Description
---

Add conditional constraints for Kerberos identities to control when they are 
created. For example if Kerberos Identity should only be created (and 
distributed) for a component when some other component or service is installed. 

An example of this would be
```
{
  "name": "/HIVE/HIVE_SERVER/hive_server_hive",
  "principal": {
"configuration": "hive-interactive-site/hive.llap.daemon.service.principal"
  },
  "keytab": {
"configuration": "hive-interactive-site/hive.llap.daemon.keytab.file"
  },
  "when" : {
  "contains" : ["services", "HIVE"]
  }
}
```

Note the "`when`" clause. This indicates that this identity should only be 
processed when the set of services contains "HIVE".  An alternative to this 
would be to test the set of components for a certain component.


Diffs (updated)
-

  
ambari-server/src/main/java/org/apache/ambari/server/collections/Predicate.java 
PRE-CREATION 
  
ambari-server/src/main/java/org/apache/ambari/server/collections/PredicateUtils.java
 PRE-CREATION 
  
ambari-server/src/main/java/org/apache/ambari/server/collections/functors/AndPredicate.java
 PRE-CREATION 
  
ambari-server/src/main/java/org/apache/ambari/server/collections/functors/ContainsPredicate.java
 PRE-CREATION 
  
ambari-server/src/main/java/org/apache/ambari/server/collections/functors/ContextTransformer.java
 PRE-CREATION 
  
ambari-server/src/main/java/org/apache/ambari/server/collections/functors/DelegatedMultiplePredicateContainer.java
 PRE-CREATION 
  
ambari-server/src/main/java/org/apache/ambari/server/collections/functors/DelegatedSinglePredicateContainer.java
 PRE-CREATION 
  
ambari-server/src/main/java/org/apache/ambari/server/collections/functors/EqualsPredicate.java
 PRE-CREATION 
  
ambari-server/src/main/java/org/apache/ambari/server/collections/functors/NotPredicate.java
 PRE-CREATION 
  
ambari-server/src/main/java/org/apache/ambari/server/collections/functors/OperationPredicate.java
 PRE-CREATION 
  
ambari-server/src/main/java/org/apache/ambari/server/collections/functors/OrPredicate.java
 PRE-CREATION 
  
ambari-server/src/main/java/org/apache/ambari/server/collections/functors/PredicateClassFactory.java
 PRE-CREATION 
  
ambari-server/src/main/java/org/apache/ambari/server/controller/KerberosHelperImpl.java
 c67c55d 
  
ambari-server/src/main/java/org/apache/ambari/server/serveraction/kerberos/AbstractPrepareKerberosServerAction.java
 0dbd357 
  
ambari-server/src/main/java/org/apache/ambari/server/state/kerberos/AbstractKerberosDescriptorContainer.java
 bb2ed1c 
  
ambari-server/src/main/java/org/apache/ambari/server/state/kerberos/KerberosIdentityDescriptor.java
 d31dd21 
  
ambari-server/src/test/java/org/apache/ambari/server/collections/PredicateUtilsTest.java
 PRE-CREATION 
  
ambari-server/src/test/java/org/apache/ambari/server/collections/functors/AndPredicateTest.java
 PRE-CREATION 
  
ambari-server/src/test/java/org/apache/ambari/server/collections/functors/ContainsPredicateTest.java
 PRE-CREATION 
  
ambari-server/src/test/java/org/apache/ambari/server/collections/functors/ContextTransformerTest.java
 PRE-CREATION 
  
ambari-server/src/test/java/org/apache/ambari/server/collections/functors/EqualsPredicateTest.java
 PRE-CREATION 
  
ambari-server/src/test/java/org/apache/ambari/server/collections/functors/NotPredicateTest.java
 PRE-CREATION 
  
ambari-server/src/test/java/org/apache/ambari/server/collections/functors/OrPredicateTest.java
 PRE-CREATION 
  
ambari-server/src/test/java/org/apache/ambari/server/controller/KerberosHelperTest.java
 5393fd6 
  
ambari-server/src/test/java/org/apache/ambari/server/state/kerberos/KerberosDescriptorTest.java
 d80d7cc 
  
ambari-server/src/test/java/org/apache/ambari/server/state/kerberos/KerberosIdentityDescriptorTest.java
 0ea7b26 

Diff: https://reviews.apache.org/r/47933/diff/


Testing
---

Manually tested 

# Local test results: PENDING

# Jenkins test results: PENDING


Thanks,

Robert Levas



Re: Review Request 47933: Add conditional constraints for Kerberos identities to control when they are created

2016-05-27 Thread Robert Levas


> On May 27, 2016, 12:32 p.m., Nate Cole wrote:
> > ambari-server/src/main/java/org/apache/ambari/server/state/kerberos/eval/AndPredicate.java,
> >  lines 19-24
> > 
> >
> > Seems like these are more generic than just for kerberos - maybe should 
> > go in org.apache.ambari.collections or something?  Is there no other 
> > guice/guava library doing the same stuff (json query framework or 
> > something)?

I Googled around and couldn't find anything other than 
`org.apache.commons.collections` stuff.  And since we already depend on the 
library it seemed like a good choice. 

I thought about moving this out but didnt have a good place the put it..  I can 
move to `org.apache.ambari.collections` or maybe 
`org.apache.ambari.server.collections` and sort of mirror what 
`org.apache.commons.collections` is doing.


- Robert


---
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/47933/#review135255
---


On May 27, 2016, 6:01 a.m., Robert Levas wrote:
> 
> ---
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/47933/
> ---
> 
> (Updated May 27, 2016, 6:01 a.m.)
> 
> 
> Review request for Ambari, Jonathan Hurley, Nate Cole, Oliver Szabo, Sandor 
> Magyari, Sumit Mohanty, and Swapan Shridhar.
> 
> 
> Bugs: AMBARI-16437
> https://issues.apache.org/jira/browse/AMBARI-16437
> 
> 
> Repository: ambari
> 
> 
> Description
> ---
> 
> Add conditional constraints for Kerberos identities to control when they are 
> created. For example if Kerberos Identity should only be created (and 
> distributed) for a component when some other component or service is 
> installed. 
> 
> An example of this would be
> ```
> {
>   "name": "/HIVE/HIVE_SERVER/hive_server_hive",
>   "principal": {
> "configuration": 
> "hive-interactive-site/hive.llap.daemon.service.principal"
>   },
>   "keytab": {
> "configuration": "hive-interactive-site/hive.llap.daemon.keytab.file"
>   },
>   "when" : {
>   "contains" : ["services", "HIVE"]
>   }
> }
> ```
> 
> Note the "`when`" clause. This indicates that this identity should only be 
> processed when the set of services contains "HIVE".  An alternative to this 
> would be to test the set of components for a certain component.
> 
> 
> Diffs
> -
> 
>   
> ambari-server/src/main/java/org/apache/ambari/server/controller/KerberosHelperImpl.java
>  c67c55d 
>   
> ambari-server/src/main/java/org/apache/ambari/server/serveraction/kerberos/AbstractPrepareKerberosServerAction.java
>  0dbd357 
>   
> ambari-server/src/main/java/org/apache/ambari/server/state/kerberos/AbstractKerberosDescriptorContainer.java
>  bb2ed1c 
>   
> ambari-server/src/main/java/org/apache/ambari/server/state/kerberos/KerberosIdentityDescriptor.java
>  d31dd21 
>   
> ambari-server/src/main/java/org/apache/ambari/server/state/kerberos/eval/AndPredicate.java
>  PRE-CREATION 
>   
> ambari-server/src/main/java/org/apache/ambari/server/state/kerberos/eval/ContainsPredicate.java
>  PRE-CREATION 
>   
> ambari-server/src/main/java/org/apache/ambari/server/state/kerberos/eval/ContextTransformer.java
>  PRE-CREATION 
>   
> ambari-server/src/main/java/org/apache/ambari/server/state/kerberos/eval/DelegatedMultiplePredicateContainer.java
>  PRE-CREATION 
>   
> ambari-server/src/main/java/org/apache/ambari/server/state/kerberos/eval/DelegatedSinglePredicateContainer.java
>  PRE-CREATION 
>   
> ambari-server/src/main/java/org/apache/ambari/server/state/kerberos/eval/EqualsPredicate.java
>  PRE-CREATION 
>   
> ambari-server/src/main/java/org/apache/ambari/server/state/kerberos/eval/NotPredicate.java
>  PRE-CREATION 
>   
> ambari-server/src/main/java/org/apache/ambari/server/state/kerberos/eval/OperationPredicate.java
>  PRE-CREATION 
>   
> ambari-server/src/main/java/org/apache/ambari/server/state/kerberos/eval/OrPredicate.java
>  PRE-CREATION 
>   
> ambari-server/src/main/java/org/apache/ambari/server/state/kerberos/eval/Predicate.java
>  PRE-CREATION 
>   
> ambari-server/src/main/java/org/apache/ambari/server/state/kerberos/eval/PredicateClassFactory.java
>  PRE-CREATION 
>   
> ambari-server/src/main/java/org/apache/ambari/server/state/kerberos/eval/PredicateUtils.java
>  PRE-CREATION 
>   
> ambari-server/src/test/java/org/apache/ambari/server/controller/KerberosHelperTest.java
>  5393fd6 
>   
> ambari-server/src/test/java/org/apache/ambari/server/state/kerberos/KerberosDescriptorTest.java
>  d80d7cc 
>   
> ambari-server/src/test/java/org/apache/ambari/server/state/kerberos/KerberosIdentityDescriptorTest.java
>  0ea7b26 
>   
> ambari-server/src/test/java/org/apache/ambari/server/state/kerberos/eval/AndPredicateTest.java
>  

Re: Review Request 47933: Add conditional constraints for Kerberos identities to control when they are created

2016-05-27 Thread Nate Cole

---
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/47933/#review135255
---




ambari-server/src/main/java/org/apache/ambari/server/state/kerberos/eval/AndPredicate.java
 (lines 19 - 24)


Seems like these are more generic than just for kerberos - maybe should go 
in org.apache.ambari.collections or something?  Is there no other guice/guava 
library doing the same stuff (json query framework or something)?


- Nate Cole


On May 27, 2016, 6:01 a.m., Robert Levas wrote:
> 
> ---
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/47933/
> ---
> 
> (Updated May 27, 2016, 6:01 a.m.)
> 
> 
> Review request for Ambari, Jonathan Hurley, Nate Cole, Oliver Szabo, Sandor 
> Magyari, Sumit Mohanty, and Swapan Shridhar.
> 
> 
> Bugs: AMBARI-16437
> https://issues.apache.org/jira/browse/AMBARI-16437
> 
> 
> Repository: ambari
> 
> 
> Description
> ---
> 
> Add conditional constraints for Kerberos identities to control when they are 
> created. For example if Kerberos Identity should only be created (and 
> distributed) for a component when some other component or service is 
> installed. 
> 
> An example of this would be
> ```
> {
>   "name": "/HIVE/HIVE_SERVER/hive_server_hive",
>   "principal": {
> "configuration": 
> "hive-interactive-site/hive.llap.daemon.service.principal"
>   },
>   "keytab": {
> "configuration": "hive-interactive-site/hive.llap.daemon.keytab.file"
>   },
>   "when" : {
>   "contains" : ["services", "HIVE"]
>   }
> }
> ```
> 
> Note the "`when`" clause. This indicates that this identity should only be 
> processed when the set of services contains "HIVE".  An alternative to this 
> would be to test the set of components for a certain component.
> 
> 
> Diffs
> -
> 
>   
> ambari-server/src/main/java/org/apache/ambari/server/controller/KerberosHelperImpl.java
>  c67c55d 
>   
> ambari-server/src/main/java/org/apache/ambari/server/serveraction/kerberos/AbstractPrepareKerberosServerAction.java
>  0dbd357 
>   
> ambari-server/src/main/java/org/apache/ambari/server/state/kerberos/AbstractKerberosDescriptorContainer.java
>  bb2ed1c 
>   
> ambari-server/src/main/java/org/apache/ambari/server/state/kerberos/KerberosIdentityDescriptor.java
>  d31dd21 
>   
> ambari-server/src/main/java/org/apache/ambari/server/state/kerberos/eval/AndPredicate.java
>  PRE-CREATION 
>   
> ambari-server/src/main/java/org/apache/ambari/server/state/kerberos/eval/ContainsPredicate.java
>  PRE-CREATION 
>   
> ambari-server/src/main/java/org/apache/ambari/server/state/kerberos/eval/ContextTransformer.java
>  PRE-CREATION 
>   
> ambari-server/src/main/java/org/apache/ambari/server/state/kerberos/eval/DelegatedMultiplePredicateContainer.java
>  PRE-CREATION 
>   
> ambari-server/src/main/java/org/apache/ambari/server/state/kerberos/eval/DelegatedSinglePredicateContainer.java
>  PRE-CREATION 
>   
> ambari-server/src/main/java/org/apache/ambari/server/state/kerberos/eval/EqualsPredicate.java
>  PRE-CREATION 
>   
> ambari-server/src/main/java/org/apache/ambari/server/state/kerberos/eval/NotPredicate.java
>  PRE-CREATION 
>   
> ambari-server/src/main/java/org/apache/ambari/server/state/kerberos/eval/OperationPredicate.java
>  PRE-CREATION 
>   
> ambari-server/src/main/java/org/apache/ambari/server/state/kerberos/eval/OrPredicate.java
>  PRE-CREATION 
>   
> ambari-server/src/main/java/org/apache/ambari/server/state/kerberos/eval/Predicate.java
>  PRE-CREATION 
>   
> ambari-server/src/main/java/org/apache/ambari/server/state/kerberos/eval/PredicateClassFactory.java
>  PRE-CREATION 
>   
> ambari-server/src/main/java/org/apache/ambari/server/state/kerberos/eval/PredicateUtils.java
>  PRE-CREATION 
>   
> ambari-server/src/test/java/org/apache/ambari/server/controller/KerberosHelperTest.java
>  5393fd6 
>   
> ambari-server/src/test/java/org/apache/ambari/server/state/kerberos/KerberosDescriptorTest.java
>  d80d7cc 
>   
> ambari-server/src/test/java/org/apache/ambari/server/state/kerberos/KerberosIdentityDescriptorTest.java
>  0ea7b26 
>   
> ambari-server/src/test/java/org/apache/ambari/server/state/kerberos/eval/AndPredicateTest.java
>  PRE-CREATION 
>   
> ambari-server/src/test/java/org/apache/ambari/server/state/kerberos/eval/ContainsPredicateTest.java
>  PRE-CREATION 
>   
> ambari-server/src/test/java/org/apache/ambari/server/state/kerberos/eval/ContextTransformerTest.java
>  PRE-CREATION 
>   
> ambari-server/src/test/java/org/apache/ambari/server/state/kerberos/eval/EqualsPredicateTest.java
>  PRE-CREATION 
>   
> ambari-server/src/test/java/org/apache/ambari/server/state/kerberos/eval/NotPredicateTest.java
>  PRE-CREATION 
>   
> 

Re: Review Request 47933: Add conditional constraints for Kerberos identities to control when they are created

2016-05-27 Thread Nate Cole

---
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/47933/#review135256
---


Ship it!




Ship It!

- Nate Cole


On May 27, 2016, 6:01 a.m., Robert Levas wrote:
> 
> ---
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/47933/
> ---
> 
> (Updated May 27, 2016, 6:01 a.m.)
> 
> 
> Review request for Ambari, Jonathan Hurley, Nate Cole, Oliver Szabo, Sandor 
> Magyari, Sumit Mohanty, and Swapan Shridhar.
> 
> 
> Bugs: AMBARI-16437
> https://issues.apache.org/jira/browse/AMBARI-16437
> 
> 
> Repository: ambari
> 
> 
> Description
> ---
> 
> Add conditional constraints for Kerberos identities to control when they are 
> created. For example if Kerberos Identity should only be created (and 
> distributed) for a component when some other component or service is 
> installed. 
> 
> An example of this would be
> ```
> {
>   "name": "/HIVE/HIVE_SERVER/hive_server_hive",
>   "principal": {
> "configuration": 
> "hive-interactive-site/hive.llap.daemon.service.principal"
>   },
>   "keytab": {
> "configuration": "hive-interactive-site/hive.llap.daemon.keytab.file"
>   },
>   "when" : {
>   "contains" : ["services", "HIVE"]
>   }
> }
> ```
> 
> Note the "`when`" clause. This indicates that this identity should only be 
> processed when the set of services contains "HIVE".  An alternative to this 
> would be to test the set of components for a certain component.
> 
> 
> Diffs
> -
> 
>   
> ambari-server/src/main/java/org/apache/ambari/server/controller/KerberosHelperImpl.java
>  c67c55d 
>   
> ambari-server/src/main/java/org/apache/ambari/server/serveraction/kerberos/AbstractPrepareKerberosServerAction.java
>  0dbd357 
>   
> ambari-server/src/main/java/org/apache/ambari/server/state/kerberos/AbstractKerberosDescriptorContainer.java
>  bb2ed1c 
>   
> ambari-server/src/main/java/org/apache/ambari/server/state/kerberos/KerberosIdentityDescriptor.java
>  d31dd21 
>   
> ambari-server/src/main/java/org/apache/ambari/server/state/kerberos/eval/AndPredicate.java
>  PRE-CREATION 
>   
> ambari-server/src/main/java/org/apache/ambari/server/state/kerberos/eval/ContainsPredicate.java
>  PRE-CREATION 
>   
> ambari-server/src/main/java/org/apache/ambari/server/state/kerberos/eval/ContextTransformer.java
>  PRE-CREATION 
>   
> ambari-server/src/main/java/org/apache/ambari/server/state/kerberos/eval/DelegatedMultiplePredicateContainer.java
>  PRE-CREATION 
>   
> ambari-server/src/main/java/org/apache/ambari/server/state/kerberos/eval/DelegatedSinglePredicateContainer.java
>  PRE-CREATION 
>   
> ambari-server/src/main/java/org/apache/ambari/server/state/kerberos/eval/EqualsPredicate.java
>  PRE-CREATION 
>   
> ambari-server/src/main/java/org/apache/ambari/server/state/kerberos/eval/NotPredicate.java
>  PRE-CREATION 
>   
> ambari-server/src/main/java/org/apache/ambari/server/state/kerberos/eval/OperationPredicate.java
>  PRE-CREATION 
>   
> ambari-server/src/main/java/org/apache/ambari/server/state/kerberos/eval/OrPredicate.java
>  PRE-CREATION 
>   
> ambari-server/src/main/java/org/apache/ambari/server/state/kerberos/eval/Predicate.java
>  PRE-CREATION 
>   
> ambari-server/src/main/java/org/apache/ambari/server/state/kerberos/eval/PredicateClassFactory.java
>  PRE-CREATION 
>   
> ambari-server/src/main/java/org/apache/ambari/server/state/kerberos/eval/PredicateUtils.java
>  PRE-CREATION 
>   
> ambari-server/src/test/java/org/apache/ambari/server/controller/KerberosHelperTest.java
>  5393fd6 
>   
> ambari-server/src/test/java/org/apache/ambari/server/state/kerberos/KerberosDescriptorTest.java
>  d80d7cc 
>   
> ambari-server/src/test/java/org/apache/ambari/server/state/kerberos/KerberosIdentityDescriptorTest.java
>  0ea7b26 
>   
> ambari-server/src/test/java/org/apache/ambari/server/state/kerberos/eval/AndPredicateTest.java
>  PRE-CREATION 
>   
> ambari-server/src/test/java/org/apache/ambari/server/state/kerberos/eval/ContainsPredicateTest.java
>  PRE-CREATION 
>   
> ambari-server/src/test/java/org/apache/ambari/server/state/kerberos/eval/ContextTransformerTest.java
>  PRE-CREATION 
>   
> ambari-server/src/test/java/org/apache/ambari/server/state/kerberos/eval/EqualsPredicateTest.java
>  PRE-CREATION 
>   
> ambari-server/src/test/java/org/apache/ambari/server/state/kerberos/eval/NotPredicateTest.java
>  PRE-CREATION 
>   
> ambari-server/src/test/java/org/apache/ambari/server/state/kerberos/eval/OrPredicateTest.java
>  PRE-CREATION 
>   
> ambari-server/src/test/java/org/apache/ambari/server/state/kerberos/eval/PredicateUtilsTest.java
>  PRE-CREATION 
> 
> Diff: https://reviews.apache.org/r/47933/diff/
> 
> 
> Testing
> ---
> 
> Manually tested 
> 
> # Local test results: PENDING
> 
> 

Review Request 47933: Add conditional constraints for Kerberos identities to control when they are created

2016-05-26 Thread Robert Levas

---
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/47933/
---

Review request for Ambari, Jonathan Hurley, Nate Cole, Oliver Szabo, and Sandor 
Magyari.


Bugs: AMBARI-16437
https://issues.apache.org/jira/browse/AMBARI-16437


Repository: ambari


Description
---

Add conditional constraints for Kerberos identities to control when they are 
created. For example if Kerberos Identity should only be created (and 
distributed) for a component when some other component or service is installed. 

An example of this would be
```
{
  "name": "/HIVE/HIVE_SERVER/hive_server_hive",
  "principal": {
"configuration": "hive-interactive-site/hive.llap.daemon.service.principal"
  },
  "keytab": {
"configuration": "hive-interactive-site/hive.llap.daemon.keytab.file"
  },
  "when" : {
  "contains" : ["services", "HIVE"]
  }
}
```

Note the "`when`" clause. This indicates that this identity should only be 
processed when the set of services contains "HIVE".  An alternative to this 
would be to test the set of components for a certain component.


Diffs
-

  
ambari-server/src/main/java/org/apache/ambari/server/controller/KerberosHelperImpl.java
 c67c55d 
  
ambari-server/src/main/java/org/apache/ambari/server/serveraction/kerberos/AbstractPrepareKerberosServerAction.java
 0dbd357 
  
ambari-server/src/main/java/org/apache/ambari/server/state/kerberos/AbstractKerberosDescriptorContainer.java
 bb2ed1c 
  
ambari-server/src/main/java/org/apache/ambari/server/state/kerberos/KerberosIdentityDescriptor.java
 d31dd21 
  
ambari-server/src/main/java/org/apache/ambari/server/state/kerberos/eval/AndPredicate.java
 PRE-CREATION 
  
ambari-server/src/main/java/org/apache/ambari/server/state/kerberos/eval/ContainsPredicate.java
 PRE-CREATION 
  
ambari-server/src/main/java/org/apache/ambari/server/state/kerberos/eval/ContextTransformer.java
 PRE-CREATION 
  
ambari-server/src/main/java/org/apache/ambari/server/state/kerberos/eval/DelegatedMultiplePredicateContainer.java
 PRE-CREATION 
  
ambari-server/src/main/java/org/apache/ambari/server/state/kerberos/eval/DelegatedSinglePredicateContainer.java
 PRE-CREATION 
  
ambari-server/src/main/java/org/apache/ambari/server/state/kerberos/eval/EqualsPredicate.java
 PRE-CREATION 
  
ambari-server/src/main/java/org/apache/ambari/server/state/kerberos/eval/NotPredicate.java
 PRE-CREATION 
  
ambari-server/src/main/java/org/apache/ambari/server/state/kerberos/eval/OperationPredicate.java
 PRE-CREATION 
  
ambari-server/src/main/java/org/apache/ambari/server/state/kerberos/eval/OrPredicate.java
 PRE-CREATION 
  
ambari-server/src/main/java/org/apache/ambari/server/state/kerberos/eval/Predicate.java
 PRE-CREATION 
  
ambari-server/src/main/java/org/apache/ambari/server/state/kerberos/eval/PredicateClassFactory.java
 PRE-CREATION 
  
ambari-server/src/main/java/org/apache/ambari/server/state/kerberos/eval/PredicateUtils.java
 PRE-CREATION 
  
ambari-server/src/test/java/org/apache/ambari/server/controller/KerberosHelperTest.java
 5393fd6 
  
ambari-server/src/test/java/org/apache/ambari/server/state/kerberos/KerberosDescriptorTest.java
 d80d7cc 
  
ambari-server/src/test/java/org/apache/ambari/server/state/kerberos/KerberosIdentityDescriptorTest.java
 0ea7b26 
  
ambari-server/src/test/java/org/apache/ambari/server/state/kerberos/eval/AndPredicateTest.java
 PRE-CREATION 
  
ambari-server/src/test/java/org/apache/ambari/server/state/kerberos/eval/ContainsPredicateTest.java
 PRE-CREATION 
  
ambari-server/src/test/java/org/apache/ambari/server/state/kerberos/eval/ContextTransformerTest.java
 PRE-CREATION 
  
ambari-server/src/test/java/org/apache/ambari/server/state/kerberos/eval/EqualsPredicateTest.java
 PRE-CREATION 
  
ambari-server/src/test/java/org/apache/ambari/server/state/kerberos/eval/NotPredicateTest.java
 PRE-CREATION 
  
ambari-server/src/test/java/org/apache/ambari/server/state/kerberos/eval/OrPredicateTest.java
 PRE-CREATION 
  
ambari-server/src/test/java/org/apache/ambari/server/state/kerberos/eval/PredicateUtilsTest.java
 PRE-CREATION 

Diff: https://reviews.apache.org/r/47933/diff/


Testing
---

Manually tested 

# Local test results: PENDING

# Jenkins test results: PENDING


Thanks,

Robert Levas