Re: [jclouds/jclouds-labs] JCLOUDS-1362: Proper password generation with custom constraints for each cloud (#430)

2018-01-08 Thread Svet
LGTM

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds-labs/pull/430#issuecomment-355903790

Re: [jclouds/jclouds] JCLOUDS-1362: Better password generation utility (#1165)

2018-01-08 Thread Svet
Nice change, LGTM.

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds/pull/1165#issuecomment-355903651

Re: [jclouds/jclouds-cli] WIP Upgrade Karaf (#38)

2017-09-15 Thread Svet
Closing this. We'll still need to update the API at some point, but for now we 
got what we needed by using a compatibility layer.

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds-cli/pull/38#issuecomment-329744977

Re: [jclouds/jclouds-cli] WIP Upgrade Karaf (#38)

2017-09-15 Thread Svet
Closed #38.

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds-cli/pull/38#event-1250824891

Re: [jclouds/jclouds] JCLOUDS-1323: use security group names in openstack nova template options (#1128)

2017-08-09 Thread Svet
neykov approved this pull request.

:+1:



-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds/pull/1128#pullrequestreview-55171544

Re: [jclouds/jclouds] JCLOUDS-1323: use security group names in openstack nova template options (#1128)

2017-08-07 Thread Svet
neykov commented on this pull request.



>   for (String securityGroupName : templateOptions.getGroups()) {
-
checkNotNull(novaApi.getSecurityGroupApi(region).get().get(securityGroupName), 
"security group %s doesn't exist", securityGroupName);   
+checkState(securityGroupNames.contains(securityGroupName), "Cannot 
find security group with name " + securityGroupName + ". \nSecurity groups 
available are: \n" + Iterables.toString(securityGroupNames)); // {
  }

Wouldn't give as nice error message as the above one - not clear which security 
group is missing with your suggestion.

LGTM overall.

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds/pull/1128#discussion_r131720327

Re: [jclouds/jclouds-labs] JCLOUDS-1304: add azure customdata, JCLOUDS-1305: add support for ssh keys in keyvault (#398)

2017-08-06 Thread Svet
@VRanga000 what do you think about splitting the PR into `customData` support 
and another one for keyvault support? The two don't seem to depend on each 
other, and we can merge `customData` without waiting for the rest.

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds-labs/pull/398#issuecomment-320494861

Re: [jclouds/jclouds-karaf] Fix vagrant feature dependencies (#105)

2017-08-04 Thread Svet
Thanks @nacx, missed that.

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds-karaf/pull/105#issuecomment-320172616

Re: [jclouds/jclouds-labs] Vagrant support for multiple providers (#403)

2017-08-01 Thread Svet
Merged in 
[master](http://git-wip-us.apache.org/repos/asf/jclouds-labs/commit/83418324c0f5c74f4ebdc3cecf11d345877e96f9)
 and 
[2.0.x](http://git-wip-us.apache.org/repos/asf/jclouds-labs/commit/dfe70318d2ed993ed2548005cf0f0db210bdfd50).

-- 
You are receiving this because you modified the open/close state.
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds-labs/pull/403#issuecomment-319352068

Re: [jclouds/jclouds-labs] Re-use the just added Passwords from jclouds-core (#404)

2017-08-01 Thread Svet
Merged in 
[master](https://git1-us-west.apache.org/repos/asf?p=jclouds-labs.git;a=commit;h=c9af1b248e3cfd0ce312823436e986726e826ccd).

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds-labs/pull/404#issuecomment-319347263

Re: [jclouds/jclouds-labs] Re-use the just added Passwords from jclouds-core (#404)

2017-08-01 Thread Svet
Tested azure with the max password length (50), merging.

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds-labs/pull/404#issuecomment-319327205

Re: [jclouds/jclouds-labs] Re-use the just added Passwords from jclouds-core (#404)

2017-07-31 Thread Svet
retest this please
Dependent changes merged in jclouds, next build should be successful.

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds-labs/pull/404#issuecomment-319082215

Re: [jclouds/jclouds] JCLOUDS-1321: Use separate credential stores per context (#1119)

2017-07-27 Thread Svet
Merged to 
[master](https://git1-us-west.apache.org/repos/asf/jclouds/?p=jclouds.git;a=commit;h=2487b0c5132191de5e68413e33dfa551b5679ebb).

-- 
You are receiving this because you modified the open/close state.
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds/pull/1119#issuecomment-318342375

Re: [jclouds/jclouds] Consume Unicode byte order mark in XML parser (#1124)

2017-07-27 Thread Svet
neykov approved this pull request.





-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds/pull/1124#pullrequestreview-52592661

Re: [jclouds/jclouds] Consume Unicode byte order mark in XML parser (#1124)

2017-07-27 Thread Svet
The change was surprising to me, I expected Java to handle the BOM. After 
digging deeper I found 
[[1]](https://stackoverflow.com/questions/4897876/reading-utf-8-bom-marker) 
which points to two JDK bugs 
[[2]](http://bugs.java.com/view_bug.do?bug_id=4508058) and 
[[3]](http://bugs.java.com/view_bug.do?bug_id=6378911). Turns out they fixed it 
at some point to consume the BOM but then reverted because it breaks backwards 
compatibility.

Also of interest, the UTF character `0xFEFF` is serialized as `EF BB BF` in the 
UTF-8 byte sequence [[4]](http://www.unicode.org/faq/utf_bom.html#BOM)

\[1\] https://stackoverflow.com/questions/4897876/reading-utf-8-bom-marker
\[2\] http://bugs.java.com/view_bug.do?bug_id=4508058
\[3\] http://bugs.java.com/view_bug.do?bug_id=6378911
\[4\] http://www.unicode.org/faq/utf_bom.html#BOM

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds/pull/1124#issuecomment-318299404

Re: [jclouds/jclouds] JCLOUDS-1321: Use separate credential stores per context (#1119)

2017-07-25 Thread Svet
+1. I'll merge this and publish the changes by the end of the week due to 
passive consensus.

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds/pull/1119#issuecomment-317720168

[jclouds/jclouds-labs] Re-use the just added Passwords from jclouds-core (#404)

2017-07-25 Thread Svet
Depends on https://github.com/jclouds/jclouds/pull/1123
As discussed in https://github.com/jclouds/jclouds-labs/pull/402
You can view, comment on, or merge this pull request online at:

  https://github.com/jclouds/jclouds-labs/pull/404

-- Commit Summary --

  * Re-use the just added Passwords from jclouds-core

-- File Changes --

M 
azurecompute-arm/src/main/java/org/jclouds/azurecompute/arm/compute/strategy/CreateResourcesThenCreateNodes.java
 (2)
D 
azurecompute-arm/src/main/java/org/jclouds/azurecompute/arm/util/Passwords.java 
(32)
M 
oneandone/src/main/java/org/apache/jclouds/oneandone/rest/compute/OneandoneComputeServiceAdapter.java
 (2)
D 
oneandone/src/main/java/org/apache/jclouds/oneandone/rest/util/Passwords.java 
(64)
M 
profitbricks-rest/src/main/java/org/apache/jclouds/profitbricks/rest/compute/ProfitBricksComputeServiceAdapter.java
 (2)
M 
profitbricks-rest/src/main/java/org/apache/jclouds/profitbricks/rest/domain/Volume.java
 (2)
D 
profitbricks-rest/src/main/java/org/apache/jclouds/profitbricks/rest/util/Passwords.java
 (64)
D 
profitbricks-rest/src/test/java/org/apache/jclouds/profitbricks/rest/util/PasswordsTest.java
 (53)

-- Patch Links --

https://github.com/jclouds/jclouds-labs/pull/404.patch
https://github.com/jclouds/jclouds-labs/pull/404.diff

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds-labs/pull/404


[jclouds/jclouds] Move Passwords implementation to jclouds-core to be reused by providers (#1123)

2017-07-25 Thread Svet
As discussed in https://github.com/jclouds/jclouds-labs/pull/402
You can view, comment on, or merge this pull request online at:

  https://github.com/jclouds/jclouds/pull/1123

-- Commit Summary --

  * Move Passwords implementation to jclouds-core to be reused by providers

-- File Changes --

R core/src/main/java/org/jclouds/util/Passwords.java (2)
R core/src/test/java/org/jclouds/util/PasswordsTest.java (8)
M 
providers/profitbricks/src/main/java/org/jclouds/profitbricks/compute/ProfitBricksComputeServiceAdapter.java
 (2)
M 
providers/profitbricks/src/main/java/org/jclouds/profitbricks/util/Preconditions.java
 (2)

-- Patch Links --

https://github.com/jclouds/jclouds/pull/1123.patch
https://github.com/jclouds/jclouds/pull/1123.diff

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds/pull/1123


Re: [jclouds/jclouds] [JCLOUDS-1318] fix based on nodeTerminatePredicate (#1117)

2017-07-21 Thread Svet
Added a jira as a reminder for the release notes - 
https://issues.apache.org/jira/browse/JCLOUDS-1323.

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds/pull/1117#issuecomment-316984706

Re: [jclouds/jclouds] [JCLOUDS-1318] fix based on nodeTerminatePredicate (#1117)

2017-07-21 Thread Svet
Heads up, the commit changes how security groups are set in `templateOptions`. 
Previously the human readable name was accepted. Now the UUID of the security 
group is required.

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds/pull/1117#issuecomment-316953433

Re: [jclouds/jclouds] Make sure Jetty doesn't terminate on ssh disconnect (#1122)

2017-07-20 Thread Svet
Closed #1122.

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds/pull/1122#event-1172143924

Re: [jclouds/jclouds] Make sure Jetty doesn't terminate on ssh disconnect (#1122)

2017-07-20 Thread Svet
Took some time to get to the bottom of it :).
Merged to 
[master](https://git1-us-west.apache.org/repos/asf/jclouds/?p=jclouds.git;a=commit;h=0c054c18359fc2bd0f1de2344b6e021a38aed695)
 and 
[2.0.x](https://git1-us-west.apache.org/repos/asf/jclouds/?p=jclouds.git;a=commit;h=5b57b73cf744cd316c028edd2e5d765324ec6d6f)

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds/pull/1122#issuecomment-316709900

Re: [jclouds/jclouds-labs] Vagrant support for multiple providers (#403)

2017-07-19 Thread Svet
@neykov pushed 1 commit.

db197f2  JCLOUDS-1256: Remove unused code


-- 
You are receiving this because you are subscribed to this thread.
View it on GitHub:
https://github.com/jclouds/jclouds-labs/pull/403/files/cc130d12019c8c4adb9c4c978db109f7e95e4809..db197f226dfb4dfa883e000c717dd7ee0c9a841e


[jclouds/jclouds-labs] Vagrant support for multiple providers (#403)

2017-07-19 Thread Svet
Support machines where multiple providers are installed.
Will pass the provider to use to vagrant, based on the selected image.

For example Fedora installs libvirt by default with virtualbox as an optional 
dependency.
You can view, comment on, or merge this pull request online at:

  https://github.com/jclouds/jclouds-labs/pull/403

-- Commit Summary --

  * Support for multiple vagrant providers
  * Don't hardcode specific networks to skip

-- File Changes --

M vagrant/README.md (25)
M vagrant/pom.xml (2)
M vagrant/src/main/java/org/jclouds/vagrant/api/VagrantApiFacade.java (2)
M 
vagrant/src/main/java/org/jclouds/vagrant/compute/VagrantComputeServiceAdapter.java
 (11)
M vagrant/src/main/java/org/jclouds/vagrant/internal/VagrantCliFacade.java 
(4)
M vagrant/src/main/resources/Vagrantfile (28)
M vagrant/src/test/resources/logback-test.xml (7)

-- Patch Links --

https://github.com/jclouds/jclouds-labs/pull/403.patch
https://github.com/jclouds/jclouds-labs/pull/403.diff

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds-labs/pull/403


Re: [jclouds/jclouds-labs] Generate Azure VM password on the fly (#402)

2017-07-18 Thread Svet
neykov commented on this pull request.



> + * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.jclouds.azurecompute.arm.util;
+
+import com.google.common.io.BaseEncoding;
+
+import java.util.Random;
+
+// Seems to be a common theme between providers, perhaps should be provided by 
core (see other 'Passwords' classes)
+public class Passwords {

+1 to refactor and add tests. I can give it a try.

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds-labs/pull/402#discussion_r127899519

Re: [jclouds/jclouds-site] Remove unsupported sections (clojure, Ant, GAE) (#199)

2017-07-18 Thread Svet
Updated the site.

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds-site/pull/199#issuecomment-315980868

Re: [jclouds/jclouds-site] Remove unsupported sections (clojure, Ant, GAE) (#199)

2017-07-17 Thread Svet
[Merged](https://git1-us-west.apache.org/repos/asf?p=jclouds-site.git;a=commit;h=94b98475f77b0ed6b9d9e3db2e05209b19c523f4)

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds-site/pull/199#issuecomment-315778282

Re: [jclouds/jclouds-site] Remove unsupported sections (clojure, Ant, GAE) (#199)

2017-07-17 Thread Svet
Merged #199.

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds-site/pull/199#event-1166533045

Re: [jclouds/jclouds] JCLOUDS-1321: Use separate credential stores per context (#1119)

2017-07-17 Thread Svet
* Jira (to be included in release notes): 
https://issues.apache.org/jira/browse/JCLOUDS-1321
* Heads up to the mailing lists:
  * 
[user@j.a.o](https://lists.apache.org/thread.html/c65711e3ca3b3ffe068fc6562f0db98336772984924f24857ee0bdcd@%3Cuser.jclouds.apache.org%3E)
  * 
[dev@j.a.o](https://lists.apache.org/thread.html/b3edeca6b742d122908c570dd779af4bb1c93c6405e0bf5b52c17267@%3Cdev.jclouds.apache.org%3E)
* Documenting a work around in the [compute 
guide](https://github.com/jclouds/jclouds-site/pull/200)

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds/pull/1119#issuecomment-315765265

[jclouds/jclouds-site] Document workaround to revert to shared credential store (#200)

2017-07-17 Thread Svet
Depends on https://github.com/jclouds/jclouds/pull/1119 being released.
You can view, comment on, or merge this pull request online at:

  https://github.com/jclouds/jclouds-site/pull/200

-- Commit Summary --

  * Workaround to revert to shared credential store

-- File Changes --

M start/compute.md (15)

-- Patch Links --

https://github.com/jclouds/jclouds-site/pull/200.patch
https://github.com/jclouds/jclouds-site/pull/200.diff

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds-site/pull/200


Re: [jclouds/jclouds-site] Remove unsupported sections (clojure, Ant, GAE) (#199)

2017-07-17 Thread Svet
Done @nacx 

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds-site/pull/199#issuecomment-315760120

[jclouds/jclouds-site] Remove unsupported sections (clojure & ant) (#199)

2017-07-17 Thread Svet
* clojure support removed from core
* reference to non-existent `ApacheAntComputeGuide`
You can view, comment on, or merge this pull request online at:

  https://github.com/jclouds/jclouds-site/pull/199

-- Commit Summary --

  * Remove Clojure references, support removed from core
  * Remove reference to the non-existent ApacheAntComputeGuide page

-- File Changes --

M start/compute.md (72)

-- Patch Links --

https://github.com/jclouds/jclouds-site/pull/199.patch
https://github.com/jclouds/jclouds-site/pull/199.diff

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds-site/pull/199


Re: [jclouds/jclouds-labs] Generate Azure VM password on the fly (#402)

2017-07-17 Thread Svet
Closed #402.

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds-labs/pull/402#event-1166369934

Re: [jclouds/jclouds-labs] Generate Azure VM password on the fly (#402)

2017-07-17 Thread Svet
Merged to 
[master](https://git1-us-west.apache.org/repos/asf?p=jclouds-labs.git;a=commit;h=3641cdb44c192be381f82d8886f966c248474f4d)
 and 
[2.0.x](https://git1-us-west.apache.org/repos/asf?p=jclouds-labs.git;a=commit;h=f27b5f944887bdefba78d7bbd339ea68db76725c)

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds-labs/pull/402#issuecomment-315747187

Re: [jclouds/jclouds] Use separate credential stores per context (#1119)

2017-07-14 Thread Svet
These are all great ideas @nacx. I'll do the necessary updates.
I'll send an email to the mailing list so the change gets wider exposure.
It's also a breaking change so should be merged only on master.


-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds/pull/1119#issuecomment-315331196

Re: [jclouds/jclouds] Use separate credential stores per context (#1119)

2017-07-13 Thread Svet
@nacx That's a great idea, thanks for the example.

Don't disagree having the shared cache could be useful. It's the way it's used 
in 
[GetLoginForProviderFromPropertiesAndStoreCredentialsOrReturnNull](https://github.com/jclouds/jclouds/blob/master/compute/src/main/java/org/jclouds/compute/config/GetLoginForProviderFromPropertiesAndStoreCredentialsOrReturnNull.java)
 that I don't like. And that's used in all providers.

Having the configuration of one compute service affect all remaining compute 
services even when they have different configuration is surprising to say the 
least :)

I still think that it's the wrong thing to do. Perhaps it should be the other 
way around - users which really need the cross-service cache should inject it 
themselves.

Can you give some good examples of using the cache? From looking at the code it 
seems that its not even needed - no heavy computation is done to extract the 
username/password in the default case.

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds/pull/1119#issuecomment-315095395

Re: [jclouds/jclouds] Use separate credential stores per context (#1119)

2017-07-12 Thread Svet
neykov commented on this pull request.



> @@ -59,13 +59,8 @@ protected void configure() {
   }).to(CredentialsToJsonByteSource.class);
   bind(new TypeLiteral>() {
   }).to(CredentialsFromJsonByteSource.class);
-  if (backing != null) {
- bind(new TypeLiteral>() {
- }).toInstance(backing);
-  } else {
- bind(new TypeLiteral>() {
- }).toInstance(BACKING);

Good spot, removed.

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds/pull/1119#discussion_r127129277

Re: [jclouds/jclouds-labs] Generate Azure VM password on the fly (#402)

2017-07-12 Thread Svet
neykov commented on this pull request.



> @@ -130,6 +136,20 @@ protected CreateResourcesThenCreateNodes(
   return super.execute(group, count, template, goodNodes, badNodes, 
customizationResponses);
}
 
+   // Azure requires that we pass it the VM password. Need to generate one if 
not overriden by the user.
+   private void generatePasswordIfNoneProvided(Template template) {
+  TemplateOptions options = template.getOptions();
+  if (options.getLoginPassword() == null) {
+ Optional passwordOptional = 
template.getImage().getDefaultCredentials().getOptionalPassword();
+ if (passwordOptional.isPresent()) {

Didn't like it initially because it will generate a password regardless of 
whether used. But +1 for cleaner code. Updated.

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds-labs/pull/402#discussion_r126933224

Re: [jclouds/jclouds-labs] Generate Azure VM password on the fly (#402)

2017-07-12 Thread Svet
Thanks @nacx, merging after build completes.

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds-labs/pull/402#issuecomment-314746485

Re: [jclouds/jclouds-labs] Generate Azure VM password on the fly (#402)

2017-07-12 Thread Svet
neykov commented on this pull request.



> + *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.jclouds.azurecompute.arm.util;
+
+import com.google.common.io.BaseEncoding;
+
+import java.util.Random;
+
+// Seems to be a common theme between providers, perhaps should be provided by 
core (see other 'Passwords' classes)

Will leave that for another PR.

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds-labs/pull/402#discussion_r126933309

[jclouds/jclouds-labs] Generate Azure VM password on the fly (#402)

2017-07-11 Thread Svet
Used to be a fixed password which anyone can use to login to the newly 
provisioned machines.
You can view, comment on, or merge this pull request online at:

  https://github.com/jclouds/jclouds-labs/pull/402

-- Commit Summary --

  * Generate Azure VM password on the fly

-- File Changes --

M 
azurecompute-arm/src/main/java/org/jclouds/azurecompute/arm/AzureComputeProviderMetadata.java
 (5)
M 
azurecompute-arm/src/main/java/org/jclouds/azurecompute/arm/compute/AzureComputeServiceAdapter.java
 (12)
M 
azurecompute-arm/src/main/java/org/jclouds/azurecompute/arm/compute/strategy/CreateResourcesThenCreateNodes.java
 (21)
A 
azurecompute-arm/src/main/java/org/jclouds/azurecompute/arm/util/Passwords.java 
(32)

-- Patch Links --

https://github.com/jclouds/jclouds-labs/pull/402.patch
https://github.com/jclouds/jclouds-labs/pull/402.diff

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds-labs/pull/402


[jclouds/jclouds] Use separate credential stores per context (#1119)

2017-07-11 Thread Svet
With a shared credential store the configuration of one compute service leaks 
in all others, causing the wrong credentials to be used when not overridden.

The particular problem this fixes - [Azure sets default username/password for 
images](https://github.com/jclouds/jclouds-labs/blob/master/azurecompute-arm/src/main/java/org/jclouds/azurecompute/arm/AzureComputeProviderMetadata.java#L98)
 which leaks to other providers (through 
[GetLoginForProviderFromPropertiesAndStoreCredentialsOrReturnNull](https://github.com/jclouds/jclouds/blob/master/compute/src/main/java/org/jclouds/compute/config/GetLoginForProviderFromPropertiesAndStoreCredentialsOrReturnNull.java#L51)),
 causing the wrong username/password to be used.
Even if the credentials are scoped to a specific provider in the map, it still 
will cause cross-talk between differently configured compute services. The 
cache should only apply to the current compute service.
You can view, comment on, or merge this pull request online at:

  https://github.com/jclouds/jclouds/pull/1119

-- Commit Summary --

  * Use separate credential stores per context

-- File Changes --

M core/src/main/java/org/jclouds/rest/config/CredentialStoreModule.java (11)
M core/src/test/java/org/jclouds/rest/CredentialStoreModuleTest.java (42)

-- Patch Links --

https://github.com/jclouds/jclouds/pull/1119.patch
https://github.com/jclouds/jclouds/pull/1119.diff

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds/pull/1119


Re: [jclouds/jclouds-labs] Fix SGE.removeSecurityGroup for when the SG doesn't exist (#399)

2017-07-07 Thread Svet
Closed #399.

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds-labs/pull/399#event-1154029335

Re: [jclouds/jclouds-labs] Fix SGE.removeSecurityGroup for when the SG doesn't exist (#399)

2017-07-07 Thread Svet
Thanks @nacx, merging.

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds-labs/pull/399#issuecomment-313610076

[jclouds/jclouds-labs] Fix SGE.removeSecurityGroup for when the SG doesn't exist (#399)

2017-07-06 Thread Svet
@nacx reported the problem in the `Re: [DISCUSS] Release Apache jclouds 2.0.2 
RC1` email thread. Failure:

```
testSecurityGroupCacheInvalidatedWhenDeletedExternally(org.jclouds.azurecompute.arm.compute.extensions.AzureComputeSecurityGroupExtensionLiveTest)
Time elapsed: 2.928 sec  <<< FAILURE!
java.lang.NullPointerException: uri cannot be null
at com.google.common.base.Preconditions.checkNotNull(Preconditions.java:229)
at 
org.jclouds.azurecompute.arm.compute.config.AzureComputeServiceContextModule$ActionDonePredicate.apply(AzureComputeServiceContextModule.java:230)
at 
org.jclouds.azurecompute.arm.compute.config.AzureComputeServiceContextModule$ActionDonePredicate.apply(AzureComputeServiceContextModule.java:219)
at org.jclouds.util.Predicates2$RetryablePredicate.apply(Predicates2.java:117)
at 
org.jclouds.azurecompute.arm.compute.extensions.AzureComputeSecurityGroupExtension.removeSecurityGroup(AzureComputeSecurityGroupExtension.java:193)
at 
org.jclouds.compute.extensions.internal.BaseSecurityGroupExtensionLiveTest.testSecurityGroupCacheInvalidatedWhenDeletedExternally(BaseSecurityGroupExtensionLiveTest.java:417)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at 
org.testng.internal.MethodInvocationHelper.invokeMethod(MethodInvocationHelper.java:85)
at org.testng.internal.Invoker.invokeMethod(Invoker.java:696)
at org.testng.internal.Invoker.invokeTestMethod(Invoker.java:882)
at org.testng.internal.Invoker.invokeTestMethods(Invoker.java:1189)
at 
org.testng.internal.TestMethodWorker.invokeTestMethods(TestMethodWorker.java:124)
at org.testng.internal.TestMethodWorker.run(TestMethodWorker.java:108)
at org.testng.TestRunner.privateRun(TestRunner.java:767)
at org.testng.TestRunner.run(TestRunner.java:617)
at org.testng.SuiteRunner.runTest(SuiteRunner.java:348)
at org.testng.SuiteRunner.access$000(SuiteRunner.java:38)
at org.testng.SuiteRunner$SuiteWorker.run(SuiteRunner.java:382)
at org.testng.internal.thread.ThreadUtil$2.call(ThreadUtil.java:64)
at java.util.concurrent.FutureTask.run(FutureTask.java:262)
at 
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at 
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
at java.lang.Thread.run(Thread.java:745)
```
You can view, comment on, or merge this pull request online at:

  https://github.com/jclouds/jclouds-labs/pull/399

-- Commit Summary --

  * Fix SGE.removeSecurityGroup for when the SG doesn't exist

-- File Changes --

M 
azurecompute-arm/src/main/java/org/jclouds/azurecompute/arm/compute/extensions/AzureComputeSecurityGroupExtension.java
 (10)

-- Patch Links --

https://github.com/jclouds/jclouds-labs/pull/399.patch
https://github.com/jclouds/jclouds-labs/pull/399.diff

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds-labs/pull/399


Re: [jclouds/jclouds] JCLOUDS-1307: Invalidate security groups even if already externally deleted. (#1111)

2017-06-27 Thread Svet
Closed #.

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds/pull/#event-1140247250

Re: [jclouds/jclouds] JCLOUDS-1307: aws-ec2: Invalidate SG on removal even if already externally deleted (#1113)

2017-06-27 Thread Svet
Thanks @nacx, merged in 
[master](https://git1-us-west.apache.org/repos/asf/jclouds/?p=jclouds.git;a=commit;h=65ba26eca7d63b6b7cef70386f00425438318825)
 and 
[2.0.x](https://git1-us-west.apache.org/repos/asf/jclouds/?p=jclouds.git;a=commit;h=502d749680e98fbe0d32c14faea8017da40f3030)

-- 
You are receiving this because you modified the open/close state.
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds/pull/1113#issuecomment-311320190

Re: [jclouds/jclouds] JCLOUDS-1307: Invalidate security groups even if already externally deleted. (#1111)

2017-06-27 Thread Svet
Thanks @nacx, merged in 
[master](https://git1-us-west.apache.org/repos/asf/jclouds/?p=jclouds.git;a=commit;h=624e4cb6af605be6bbb11637c4b60324dd6f5a11)
 and 
[2.0.x](https://git1-us-west.apache.org/repos/asf/jclouds/?p=jclouds.git;a=commit;h=a2863b2a3c3d57e9c9909c5b9f4bba8ac071b3dc)

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds/pull/#issuecomment-311320236

Re: [jclouds/jclouds] JCLOUDS-1307: Invalidate security groups even if already externally deleted. (#1111)

2017-06-14 Thread Svet
I've split the `aws-ec2` changes into a sperate PR 
https://github.com/jclouds/jclouds/pull/1113

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds/pull/#issuecomment-308454066

[jclouds/jclouds] JCLOUDS-1307: aws-ec2: Invalidate SG on removal even if already externally deleted (#1113)

2017-06-14 Thread Svet
Splitting the amazon changes from https://github.com/jclouds/jclouds/pull/ 
into this PR to make it easier to merge.

I've already tested these changes.
You can view, comment on, or merge this pull request online at:

  https://github.com/jclouds/jclouds/pull/1113

-- Commit Summary --

  * JCLOUDS-1307: Invalidate SG on removal even if already externally deleted

-- File Changes --

M 
providers/aws-ec2/src/main/java/org/jclouds/aws/ec2/compute/extensions/AWSEC2SecurityGroupExtension.java
 (12)

-- Patch Links --

https://github.com/jclouds/jclouds/pull/1113.patch
https://github.com/jclouds/jclouds/pull/1113.diff

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds/pull/1113


[jclouds/jclouds] JCLOUDS-1307: Invalidate security groups even if already externally deleted. (#1111)

2017-06-09 Thread Svet
https://issues.apache.org/jira/browse/JCLOUDS-1307
You can view, comment on, or merge this pull request online at:

  https://github.com/jclouds/jclouds/pull/

-- Commit Summary --

  * [JCLOUDS-1306] Fix SG cache invalidation when deleting
  * JCLOUDS-1307: Invalidate SG on removal even if already externally deleted

-- File Changes --

M 
apis/cloudstack/src/main/java/org/jclouds/cloudstack/compute/extensions/CloudStackSecurityGroupExtension.java
 (20)
M 
apis/ec2/src/main/java/org/jclouds/ec2/compute/extensions/EC2SecurityGroupExtension.java
 (11)
M 
apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v2_0/compute/extensions/NovaSecurityGroupExtension.java
 (18)
M 
compute/src/test/java/org/jclouds/compute/extensions/internal/BaseSecurityGroupExtensionLiveTest.java
 (66)
M 
providers/aws-ec2/src/main/java/org/jclouds/aws/ec2/compute/extensions/AWSEC2SecurityGroupExtension.java
 (12)

-- Patch Links --

https://github.com/jclouds/jclouds/pull/.patch
https://github.com/jclouds/jclouds/pull/.diff

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds/pull/


Re: [jclouds/jclouds] [JCLOUDS-1306] Fix SG cache invalidation when deleting (#1110)

2017-06-09 Thread Svet
Yes, I think it would be useful to backport.

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds/pull/1110#issuecomment-307339354

Re: [jclouds/jclouds] [JCLOUDS-1306] Fix SG cache invalidation when deleting (#1110)

2017-06-09 Thread Svet
neykov commented on this pull request.



> @@ -191,14 +191,20 @@ public boolean removeSecurityGroup(String id) {
  return false;
   }
 
-  if (sgApi.get().get(groupId) == null) {
- return false;
+  // Would be nice to delete the group and invalidate the cache atomically 
- i.e. use a mutex.
+  // Will make sure that a create operation in parallel won't see 
inconsistent state.
+
+  boolean deleted = sgApi.get().delete(groupId);
+
+  for (SecurityGroupInRegion cachedSg : groupCreator.asMap().values()) {

Yes - the security group could've been deleted externally and the local cache 
still holds a reference to the group. This tries to avoid the situation 
described in https://issues.apache.org/jira/browse/JCLOUDS-1307.

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds/pull/1110#discussion_r121081636

Re: [jclouds/jclouds] [JCLOUDS-1306] Fix SG cache invalidation when deleting (#1110)

2017-06-09 Thread Svet
neykov commented on this pull request.



> @@ -191,14 +191,20 @@ public boolean removeSecurityGroup(String id) {
  return false;
   }
 
-  if (sgApi.get().get(groupId) == null) {
- return false;
+  // Would be nice to delete the group and invalidate the cache atomically 
- i.e. use a mutex.
+  // Will make sure that a create operation in parallel won't see 
inconsistent state.
+
+  boolean deleted = sgApi.get().delete(groupId);

The return value is false. This code path is covered in the test 
`testSecurityGroupCacheInvalidatedWhenDeletedExternally`

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds/pull/1110#discussion_r121081494

Re: [jclouds/jclouds] [JCLOUDS-1306] Fix SG cache invalidation when deleting (#1110)

2017-06-09 Thread Svet
The test `deleteSecurityGroupFromAnotherView ` will fail on aws-ec2 and 
probably other implementations, will address those separately. See 
https://issues.apache.org/jira/browse/JCLOUDS-1307.

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds/pull/1110#issuecomment-307337452

[jclouds/jclouds] [JCLOUDS-1306] Fix SG cache invalidation when deleting (#1110)

2017-06-09 Thread Svet
When deleting a security group on openstack-nova the cache is not invalidated 
correctly, so the next create operation will fetch the group from local cache 
instead of re-creating it in the cloud. Subsequent operations will fail due to 
the missing group and stale ID.

https://issues.apache.org/jira/browse/JCLOUDS-1306

You can view, comment on, or merge this pull request online at:

  https://github.com/jclouds/jclouds/pull/1110

-- Commit Summary --

  * [Openstack] Fix SG cache invalidation when deleting

-- File Changes --

M 
apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v2_0/compute/extensions/NovaSecurityGroupExtension.java
 (18)
M 
apis/openstack-nova/src/test/java/org/jclouds/openstack/nova/v2_0/compute/extensions/NovaSecurityGroupExtensionLiveTest.java
 (63)

-- Patch Links --

https://github.com/jclouds/jclouds/pull/1110.patch
https://github.com/jclouds/jclouds/pull/1110.diff

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds/pull/1110


Re: [jclouds/jclouds-cli] Reference super features in assembly module (#37)

2017-05-31 Thread Svet
Closed #37.

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds-cli/pull/37#event-1103788916

Re: [jclouds/jclouds] JCLOUDS-1295: Support deprecated date formats in the Expires header (#1107)

2017-05-29 Thread Svet
Merged into 
[master](https://git1-us-west.apache.org/repos/asf/jclouds/?p=jclouds.git;a=commit;h=db2f86bcecfe0d68183a166ad07a7f996d332539)
 and 
[2.0.x](https://git1-us-west.apache.org/repos/asf/jclouds/?p=jclouds.git;a=commit;h=db4f191b5f8a4d2e77e999f3f6824b2e531bb5e8).

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds/pull/1107#issuecomment-304669359

Re: [jclouds/jclouds] JCLOUDS-1295: Support deprecated date formats in the Expires header (#1107)

2017-05-29 Thread Svet
Agree, changes look good. Merging.

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds/pull/1107#issuecomment-304667087

Re: [jclouds/jclouds] JCLOUDS-1295: Support deprecated date formats in the Expires header (#1107)

2017-05-29 Thread Svet
@nacx there's no change, the fallback fails to parse the header value which is 
`-1`.

I captured the traffic with wireshark and indeed the value is `-1`, contrary to 
what the headers log show. Here's the wireshark capture:

```
HTTP/1.1 200 OK
Cache-Control: no-cache
Pragma: no-cache
Content-Type: application/json; charset=utf-8
Content-Encoding: gzip
Expires: -1
Vary: Accept-Encoding
x-ms-ratelimit-remaining-subscription-reads: 14998
x-ms-request-id: f6cce7d2-63df-4d29-b03c-c4858e10a8ee
x-ms-correlation-request-id: f6cce7d2-63df-4d29-b03c-c4858e10a8ee
x-ms-routing-request-id: 
WESTEUROPE:20170529T124513Z:f6cce7d2-63df-4d29-b03c-c4858e10a8ee
Strict-Transport-Security: max-age=31536000; includeSubDomains
Date: Mon, 29 May 2017 12:45:13 GMT
Content-Length: 1850
```

And the headers log:

```
2017-05-29 15:45:13,958 DEBUG 107 j.headers [ager-DOccEjYP-24] << HTTP/1.1 200 
OK
2017-05-29 15:45:13,958 DEBUG 107 j.headers [ager-DOccEjYP-24] << Date: Mon, 29 
May 2017 12:45:13 GMT
2017-05-29 15:45:13,958 DEBUG 107 j.headers [ager-DOccEjYP-24] << 
OkHttp-Received-Millis: 1496061913957
2017-05-29 15:45:13,958 DEBUG 107 j.headers [ager-DOccEjYP-24] << 
OkHttp-Selected-Protocol: http/1.1
2017-05-29 15:45:13,958 DEBUG 107 j.headers [ager-DOccEjYP-24] << 
OkHttp-Sent-Millis: 1496061913849
2017-05-29 15:45:13,958 DEBUG 107 j.headers [ager-DOccEjYP-24] << Pragma: 
no-cache
2017-05-29 15:45:13,958 DEBUG 107 j.headers [ager-DOccEjYP-24] << 
Strict-Transport-Security: max-age=31536000; includeSubDomains
2017-05-29 15:45:13,958 DEBUG 107 j.headers [ager-DOccEjYP-24] << Vary: 
Accept-Encoding
2017-05-29 15:45:13,958 DEBUG 107 j.headers [ager-DOccEjYP-24] << 
x-ms-correlation-request-id: f6cce7d2-63df-4d29-b03c-c4858e10a8ee
2017-05-29 15:45:13,959 DEBUG 107 j.headers [ager-DOccEjYP-24] << 
x-ms-ratelimit-remaining-subscription-reads: 14998
2017-05-29 15:45:13,959 DEBUG 107 j.headers [ager-DOccEjYP-24] << 
x-ms-request-id: f6cce7d2-63df-4d29-b03c-c4858e10a8ee
2017-05-29 15:45:13,959 DEBUG 107 j.headers [ager-DOccEjYP-24] << 
x-ms-routing-request-id: 
WESTEUROPE:20170529T124513Z:f6cce7d2-63df-4d29-b03c-c4858e10a8ee
2017-05-29 15:45:13,959 DEBUG 107 j.headers [ager-DOccEjYP-24] << 
Cache-Control: no-cache
2017-05-29 15:45:13,959 DEBUG 107 j.headers [ager-DOccEjYP-24] << Content-Type: 
application/json; charset=utf-8
2017-05-29 15:45:13,959 DEBUG 107 j.headers [ager-DOccEjYP-24] << Expires: Thu 
Jan 01 02:00:00 EET 1970
```

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds/pull/1107#issuecomment-304653809

Re: [jclouds/jclouds-labs] Adding support for provisioning of Windows VMs with enabled WinRM (#393)

2017-05-25 Thread Svet
Added to 
[2.0.x](https://git1-us-west.apache.org/repos/asf?p=jclouds-labs.git;a=commit;h=c4a91d2d909a4edf52adf1367b5353d81cde681b).

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds-labs/pull/393#issuecomment-304024872

Re: [jclouds/jclouds-labs] Adding support for provisioning of Windows VMs with enabled WinRM (#393)

2017-05-25 Thread Svet
Merged to 
[master](https://git1-us-west.apache.org/repos/asf?p=jclouds-labs.git;a=commit;h=6e0cbc915cfb1e3f0cb9cdafd3b56b948e0e80a8).

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds-labs/pull/393#issuecomment-304011560

Re: [jclouds/jclouds-labs] Adding support for provisioning of Windows VMs with enabled WinRM (#393)

2017-05-25 Thread Svet
Thanks @ygy and all reviewers. Changes look good. Merging.

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds-labs/pull/393#issuecomment-304010462

Re: [jclouds/jclouds-karaf] Fix Chef commands (#104)

2017-05-12 Thread Svet
LGTM

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds-karaf/pull/104#issuecomment-301000767

Re: [jclouds/jclouds-karaf] JCLOUDS-944: JCLOUDS-1272: Update B2 and GCS deps (#101)

2017-05-09 Thread Svet
neykov requested changes on this pull request.

Need to update tests as well, see build failures and 
https://github.com/jclouds/jclouds-karaf/blob/master/itests/src/test/java/org/jclouds/karaf/itests/FeatureLabsInstallationTest.java

> @@ -549,7 +551,7 @@ limitations under the License.
 jclouds-blobstore
 jclouds-api-oauth
 mvn:org.apache.jclouds.common/googlecloud/${jclouds.version}
-
mvn:org.apache.jclouds.labs/google-cloud-storage/${jclouds.version}
+
mvn:org.apache.jclouds.feature/google-cloud-storage/${jclouds.version}

Should be `provider` instead of `feature`.

> @@ -18,11 +18,6 @@ limitations under the License.
 http://karaf.apache.org/xmlns/features/v1.0.0;>
 
mvn:org.apache.jclouds.karaf/jclouds-karaf/${jclouds.version}/xml/features
 
-
-jclouds-b2
-jclouds-google-cloud-storage
-
-

I suggest we keep this empty. This will let projects depending on it to:
  * not break
  * not care when modules are added/removed

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds-karaf/pull/101#pullrequestreview-36949031

Re: [jclouds/jclouds] JCLOUDS-1269; JCLOUDS-1120: ec2 subnet/securityGroups in non-default vpc (#1091)

2017-04-28 Thread Svet
neykov commented on this pull request.



> public AWSSubnetApiLiveTest() {
   provider = "aws-ec2";
}
+
+   private AWSEC2Api api;
+   private Subnet subnet;
+
+   @Override
+   @BeforeClass(groups = { "integration", "live" })
+   public void setupContext() {
+  super.setupContext();
+  api = view.unwrapApi(AWSEC2Api.class);
+   }
+
+   @Test
+   public void testCreateSubnetInRegion() {
+//  subnet = subnetApi().createSubnetInRegion();
+//  assertNotNull(subnet);

Why is the test code commented out?

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds/pull/1091#pullrequestreview-35386111

Re: [jclouds/jclouds] JCLOUDS-1269; JCLOUDS-1120: ec2 subnet/securityGroups in non-default vpc (#1091)

2017-04-28 Thread Svet
neykov commented on this pull request.



> @@ -102,7 +104,17 @@ private String createSecurityGroupInRegion(String 
> region, String name, String vp
.build());
 }
 
-String myOwnerId = 
Iterables.get(securityApi.describeSecurityGroupsInRegion(region, name), 
0).getOwnerId();
+// Use filter (as per `SecurityGroupPresent`, in 
securityGroupEventualConsistencyDelay)
+Set securityGroups = 
securityApi.describeSecurityGroupsInRegionWithFilter(region,
+  ImmutableMultimap.of("group-name", name));

You could use the `id` of the security group with a `group-id` filter here. 
Same for `securityGroupEventualConsistencyDelay`, by passing `new 
RegionAndName(region, id)`. The ID is unique for the region, while the name can 
be the same between VPCs - will guarantee that you don't get multiple results 
here.


-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds/pull/1091#pullrequestreview-35385538

[jclouds/jclouds-cli] WIP Upgrade Karaf (#38)

2017-04-11 Thread Svet
That's my current progress with upgrading to latest Karaf. A lot of things to 
take care of, but wanted to get this visible. Not even worth a review.
Most interesting are the changes in `Main.java`.

Currently uses Karaf `4.0.1` - later patch versions make API changes which need 
further investigation.

I got it to the point to compile and start Karaf, but it fails loading the 
features, again not recognizing the `1.4.0` namespace version. It's not even 
[documented](https://karaf.apache.org/manual/latest/#_namespaces) so it's not 
clear which version supports it. This is an indication we need to downgrade the 
`jclouds-karaf` namespace to something more widely supported.
You can view, comment on, or merge this pull request online at:

  https://github.com/jclouds/jclouds-cli/pull/38

-- Commit Summary --

  * WIP Upgrade karaf dependency

-- File Changes --

M assembly/pom.xml (280)
M assembly/src/main/assembly/unix.xml (6)
M assembly/src/main/assembly/win.xml (6)
D assembly/src/main/filtered-resources/etc/custom.properties (33)
D assembly/src/main/filtered-resources/etc/log4j.properties (27)
D assembly/src/main/filtered-resources/etc/org.apache.jclouds.shell.cfg (53)
D assembly/src/main/filtered-resources/etc/org.apache.karaf.features.cfg 
(19)
D 
assembly/src/main/filtered-resources/etc/org.apache.karaf.features.repos.cfg 
(19)
D assembly/src/main/filtered-resources/etc/shell.init.script (21)
D assembly/src/main/filtered-resources/etc/startup.properties (50)
D assembly/src/main/filtered-resources/unix/bin/chef (91)
D assembly/src/main/filtered-resources/unix/bin/jclouds (55)
D assembly/src/main/filtered-resources/unix/bin/shell (332)
D assembly/src/main/filtered-resources/win/bin/chef.bat (134)
D assembly/src/main/filtered-resources/win/bin/jclouds.bat (102)
D assembly/src/main/filtered-resources/win/bin/shell.bat (133)
M project/pom.xml (30)
M runner/pom.xml (7)
M runner/src/main/java/org/jclouds/cli/runner/Main.java (230)

-- Patch Links --

https://github.com/jclouds/jclouds-cli/pull/38.patch
https://github.com/jclouds/jclouds-cli/pull/38.diff

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds-cli/pull/38


Re: [jclouds/jclouds-cli] Reference super features in assembly module (#37)

2017-03-27 Thread Svet
@nacx you beat me to it. I'll give updating the commands a go.


-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds-cli/pull/37#issuecomment-289388616

Re: [jclouds/jclouds-labs] Improve vagrant docs (#373)

2017-03-20 Thread Svet
Addressed comments.

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds-labs/pull/373#issuecomment-287872812

[jclouds/jclouds] Create and attach tests sources as artifacts (#1079)

2017-03-20 Thread Svet
Will create `-test-sources.jar` corresponding to the `-tests.jar` binaries. 
Analogously to the sources generated for the release jar.
Very useful when writing tests in the IDE, needing to consult other test files 
we are depending on (say `BaseContextLiveTest`).
You can view, comment on, or merge this pull request online at:

  https://github.com/jclouds/jclouds/pull/1079

-- Commit Summary --

  * Create and attach tests sources as artifacts

-- File Changes --

M project/pom.xml (1)

-- Patch Links --

https://github.com/jclouds/jclouds/pull/1079.patch
https://github.com/jclouds/jclouds/pull/1079.diff

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds/pull/1079


Re: [jclouds/jclouds-cli] Reference super features in assembly module (#37)

2017-03-20 Thread Svet
Tested successfully on top of both 
https://github.com/jclouds/jclouds-karaf/pull/100 and 
https://github.com/jclouds/jclouds-karaf/pull/99.

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds-cli/pull/37#issuecomment-287800676

Re: [jclouds/jclouds-cli] Reference super features in assembly module (#37)

2017-03-20 Thread Svet
Nice find @demobox, @nacx - added it back in 
https://github.com/jclouds/jclouds-karaf/pull/100.

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds-cli/pull/37#issuecomment-287789846

[jclouds/jclouds-karaf] Attach config files referenced in the features as artifacts (#100)

2017-03-20 Thread Svet
Adds back (a bit simplified) the maven config which creates artifacts out of 
the config files used in the feature.xml.
You can view, comment on, or merge this pull request online at:

  https://github.com/jclouds/jclouds-karaf/pull/100

-- Commit Summary --

  * Attach config files referenced in the features as artifacts

-- File Changes --

M feature/pom.xml (28)

-- Patch Links --

https://github.com/jclouds/jclouds-karaf/pull/100.patch
https://github.com/jclouds/jclouds-karaf/pull/100.diff

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds-karaf/pull/100


Re: [jclouds/jclouds-karaf] Add back the cloudsigma-api feature for backwards compatibility (#99)

2017-03-20 Thread Svet
Good spot @demobox. Updated.
Now testing with jclouds-cli, though "it shouldn't matter (tm)" :).

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds-karaf/pull/99#issuecomment-287786218

[jclouds/jclouds-labs] Improve vagrant docs (#373)

2017-03-19 Thread Svet
Also makes the windows image optional for tests - skips the tests if not found.
You can view, comment on, or merge this pull request online at:

  https://github.com/jclouds/jclouds-labs/pull/373

-- Commit Summary --

  * Make the windows image optional
  * Improve vagrant docs

-- File Changes --

M vagrant/README.md (17)
M vagrant/pom.xml (2)
M vagrant/src/main/java/org/jclouds/vagrant/functions/BoxToImage.java (4)
M 
vagrant/src/main/java/org/jclouds/vagrant/internal/VagrantNodeRegistry.java (69)
M vagrant/src/test/java/org/jclouds/vagrant/compute/WindowsLiveTest.java 
(15)

-- Patch Links --

https://github.com/jclouds/jclouds-labs/pull/373.patch
https://github.com/jclouds/jclouds-labs/pull/373.diff

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds-labs/pull/373


Re: [jclouds/jclouds-cli] Reference super features in assembly module (#37)

2017-03-19 Thread Svet
Correction on my comment above @andreaturli. This does require 
https://github.com/jclouds/jclouds-karaf/pull/98 to build successfully. And 
https://github.com/jclouds/jclouds-karaf/pull/99 is not needed, it's just good 
to have.

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds-cli/pull/37#issuecomment-287624286

Re: [jclouds/jclouds-karaf] Add back the cloudsigma-api feature for backwards compatibility (#99)

2017-03-19 Thread Svet
@andreaturli Either this PR or https://github.com/jclouds/jclouds-cli/pull/37 
will fix the build. Thought it's useful to add anyway for backwards 
compatibility, in case other projects depend on it.

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds-karaf/pull/99#issuecomment-287624207

Re: [jclouds/jclouds-karaf] Add back the cloudsigma-api feature for backwards compatibility (#99)

2017-03-19 Thread Svet
neykov commented on this pull request.



> @@ -516,32 +521,27 @@ limitations under the License.
 
 
 
-jclouds-compute

Goot point @demobox. I reverted the changes for the sake of consistency. Still 
think it's the right thing to do though. Perhaps something to take care of in 
another PR.

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds-karaf/pull/99#discussion_r106809148

Re: [jclouds/jclouds-cli] Reference super features in assembly module (#37)

2017-03-18 Thread Svet
neykov commented on this pull request.



>
   
 config
-jclouds
-jclouds-commands
-jclouds-compute
-jclouds-guice

`jclouds-guice`, `jclouds` is included by `jclouds-compute` and it is included 
by all the compute features. `jclouds-commands` is kept further below. It's 
like maven transitive features, don't need to mention them if we don't directly 
depend on them.

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds-cli/pull/37#discussion_r106787537

Re: [jclouds/jclouds-cli] Reference super features in assembly module (#37)

2017-03-18 Thread Svet
@andreaturli This doesn't need `jclouds-karaf#98`. It's just for backwards 
compatibility.
@demobox I've tried the distribution with `bin/jclouds` - it's working as 
expected.

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds-cli/pull/37#issuecomment-287564428

[jclouds/jclouds-karaf] Add back the cloudsigma-api feature for backwards compatibility (#99)

2017-03-18 Thread Svet

You can view, comment on, or merge this pull request online at:

  https://github.com/jclouds/jclouds-karaf/pull/99

-- Commit Summary --

  * Add back the cloudsigma-api feature for backwards compatibility

-- File Changes --

M feature/src/main/feature/feature.xml (20)

-- Patch Links --

https://github.com/jclouds/jclouds-karaf/pull/99.patch
https://github.com/jclouds/jclouds-karaf/pull/99.diff

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds-karaf/pull/99


[jclouds/jclouds-cli] Reference super features in assembly module (#37)

2017-03-18 Thread Svet

You can view, comment on, or merge this pull request online at:

  https://github.com/jclouds/jclouds-cli/pull/37

-- Commit Summary --

  * Reference super features in assembly module

-- File Changes --

M assembly/pom.xml (60)

-- Patch Links --

https://github.com/jclouds/jclouds-cli/pull/37.patch
https://github.com/jclouds/jclouds-cli/pull/37.diff

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds-cli/pull/37


[jclouds/jclouds-karaf] Group labs features in super features (#98)

2017-03-18 Thread Svet

You can view, comment on, or merge this pull request online at:

  https://github.com/jclouds/jclouds-karaf/pull/98

-- Commit Summary --

  * Group labs features in super features

-- File Changes --

M feature-labs/src/main/feature/feature.xml (16)

-- Patch Links --

https://github.com/jclouds/jclouds-karaf/pull/98.patch
https://github.com/jclouds/jclouds-karaf/pull/98.diff

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds-karaf/pull/98


Re: [jclouds/jclouds-karaf] Improvements to feature (#92)

2017-03-17 Thread Svet
LGTM.

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds-karaf/pull/92#issuecomment-287320844

Re: [jclouds/jclouds-karaf] Improvements to feature (#92)

2017-03-07 Thread Svet
neykov commented on this pull request.



> +  featuresService.installFeature("jclouds-rackspace-cloudfiles-us");
+   }
+
+   @Test
+   public void testServerloveZ1ManFeature() throws Exception {
+  featuresService.installFeature("jclouds-serverlove-z1-man");
+   }
+
+   @Test
+   public void testSkalicloudSdgMyFeature() throws Exception {
+  featuresService.installFeature("jclouds-skalicloud-sdg-my");
+   }
+
+   @Test
+   public void testSoftlayerFeature() throws Exception {
+  featuresService.installFeature("jclouds-softlayer");

It doesn't use a container - just does the bundle wiring step to make sure its 
dependencies can be met. Which is essentially what we are doing here. These 
tests would still be needed for more complex integration testing.
This is just FYI, no action needed. It's already a huge improvement to what was 
there before.

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds-karaf/pull/92#discussion_r104717822

Re: [jclouds/jclouds-karaf] Improvements to feature (#92)

2017-03-07 Thread Svet
neykov approved this pull request.

All good - some minor cleanups noted.

> -
+
+jclouds-compute
+jclouds-api-sts
+
mvn:org.apache.jclouds.api/cloudwatch/${jclouds.version}
+
+
+
+jclouds-compute
+jclouds-driver-bouncycastle
+jclouds-driver-okhttp
+jclouds-api-oauth
+mvn:org.apache.jclouds.api/docker/${jclouds.version}
+
+
+

Leftover `resolver` attribute here and elsewhere in the file.

> +jclouds-cloudsigma2-hnl
+jclouds-cloudsigma2-lvs
+jclouds-cloudsigma2-sjc
+jclouds-cloudsigma2-wdc
+jclouds-cloudsigma2-zrh
+jclouds-google-cloud-storage
+jclouds-packet
+jclouds-vagrant
+
+target/features-repo
+
+
+
+
+
+

That's probably a historic baggage. All that's needed in a feature pom is:
```
...
.
feature




org.apache.karaf.tooling
karaf-maven-plugin
${karaf.plugin.version}
true



```

To verify it's still working after the change make sure you still have the 
following two in your logs:
```
[INFO] Installing .../jclouds-karaf/feature-labs/pom.xml to 
/Users/svet/.m2/repository/org/apache/jclouds/karaf/jclouds-karaf-labs/2.1.0-SNAPSHOT/jclouds-karaf-labs-2.1.0-SNAPSHOT.pom
[INFO] Installing .../jclouds-karaf/feature-labs/target/feature-labs.xml to 
/Users/svet/.m2/repository/org/apache/jclouds/karaf/jclouds-karaf-labs/2.1.0-SNAPSHOT/jclouds-karaf-labs-2.1.0-SNAPSHOT-features.xml
```


Same for the non-labs feature pom.

> + dependency='true'>mvn:org.apache.jclouds.common/googlecloud/${jclouds.version}
+
mvn:org.apache.jclouds.labs/google-cloud-storage/${jclouds.version}
+
+
+
+jclouds-compute
+mvn:org.apache.jclouds.labs/packet/${jclouds.version}
+
+
+
+jclouds-compute
+mvn:name.neykov/vagrant-java-bindings/${vagrant-java-bindings.version}
+mvn:org.apache.jclouds.labs/vagrant/${jclouds.version}
+
+
+

You can remove these now that they are in feature-labs.

> +  featuresService.installFeature("jclouds-rackspace-cloudfiles-us");
+   }
+
+   @Test
+   public void testServerloveZ1ManFeature() throws Exception {
+  featuresService.installFeature("jclouds-serverlove-z1-man");
+   }
+
+   @Test
+   public void testSkalicloudSdgMyFeature() throws Exception {
+  featuresService.installFeature("jclouds-skalicloud-sdg-my");
+   }
+
+   @Test
+   public void testSoftlayerFeature() throws Exception {
+  featuresService.installFeature("jclouds-softlayer");

For future updates - I believe these "install" tests can be done more 
efficiently with the `verify` goal of the `maven-karaf-plugin`.

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds-karaf/pull/92#pullrequestreview-25492747

Re: [jclouds/jclouds-labs] Fix NPE in building node metadata (#367)

2017-03-02 Thread Svet
neykov requested changes on this pull request.



> @@ -179,8 +180,15 @@ public String apply(Status input) {
   Credentials credentials = credentialStore.get("node#" + 
virtualMachine.name());
   builder.credentials(LoginCredentials.fromCredentials(credentials));
 
-  
builder.publicAddresses(getPublicIpAddresses(virtualMachine.properties().networkProfile().networkInterfaces()));
-  
builder.privateAddresses(getPrivateIpAddresses(virtualMachine.properties().networkProfile().networkInterfaces()));
+  Iterable publicIpAddresses = 
getPublicIpAddresses(virtualMachine.properties().networkProfile().networkInterfaces());
+  Iterable privateIpAddresses = 
getPrivateIpAddresses(virtualMachine.properties().networkProfile().networkInterfaces());
+
+  if (!Iterables.all(publicIpAddresses, Predicates.isNull())) {

Better fix the implementation of `getPublicIpAddresses` and 
`getPrivateIpAddresses` to skip over null values. This will reject the whole 
collection and there could be valid values in it.

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds-labs/pull/367#pullrequestreview-24781128

Re: [jclouds/jclouds-labs] Fix NPE in building node metadata (#367)

2017-03-02 Thread Svet
For completeness here's the exception this is trying to fix:
```
Caused by: java.lang.NullPointerException
at com.google.common.base.Preconditions.checkNotNull(Preconditions.java:210)
at 
com.google.common.collect.SingletonImmutableSet.(SingletonImmutableSet.java:47)
at com.google.common.collect.ImmutableSet.of(ImmutableSet.java:94)
at com.google.common.collect.ImmutableSet.construct(ImmutableSet.java:185)
at com.google.common.collect.ImmutableSet.copyOf(ImmutableSet.java:375)
at com.google.common.collect.ImmutableSet.copyOf(ImmutableSet.java:300)
at 
org.jclouds.compute.domain.NodeMetadataBuilder.publicAddresses(NodeMetadataBuilder.java:73)
at 
org.jclouds.azurecompute.arm.compute.functions.VirtualMachineToNodeMetadata.apply(VirtualMachineToNodeMetadata.java:180)
at 
org.jclouds.azurecompute.arm.compute.functions.VirtualMachineToNodeMetadata.apply(VirtualMachineToNodeMetadata.java:78)
at 
com.google.common.base.Functions$FunctionComposition.apply(Functions.java:216)
at com.google.common.collect.Iterators$8.transform(Iterators.java:799)
at 
com.google.common.collect.TransformedIterator.next(TransformedIterator.java:48)
at com.google.common.collect.Iterators$7.computeNext(Iterators.java:651)
at 
com.google.common.collect.AbstractIterator.tryToComputeNext(AbstractIterator.java:143)
at 
com.google.common.collect.AbstractIterator.hasNext(AbstractIterator.java:138)
at com.google.common.collect.Iterators.indexOf(Iterators.java:776)
at com.google.common.collect.Iterators.any(Iterators.java:684)
at com.google.common.collect.Iterables.any(Iterables.java:623)
at 
org.jclouds.compute.strategy.impl.CreateNodesWithGroupEncodedIntoNameThenAddToSet.getNextNames(CreateNodesWithGroupEncodedIntoNameThenAddToSet.java:199)
at 
org.jclouds.compute.strategy.impl.CreateNodesWithGroupEncodedIntoNameThenAddToSet.execute(CreateNodesWithGroupEncodedIntoNameThenAddToSet.java:123)
at 
org.jclouds.azurecompute.arm.compute.strategy.CreateResourceGroupThenCreateNodes.execute(CreateResourceGroupThenCreateNodes.java:133)
at 
org.jclouds.compute.internal.BaseComputeService.createNodesInGroup(BaseComputeService.java:217)

```

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds-labs/pull/367#issuecomment-283707609

Re: [jclouds/jclouds-labs] Improve image lookup when getting node info (#359)

2017-02-27 Thread Svet
LGTM. Could still use the image cache and fall back to `getImage` only if empty.

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds-labs/pull/359#issuecomment-282737375

[jclouds/jclouds-labs] vagrant: Tests can be executed concurrently - fix test assumptions (#364)

2017-02-17 Thread Svet
Tests from the same class are executed concurrently so don't share state in the 
class. Additionally use temporary files/folders to allow for parallel builds.
You can view, comment on, or merge this pull request online at:

  https://github.com/jclouds/jclouds-labs/pull/364

-- Commit Summary --

  * Tests can be executed concurrently - fix test assumptions

-- File Changes --

M vagrant/src/test/java/org/jclouds/vagrant/internal/BoxConfigTest.java (14)
M vagrant/src/test/java/org/jclouds/vagrant/internal/MachineConfigTest.java 
(53)

-- Patch Links --

https://github.com/jclouds/jclouds-labs/pull/364.patch
https://github.com/jclouds/jclouds-labs/pull/364.diff

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds-labs/pull/364


Re: [jclouds/jclouds-karaf] [DO NOT MERGE YET] Improvements to feature (#92)

2017-02-08 Thread Svet
neykov commented on this pull request.



> + dependency='true'>mvn:org.apache.jclouds.common/googlecloud/${jclouds.version}
+
mvn:org.apache.jclouds.labs/google-cloud-storage/${jclouds.version}
+
+
+
+jclouds-compute
+mvn:org.apache.jclouds.labs/packet/${jclouds.version}
+
+
+
+jclouds-compute
+mvn:name.neykov/vagrant-java-bindings/${vagrant-java-bindings.version}
+mvn:org.apache.jclouds.labs/vagrant/${jclouds.version}
+
+
+

Yes, another module with another artifactId.

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds-karaf/pull/92

Re: [jclouds/jclouds-karaf] [DO NOT MERGE YET] Improvements to feature (#92)

2017-02-08 Thread Svet
neykov commented on this pull request.



> +   private static final String FEATURES_XML = "features.xml";
+
+   @Inject
+   FeaturesService featuresService;
+
+   static File getFeaturesFile() throws URISyntaxException {
+  String featuresXml = System.getProperty(FEATURES_XML);
+  Assert.assertNotNull(featuresXml);
+  File featuresFile = new File(featuresXml);
+  Assert.assertNotNull(featuresFile.exists());
+  return featuresFile;
+   }
+
+   @Test
+   public void testJcloudsFeature() throws Exception {
+  featuresService.addRepository(getFeaturesFile().toURI());

Could move this line in the `setUp` stage.

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds-karaf/pull/92#pullrequestreview-20722915

Re: [jclouds/jclouds-karaf] [DO NOT MERGE YET] Improvements to feature (#92)

2017-02-08 Thread Svet
neykov commented on this pull request.



> + dependency='true'>mvn:org.apache.jclouds.common/googlecloud/${jclouds.version}
+
mvn:org.apache.jclouds.labs/google-cloud-storage/${jclouds.version}
+
+
+
+jclouds-compute
+mvn:org.apache.jclouds.labs/packet/${jclouds.version}
+
+
+
+jclouds-compute
+mvn:name.neykov/vagrant-java-bindings/${vagrant-java-bindings.version}
+mvn:org.apache.jclouds.labs/vagrant/${jclouds.version}
+
+
+

These are still in labs (and included in feature-labs) so remove from here?

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds-karaf/pull/92#pullrequestreview-20722694

Re: [jclouds/jclouds-karaf] [DO NOT MERGE YET] Improvements to feature (#92)

2017-02-08 Thread Svet
neykov commented on this pull request.



> @@ -52,38 +52,56 @@ limitations under the License.
 mvn:org.apache.jclouds.api/atmos/${jclouds.version}

Yes, it's not included in the latest schema above.

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds-karaf/pull/92

Re: [jclouds/jclouds] [JCLOUDS-1233] bump jax-rs version (#1057)

2017-02-03 Thread Svet
LGTM

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds/pull/1057#issuecomment-277221478

Re: [jclouds/jclouds-labs] vagrant: remove terminated nodes cache (#357)

2017-02-02 Thread Svet
TL;DR - We should keep the registry and expire the status only. Could save some 
of it in the machine description yaml.

---

That's correct @nacx. We see only machines we've created (with the exception of 
the initial load).

The provider serves the following purposes:
  1. holds information that's not available elsewhere - hostname and IPs
  2. cache of available machines
  3. cache of the machine state

To expand on each one:
  1. Hostname and IPs of the machine are fetched on boot using vagrant's 
provisioning scripts. There are a couple of reasons for that. First vagrant 
calls are very expensive (relatively for a local call). Each exec takes at 
least several seconds. Integrating them with the boot saves a couple of ssh 
calls. Second the windows winrm transport is available only through the 
provisioning scripts. Can't call "vagrant powershell " later. This makes 
the information available only when creating the machine.
Possible solutions:
  * Store those in the yaml file that's already being created, containing the 
machine specs to be passed to the `Vagrantfile` script. We are already storing 
some additional info in there like `imageId` and `hardwareId`. What I don't 
like about it is that the information could change so those values would become 
stale.
  * Query the machine when we need them. Not possible with Windows; not 
possible if the machine is halted.
  * Keep them as is (in memory only). When the process stops the information is 
lost. On a new start if doesn't know the hostname and IPs. Depending on the 
intended usage of the provider could be enough.
Possibly a combination of the above would work best, depending on the OS. 
Perhaps coupled with a refreshing mechanism.
The file could store other information like the tags and the metadata.

2. Existing machines list can be reconstructed easily - just listing the files 
on the disk. Here's the place to mention that machines created by jclouds 
follow some conventions. Manually created machines are not considered. The 
provider creates a `yaml` file describing the requirements and some meta, then 
a generic `Vagrantfile` reads those and creates a machine based on them. 
I'd say the provider is only interested in machines it creates though. Or 
machines created from previous runs. That's a local "service" and no concurrent 
modifications of the machines is expected. There could be parallel processes 
running the provider but still each one would manage its own machines. I'd even 
strongly discourage that since virtualbox (vboxmanage) has problems when it's 
executed in parallel. Currently the vagrant bindings explicitly serialise execs 
of `vagrant`.
So while it's possible to make this "live" I don't see it being useful.

3. Turns out we don't ever need to query the status of a machine. The key here 
is that the vagrant commands are synchronous. If `vagrant up` completes 
successfully then the status is `RUNNING`. If it fails an exception propagates 
and signals an error. This makes it possible to save on expensive state 
polling. It gets more obvious when several machines are spun up in parallel. 
Since `vagrant` commands are executed sequentially a `vagrant up` would block 
other `vagrant status` commands for quite a while.
Possible improvements:
  * time out the status value, refreshing it after some period on request


The registry allows us to really streamline machine creation. All it takes is a 
single `vagrant up`. It needs around a minute to return a usable machine 
(obviously depends on the image and is dominated by OS boot). Whereas before 
introducing the registry it would take at least 50% more. And it gets worse 
with the more machines being created in parallel.

And now to answer your questions :)

> we won't see the change. Is this correct? 

That's correct.

> And is this what we want? 

I think so. We are interested only in machines created by the same process. In 
future we could add  support for adopting external machines but don't see much 
value in that.

> (Is it that expensive to list the existing machines, that we need a cache?).

Listing is pretty quick, getting the status is not instantaneous. Worst is that 
long commands block shorter commands.
Vagrant explicitly disables parallel provisioning for machines in the same 
`Vagrantfile` for Virtualbox. When testing I also found that there are frequent 
and unexplained failures if I let it execute in parallel for different machines 
in different `Vagrantfile`s. That's why currently all execs are serialised.

> If it turns the cache is necessary, I'd suggest to add an expiration to the 
> the node memoized supplier according to the session timeout property.

Not absolutely needed, but very much welcome. Not quite convinced we should 
refresh machine list while running - wouldn't want to mess with another's 
process machines. Don't think Virtualbox will be happy with that. Agree we 
should expire the status.

---

The provider makes no assumptions about the 

[jclouds/jclouds-labs] vagrant: remove terminated nodes cache (#357)

2017-02-02 Thread Svet
Used to keep terminated nodes meta for a short while, but not needed.
Also adds missing state transitions on halt, reboot.
You can view, comment on, or merge this pull request online at:

  https://github.com/jclouds/jclouds-labs/pull/357

-- Commit Summary --

  * Remove terminated nodes cache

-- File Changes --

M 
vagrant/src/main/java/org/jclouds/vagrant/compute/VagrantComputeServiceAdapter.java
 (2)
M 
vagrant/src/main/java/org/jclouds/vagrant/config/VagrantComputeServiceContextModule.java
 (13)
M 
vagrant/src/main/java/org/jclouds/vagrant/internal/VagrantNodeRegistry.java (77)
M 
vagrant/src/test/java/org/jclouds/vagrant/internal/VagrantNodeRegistryTest.java 
(20)

-- Patch Links --

https://github.com/jclouds/jclouds-labs/pull/357.patch
https://github.com/jclouds/jclouds-labs/pull/357.diff

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds-labs/pull/357


Re: [jclouds/jclouds-labs] Load existing machines info on startup (#355)

2017-01-31 Thread Svet
neykov commented on this pull request.



> @@ -73,36 +93,41 @@ public long getDelay(TimeUnit unit) {
  return unit.convert(expiryTime - timeSupplier.get(), 
TimeUnit.MILLISECONDS);
   }
}
-   private Map nodes = new ConcurrentHashMap();
-   private DelayQueue terminatedNodes = new 
DelayQueue();
+
+   private final DelayQueue terminatedNodes = new 
DelayQueue();

Interesting. I'll check that - agree we shouldn't keep it if not needed.
Not related to this PR, so shouldn't block merge.

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds-labs/pull/355

Re: [jclouds/jclouds-labs] Load existing machines info on startup (#355)

2017-01-31 Thread Svet
>Could you also elaborate a bit the motivation behind having split the Vagrant 
>Facade in two different interfaces?

The `` started leaking in classes that don't really deal with boxes at all. 
Looking at the changes that must've been code that I've removed since as it was 
additional to `VagrantComputeServiceAdapter`. Still I think it's useful as 
`` is now confined just to `ImageSupplier` which indeed does handle `B`'s.

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds-labs/pull/355#issuecomment-276513508

  1   2   >