[GitHub] cloudstack pull request: CLOUDSTACK-9175: [VMware DRS] Adding new ...

2015-12-18 Thread resmo
Github user resmo commented on the pull request:

https://github.com/apache/cloudstack/pull/1248#issuecomment-165712661
  
since #1257 replaces this PR I would do so, yes.


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---


[GitHub] cloudstack pull request: CLOUDSTACK-9175: [VMware DRS] Adding new ...

2015-12-18 Thread sureshanaparti
Github user sureshanaparti commented on the pull request:

https://github.com/apache/cloudstack/pull/1248#issuecomment-165715666
  
@resmo ok sure. thanks!


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---


[GitHub] cloudstack pull request: CLOUDSTACK-8302: Removing snapshots on RB...

2015-12-18 Thread andrijapanic
Github user andrijapanic commented on the pull request:

https://github.com/apache/cloudstack/pull/1230#issuecomment-165716739
  
Anyone has any more feedback ? Should we merge?


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---


[GitHub] cloudstack pull request: CLOUDSTACK-8302: Removing snapshots on RB...

2015-12-18 Thread wido
Github user wido commented on the pull request:

https://github.com/apache/cloudstack/pull/1230#issuecomment-165717186
  
I'll see if I can run tests on it today with @borisroman on our dev setup


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---


[GitHub] cloudstack pull request: CLOUDSTACK-8302: Removing snapshots on RB...

2015-12-18 Thread wido
Github user wido commented on a diff in the pull request:

https://github.com/apache/cloudstack/pull/1230#discussion_r48005662
  
--- Diff: 
plugins/hypervisors/kvm/src/com/cloud/hypervisor/kvm/storage/KVMStorageProcessor.java
 ---
@@ -1274,7 +1274,45 @@ public Answer createVolumeFromSnapshot(final 
CopyCommand cmd) {
 
 @Override
 public Answer deleteSnapshot(final DeleteCommand cmd) {
-return new Answer(cmd);
+try {
+SnapshotObjectTO snapshotTO = (SnapshotObjectTO) cmd.getData();
+PrimaryDataStoreTO primaryStore = (PrimaryDataStoreTO) 
snapshotTO.getDataStore();
+VolumeObjectTO volume = snapshotTO.getVolume();
+String snapshotFullPath = snapshotTO.getPath();
+String snapshotName = 
snapshotFullPath.substring(snapshotFullPath.lastIndexOf("/") + 1);
+KVMStoragePool primaryPool = 
storagePoolMgr.getStoragePool(primaryStore.getPoolType(), 
primaryStore.getUuid());
+KVMPhysicalDisk disk = 
storagePoolMgr.getPhysicalDisk(primaryStore.getPoolType(), 
primaryStore.getUuid(), volume.getPath());
+if (primaryPool.getType() == StoragePoolType.RBD) {
+Rados r = new Rados(primaryPool.getAuthUserName());
+r.confSet("mon_host", primaryPool.getSourceHost() + ":" + 
primaryPool.getSourcePort());
+r.confSet("key", primaryPool.getAuthSecret());
+r.confSet("client_mount_timeout", "30");
+r.connect();
+s_logger.debug("Succesfully connected to Ceph cluster at " 
+ r.confGet("mon_host"));
+IoCTX io = r.ioCtxCreate(primaryPool.getSourceDir());
+Rbd rbd = new Rbd(io);
+RbdImage image = rbd.open(disk.getName());
+try {
+s_logger.info("Attempting to remove RBD snapshot " + 
disk.getName() + "@" + snapshotName);
+if (image.snapIsProtected(snapshotName)) {
+s_logger.debug("Unprotecting snapshot " + 
snapshotFullPath);
+image.snapUnprotect(snapshotName);
+}
+image.snapRemove(snapshotName);
+s_logger.info("Snapshot " + snapshotFullPath + " 
successfully removed.");
+} finally {
+rbd.close(image);
+r.ioCtxDestroy(io);
+}
+} else {
+s_logger.warn("Operation not implemented!");
+throw new InternalErrorException("Operation not 
implemented!");
--- End diff --

Can we also add the type of storage pool in this message? Now this line 
doesn't say much. snapshotTO and primaryStore should contain all the 
information you need


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---


RM wanted

2015-12-18 Thread Daan Hoogland
H all,

For 4.8 we need RMs. I will not continue with this job and if Remi does, he
shouldn't be on his own!

Any committer that feels like it is needed and they are capable, please
come forward. Of course, if you feel we can do without, please elaborate on
your views. I think this job can be shared amongst six people.

​regards,​
-- 
Daan


[GitHub] cloudstack pull request: [4.7.0/master] DB Paths fixes: 4.5.3->4.7...

2015-12-18 Thread DaanHoogland
Github user DaanHoogland commented on a diff in the pull request:

https://github.com/apache/cloudstack/pull/1247#discussion_r48008950
  
--- Diff: engine/schema/src/com/cloud/upgrade/DatabaseUpgradeChecker.java 
---
@@ -242,13 +243,13 @@ public DatabaseUpgradeChecker() {
 
 _upgradeMap.put("4.5.2", new DbUpgrade[] {new Upgrade452to460(), 
new Upgrade460to461(), new Upgrade461to470()});
 
-_upgradeMap.put("4.5.3", new DbUpgrade[] {new Upgrade453to460()});
+_upgradeMap.put("4.5.3", new DbUpgrade[] {new Upgrade453to460(), 
new Upgrade460to461(), new Upgrade461to470()});
 
 _upgradeMap.put("4.6.0", new DbUpgrade[] {new Upgrade460to461(), 
new Upgrade461to470()});
 
 _upgradeMap.put("4.6.1", new DbUpgrade[] {new Upgrade461to470()});
 
-_upgradeMap.put("4.6.2", new DbUpgrade[] {new Upgrade461to470()});
+_upgradeMap.put("4.6.2", new DbUpgrade[] {new Upgrade462to470()});
--- End diff --

there is no reason for this


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---


[GitHub] cloudstack pull request: [4.7.0/master] DB Paths fixes: 4.5.3->4.7...

2015-12-18 Thread DaanHoogland
Github user DaanHoogland commented on a diff in the pull request:

https://github.com/apache/cloudstack/pull/1247#discussion_r48008985
  
--- Diff: engine/schema/src/com/cloud/upgrade/dao/Upgrade462to470.java ---
@@ -0,0 +1,29 @@
+// Licensed to the Apache Software Foundation (ASF) under one
--- End diff --

there is no need for this file


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---


4.7.0 vote passed -> freeze is over

2015-12-18 Thread Daan Hoogland
Committers, please keep in mind our quality standards when executing your
liberty to merge.

-- 
Daan


Re: 4.7.0 vote passed -> freeze is over

2015-12-18 Thread sebgoa
Releases branches should only be written to by RMs.



On Dec 18, 2015, at 11:22 AM, Daan Hoogland  wrote:

> Committers, please keep in mind our quality standards when executing your
> liberty to merge.
> 
> -- 
> Daan



Re: 4.7.0 vote passed -> freeze is over

2015-12-18 Thread Daan Hoogland
Sebastien,

On Fri, Dec 18, 2015 at 11:36 AM, sebgoa  wrote:

> Releases branches should only be written to by RMs.
>
​Knowing how you feel about the process you mean 'master' as much as older
branches, right?

I would not want to be responsible for the growing number of PRs as RM.
(the main reason I will quit this job). At the release of 4.7 the number of
open PRs grew instead of shrunk. That could be a good sign if it coincided
with the growth of our development community but it doesn't.
​ ​
Our present way of working can not be maintained without people
volunteering 1 fte.​


On Dec 18, 2015, at 11:22 AM, Daan Hoogland  wrote:
>
> > Committers, please keep in mind our quality standards when executing your
> > liberty to merge.
> >
> > --
> > Daan
>
>


-- 
Daan


Re: 4.7.0 vote passed -> freeze is over

2015-12-18 Thread sebgoa

On Dec 18, 2015, at 11:44 AM, Daan Hoogland  wrote:

> Sebastien,
> 
> On Fri, Dec 18, 2015 at 11:36 AM, sebgoa  wrote:
> 
>> Releases branches should only be written to by RMs.
>> 
> ​Knowing how you feel about the process you mean 'master' as much as older
> branches, right?
> 
> I would not want to be responsible for the growing number of PRs as RM.
> (the main reason I will quit this job). At the release of 4.7 the number of
> open PRs grew instead of shrunk. That could be a good sign if it coincided
> with the growth of our development community but it doesn't.
> ​ ​
> Our present way of working can not be maintained without people
> volunteering 1 fte.​
> 

Mostly agree.

Just wish we could let Christmas pass by without breaking all the good work you 
guys did.
Then "sit down" and work on our next steps:

- automated CI
- use of github


> 
> On Dec 18, 2015, at 11:22 AM, Daan Hoogland  wrote:
>> 
>>> Committers, please keep in mind our quality standards when executing your
>>> liberty to merge.
>>> 
>>> --
>>> Daan
>> 
>> 
> 
> 
> -- 
> Daan



[GitHub] cloudstack pull request: CLOUDSTACK-9132: API createVolume takes e...

2015-12-18 Thread nitin-maharana
Github user nitin-maharana commented on the pull request:

https://github.com/apache/cloudstack/pull/1206#issuecomment-165757054
  
cc @koushik-das @kishankavala 


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---


Re: 4.7.0 vote passed -> freeze is over

2015-12-18 Thread Daan Hoogland
I had to let this sink in, Sebastien. I'm not at my 'I can' endurance
condition at the moment, sorry.

There is a consequence; Remi, our only RM has small kids and is on holidays
during the holidays, I understand. For all intended purposes we have a
freeze until January ;)


On Fri, Dec 18, 2015 at 12:21 PM, sebgoa  wrote:

>
> On Dec 18, 2015, at 11:44 AM, Daan Hoogland 
> wrote:
>
> > Sebastien,
> >
> > On Fri, Dec 18, 2015 at 11:36 AM, sebgoa  wrote:
> >
> >> Releases branches should only be written to by RMs.
> >>
> > ​Knowing how you feel about the process you mean 'master' as much as
> older
> > branches, right?
> >
> > I would not want to be responsible for the growing number of PRs as RM.
> > (the main reason I will quit this job). At the release of 4.7 the number
> of
> > open PRs grew instead of shrunk. That could be a good sign if it
> coincided
> > with the growth of our development community but it doesn't.
> > ​ ​
> > Our present way of working can not be maintained without people
> > volunteering 1 fte.​
> >
>
> Mostly agree.
>
> Just wish we could let Christmas pass by without breaking all the good
> work you guys did.
> Then "sit down" and work on our next steps:
>
> - automated CI
> - use of github
>
>
> >
> > On Dec 18, 2015, at 11:22 AM, Daan Hoogland 
> wrote:
> >>
> >>> Committers, please keep in mind our quality standards when executing
> your
> >>> liberty to merge.
> >>>
> >>> --
> >>> Daan
> >>
> >>
> >
> >
> > --
> > Daan
>
>


-- 
Daan


Re: 4.7.0 vote passed -> freeze is over

2015-12-18 Thread Remi Bergsma
There’s an important difference between “The RM merges to release branches” and 
“The RM should test everything on its own and then merge”. It’s more like the 
latter currently.

Unfortunately not many people review and test so this is not scalable. I will 
be offline next week only, so we should be OK. Currently I see no PRs that are 
ready for merge and contain new features. Worst case PRs have to wait ~10 days 
before they get merged. There will be no release anyway, so I don’t see the 
problem. If people do see a problem, then indeed it’d be nice to have multiple 
RMs.


About the number of open PRs: we should close old/inactive ones. I’d estimate 
that at least half of them can be closed, probably more. That’s also why the 
number grows: a certain % will never be merged because they are not ready and 
now stay open.

Still hoping we get proper Github access for Christmas :-) Then I can close 
them, alter titles, label them etc.

Regards,
Remi



On 18/12/15 12:53, "Daan Hoogland"  wrote:

>I had to let this sink in, Sebastien. I'm not at my 'I can' endurance
>condition at the moment, sorry.
>
>There is a consequence; Remi, our only RM has small kids and is on holidays
>during the holidays, I understand. For all intended purposes we have a
>freeze until January ;)
>
>
>On Fri, Dec 18, 2015 at 12:21 PM, sebgoa  wrote:
>
>>
>> On Dec 18, 2015, at 11:44 AM, Daan Hoogland 
>> wrote:
>>
>> > Sebastien,
>> >
>> > On Fri, Dec 18, 2015 at 11:36 AM, sebgoa  wrote:
>> >
>> >> Releases branches should only be written to by RMs.
>> >>
>> > ​Knowing how you feel about the process you mean 'master' as much as
>> older
>> > branches, right?
>> >
>> > I would not want to be responsible for the growing number of PRs as RM.
>> > (the main reason I will quit this job). At the release of 4.7 the number
>> of
>> > open PRs grew instead of shrunk. That could be a good sign if it
>> coincided
>> > with the growth of our development community but it doesn't.
>> > ​ ​
>> > Our present way of working can not be maintained without people
>> > volunteering 1 fte.​
>> >
>>
>> Mostly agree.
>>
>> Just wish we could let Christmas pass by without breaking all the good
>> work you guys did.
>> Then "sit down" and work on our next steps:
>>
>> - automated CI
>> - use of github
>>
>>
>> >
>> > On Dec 18, 2015, at 11:22 AM, Daan Hoogland 
>> wrote:
>> >>
>> >>> Committers, please keep in mind our quality standards when executing
>> your
>> >>> liberty to merge.
>> >>>
>> >>> --
>> >>> Daan
>> >>
>> >>
>> >
>> >
>> > --
>> > Daan
>>
>>
>
>
>-- 
>Daan


[GitHub] cloudstack pull request: [4.7.0/master] DB Paths fixes: 4.5.3->4.7...

2015-12-18 Thread bhaisaab
Github user bhaisaab commented on a diff in the pull request:

https://github.com/apache/cloudstack/pull/1247#discussion_r48020023
  
--- Diff: engine/schema/src/com/cloud/upgrade/DatabaseUpgradeChecker.java 
---
@@ -242,13 +243,13 @@ public DatabaseUpgradeChecker() {
 
 _upgradeMap.put("4.5.2", new DbUpgrade[] {new Upgrade452to460(), 
new Upgrade460to461(), new Upgrade461to470()});
 
-_upgradeMap.put("4.5.3", new DbUpgrade[] {new Upgrade453to460()});
+_upgradeMap.put("4.5.3", new DbUpgrade[] {new Upgrade453to460(), 
new Upgrade460to461(), new Upgrade461to470()});
 
 _upgradeMap.put("4.6.0", new DbUpgrade[] {new Upgrade460to461(), 
new Upgrade461to470()});
 
 _upgradeMap.put("4.6.1", new DbUpgrade[] {new Upgrade461to470()});
 
-_upgradeMap.put("4.6.2", new DbUpgrade[] {new Upgrade461to470()});
+_upgradeMap.put("4.6.2", new DbUpgrade[] {new Upgrade462to470()});
--- End diff --

I've explained the reason in detail on dev@. The upgrade path used for 
4.6.2 version (source) is Upgrade461to470 that assumes from version 4.6.1 to 
4.7.0 in getUpgradableVersionRange(). The fix tries to be consistent with the 
semantics followed in writing/using upgrade paths. Till upgrade process changes 
and new tools are introduced, I would like to be consistent with the pattern 
we've here.


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---


[GitHub] cloudstack pull request: [4.7.0/master] DB Paths fixes: 4.5.3->4.7...

2015-12-18 Thread DaanHoogland
Github user DaanHoogland commented on a diff in the pull request:

https://github.com/apache/cloudstack/pull/1247#discussion_r48020299
  
--- Diff: engine/schema/src/com/cloud/upgrade/DatabaseUpgradeChecker.java 
---
@@ -242,13 +243,13 @@ public DatabaseUpgradeChecker() {
 
 _upgradeMap.put("4.5.2", new DbUpgrade[] {new Upgrade452to460(), 
new Upgrade460to461(), new Upgrade461to470()});
 
-_upgradeMap.put("4.5.3", new DbUpgrade[] {new Upgrade453to460()});
+_upgradeMap.put("4.5.3", new DbUpgrade[] {new Upgrade453to460(), 
new Upgrade460to461(), new Upgrade461to470()});
 
 _upgradeMap.put("4.6.0", new DbUpgrade[] {new Upgrade460to461(), 
new Upgrade461to470()});
 
 _upgradeMap.put("4.6.1", new DbUpgrade[] {new Upgrade461to470()});
 
-_upgradeMap.put("4.6.2", new DbUpgrade[] {new Upgrade461to470()});
+_upgradeMap.put("4.6.2", new DbUpgrade[] {new Upgrade462to470()});
--- End diff --

Please show what fails, it was tested before release. Let's not fix what 
isn't broken.


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---


[GitHub] cloudstack pull request: [4.7.0/master] DB Paths fixes: 4.5.3->4.7...

2015-12-18 Thread bhaisaab
Github user bhaisaab commented on a diff in the pull request:

https://github.com/apache/cloudstack/pull/1247#discussion_r48020663
  
--- Diff: engine/schema/src/com/cloud/upgrade/DatabaseUpgradeChecker.java 
---
@@ -242,13 +243,13 @@ public DatabaseUpgradeChecker() {
 
 _upgradeMap.put("4.5.2", new DbUpgrade[] {new Upgrade452to460(), 
new Upgrade460to461(), new Upgrade461to470()});
 
-_upgradeMap.put("4.5.3", new DbUpgrade[] {new Upgrade453to460()});
+_upgradeMap.put("4.5.3", new DbUpgrade[] {new Upgrade453to460(), 
new Upgrade460to461(), new Upgrade461to470()});
 
 _upgradeMap.put("4.6.0", new DbUpgrade[] {new Upgrade460to461(), 
new Upgrade461to470()});
 
 _upgradeMap.put("4.6.1", new DbUpgrade[] {new Upgrade461to470()});
 
-_upgradeMap.put("4.6.2", new DbUpgrade[] {new Upgrade461to470()});
+_upgradeMap.put("4.6.2", new DbUpgrade[] {new Upgrade462to470()});
--- End diff --

The PR tries to make the usage be consistent with the implementation and 
usage; see Upgrade453to460 class for example. The fix here is mainly for the 
4.5.3 version, 4.6.2 upgrade path is semantically broken while it still works 
is another thing.


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---


[GitHub] cloudstack pull request: CLOUDSTACK-8302: Removing snapshots on RB...

2015-12-18 Thread voloshanenko
Github user voloshanenko commented on a diff in the pull request:

https://github.com/apache/cloudstack/pull/1230#discussion_r48025223
  
--- Diff: 
plugins/hypervisors/kvm/src/com/cloud/hypervisor/kvm/storage/KVMStorageProcessor.java
 ---
@@ -1274,7 +1274,45 @@ public Answer createVolumeFromSnapshot(final 
CopyCommand cmd) {
 
 @Override
 public Answer deleteSnapshot(final DeleteCommand cmd) {
-return new Answer(cmd);
+try {
+SnapshotObjectTO snapshotTO = (SnapshotObjectTO) cmd.getData();
+PrimaryDataStoreTO primaryStore = (PrimaryDataStoreTO) 
snapshotTO.getDataStore();
+VolumeObjectTO volume = snapshotTO.getVolume();
+String snapshotFullPath = snapshotTO.getPath();
+String snapshotName = 
snapshotFullPath.substring(snapshotFullPath.lastIndexOf("/") + 1);
+KVMStoragePool primaryPool = 
storagePoolMgr.getStoragePool(primaryStore.getPoolType(), 
primaryStore.getUuid());
+KVMPhysicalDisk disk = 
storagePoolMgr.getPhysicalDisk(primaryStore.getPoolType(), 
primaryStore.getUuid(), volume.getPath());
+if (primaryPool.getType() == StoragePoolType.RBD) {
+Rados r = new Rados(primaryPool.getAuthUserName());
+r.confSet("mon_host", primaryPool.getSourceHost() + ":" + 
primaryPool.getSourcePort());
+r.confSet("key", primaryPool.getAuthSecret());
+r.confSet("client_mount_timeout", "30");
+r.connect();
+s_logger.debug("Succesfully connected to Ceph cluster at " 
+ r.confGet("mon_host"));
+IoCTX io = r.ioCtxCreate(primaryPool.getSourceDir());
+Rbd rbd = new Rbd(io);
+RbdImage image = rbd.open(disk.getName());
+try {
+s_logger.info("Attempting to remove RBD snapshot " + 
disk.getName() + "@" + snapshotName);
+if (image.snapIsProtected(snapshotName)) {
+s_logger.debug("Unprotecting snapshot " + 
snapshotFullPath);
+image.snapUnprotect(snapshotName);
+}
+image.snapRemove(snapshotName);
+s_logger.info("Snapshot " + snapshotFullPath + " 
successfully removed.");
+} finally {
+rbd.close(image);
+r.ioCtxDestroy(io);
+}
+} else {
+s_logger.warn("Operation not implemented!");
+throw new InternalErrorException("Operation not 
implemented!");
--- End diff --

Wido, what do your mean? Improve s_logger.info messages? And include 
shared/dedicated message for pool type? Because if you mean RBD pool type - 
it's already included into message " .. remove RBD sn..."


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---


Results of a IPv6 brainstorm day

2015-12-18 Thread Wido den Hollander
Hi,

Yesterday we from PCextreme, Leaseweb and Schuberg Phillis sat down for
a IPv6 brainstorm session.

We asked a good IPv6 consultant (Sander Steffann) to join us to help us
identify some glitches in our ideas.

We had two ideas:
-
https://cwiki.apache.org/confluence/display/CLOUDSTACK/IPv6+in+Basic+Networking
- https://cwiki.apache.org/confluence/display/CLOUDSTACK/IPv6+in+VPC+Router

Overall, our ideas looked good, our main concern was security grouping.
How to prevent clients from spoofing and such.

I updated the spec for the Basic Networking with those ideas.

A few things worth noting:
- Link-Local traffic should be allowed for specific ICMPv6-only. No UDP
or TCP!
- A DUID can not be trusted. We need a tagger on the HV which adds the
MAC address as DHCPv6 option 37.
- SLAAC can not be used. DHCPv6+IA only
- We can assign multiple IPs and Prefixes via DHCPv6
- ISC Kea seems very nice as a DHCPv6 server: http://kea.isc.org/wiki

A few RFCs which might be worth reading:
- https://www.ietf.org/rfc/rfc4890.txt
- https://tools.ietf.org/html/rfc6939
- https://tools.ietf.org/html/rfc4861

We will start to work on this, but the CloudStack core is still very,
very, very IPv4 minded and this will need a lot of refactoring.

However, once you understand IPv6 better it is much more simple then
IPv4 imho.

The end goal is that CloudStack can run on IPv6-only without ANY IPv4.

What also resulted from this day:
- Basic Networking can probably be merged with Advanced Networking with
Direct Attached
- Isolated Networks are about the same as a VPC
- We might be able to ditch the SSVM in most situations

Any way, enough work to do!

Wido


[GitHub] cloudstack pull request: CLOUDSTACK-8302: Removing snapshots on RB...

2015-12-18 Thread wido
Github user wido commented on a diff in the pull request:

https://github.com/apache/cloudstack/pull/1230#discussion_r48026314
  
--- Diff: 
plugins/hypervisors/kvm/src/com/cloud/hypervisor/kvm/storage/KVMStorageProcessor.java
 ---
@@ -1274,7 +1274,45 @@ public Answer createVolumeFromSnapshot(final 
CopyCommand cmd) {
 
 @Override
 public Answer deleteSnapshot(final DeleteCommand cmd) {
-return new Answer(cmd);
+try {
+SnapshotObjectTO snapshotTO = (SnapshotObjectTO) cmd.getData();
+PrimaryDataStoreTO primaryStore = (PrimaryDataStoreTO) 
snapshotTO.getDataStore();
+VolumeObjectTO volume = snapshotTO.getVolume();
+String snapshotFullPath = snapshotTO.getPath();
+String snapshotName = 
snapshotFullPath.substring(snapshotFullPath.lastIndexOf("/") + 1);
+KVMStoragePool primaryPool = 
storagePoolMgr.getStoragePool(primaryStore.getPoolType(), 
primaryStore.getUuid());
+KVMPhysicalDisk disk = 
storagePoolMgr.getPhysicalDisk(primaryStore.getPoolType(), 
primaryStore.getUuid(), volume.getPath());
+if (primaryPool.getType() == StoragePoolType.RBD) {
+Rados r = new Rados(primaryPool.getAuthUserName());
+r.confSet("mon_host", primaryPool.getSourceHost() + ":" + 
primaryPool.getSourcePort());
+r.confSet("key", primaryPool.getAuthSecret());
+r.confSet("client_mount_timeout", "30");
+r.connect();
+s_logger.debug("Succesfully connected to Ceph cluster at " 
+ r.confGet("mon_host"));
+IoCTX io = r.ioCtxCreate(primaryPool.getSourceDir());
+Rbd rbd = new Rbd(io);
+RbdImage image = rbd.open(disk.getName());
+try {
+s_logger.info("Attempting to remove RBD snapshot " + 
disk.getName() + "@" + snapshotName);
+if (image.snapIsProtected(snapshotName)) {
+s_logger.debug("Unprotecting snapshot " + 
snapshotFullPath);
+image.snapUnprotect(snapshotName);
+}
+image.snapRemove(snapshotName);
+s_logger.info("Snapshot " + snapshotFullPath + " 
successfully removed.");
+} finally {
+rbd.close(image);
+r.ioCtxDestroy(io);
+}
+} else {
+s_logger.warn("Operation not implemented!");
+throw new InternalErrorException("Operation not 
implemented!");
--- End diff --

For example:

"Operation not supported for storage pool type of NFS"


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---


[GitHub] cloudstack pull request: CLOUDSTACK-9074: Support shared networkin...

2015-12-18 Thread miguelaferreira
Github user miguelaferreira commented on a diff in the pull request:

https://github.com/apache/cloudstack/pull/1094#discussion_r48029359
  
--- Diff: tools/marvin/marvin/lib/base.py ---
@@ -3876,7 +3876,12 @@ def add(cls, apiclient, services, physicalnetworkid,
 else:
 cmd.transportzoneuuid = services['transportZoneUuid']
 
-return NiciraNvp(apiclient.addNiciraNvpDevice(cmd).__dict__)
+if l2gatewayserviceuuid:
+cmd.l2gatewayserviceuuid = l2gatewayserviceuuid
+else:
+cmd.l2gatewayserviceuuid = services['l2gatewayserviceuuid']
--- End diff --

There should be the possibility to create the device without the l2 gateway 
uuid. This construct forces one to exists. Please make sure you test of 
`services` has key `'l2gatewayserviceuuid'`before you retrieve it.


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---


RE: RM wanted

2015-12-18 Thread Paul Angus
Daan,

Could you describe on the 'qualifications' required for the job. (I have a 
Grade 1 Violin certificate?!).


[ShapeBlue]
Paul Angus
VP Technology   ,   ShapeBlue


d:  +44 203 603 0540 | s: +44 203 617 
0528 |  
m:  +44 7711 418784

e:  paul.an...@shapeblue.com | t: 
@cloudyangus  |
  w:  www.shapeblue.com

a:  53 Chandos Place, Covent Garden London WC2N 4HS UK


[cid:image0e9e4d.png@bc0a076c.43a7675c]


Shape Blue Ltd is a company incorporated in England & Wales. ShapeBlue Services 
India LLP is a company incorporated in India and is operated under license from 
Shape Blue Ltd. Shape Blue Brasil Consultoria Ltda is a company incorporated in 
Brasil and is operated under license from Shape Blue Ltd. ShapeBlue SA Pty Ltd 
is a company registered by The Republic of South Africa and is traded under 
license from Shape Blue Ltd. ShapeBlue is a registered trademark.
This email and any attachments to it may be confidential and are intended 
solely for the use of the individual to whom it is addressed. Any views or 
opinions expressed are solely those of the author and do not necessarily 
represent those of Shape Blue Ltd or related companies. If you are not the 
intended recipient of this email, you must neither take any action based upon 
its contents, nor copy or show it to anyone. Please contact the sender if you 
believe you have received this email in error.




-Original Message-
From: Daan Hoogland [mailto:daan.hoogl...@gmail.com]
Sent: 18 December 2015 09:40
To: dev 
Subject: RM wanted

H all,

For 4.8 we need RMs. I will not continue with this job and if Remi does, he 
shouldn't be on his own!

Any committer that feels like it is needed and they are capable, please come 
forward. Of course, if you feel we can do without, please elaborate on your 
views. I think this job can be shared amongst six people.

​regards,​
--
Daan
Paul Angus
VP Technology

paul.an...@shapeblue.com | www.shapeblue.com
Paul Angus
VP Technology

paul.an...@shapeblue.com | www.shapeblue.com
Find out more about ShapeBlue and our range of CloudStack related services:
IaaS Cloud Design & Build | 
CSForge – rapid IaaS deployment framework
CloudStack Consulting | 
CloudStack Software 
Engineering
CloudStack Infrastructure 
Support | CloudStack 
Bootcamp Training Courses


Re: RM wanted

2015-12-18 Thread Remi Bergsma
I don't think we need more RMs per se. I'd rather have more people testing and 
reviewing the PRs. That will bring more velocity, not more RMs. 

Being RM now is a hell of a job because only a few people do reviews and tests 
and I was crazy enough to compensate for that by testing many of them myself. 
So, let more people do reviews and tests instead and the RM work will be as 
boring as typing merge one-liners and sending vote mails. 

Regards, Remi 

> On 18 Dec 2015, at 10:40, Daan Hoogland  wrote:
> 
> H all,
> 
> For 4.8 we need RMs. I will not continue with this job and if Remi does, he
> shouldn't be on his own!
> 
> Any committer that feels like it is needed and they are capable, please
> come forward. Of course, if you feel we can do without, please elaborate on
> your views. I think this job can be shared amongst six people.
> 
> ​regards,​
> -- 
> Daan


Re: RM wanted

2015-12-18 Thread Daan Hoogland
And that is what it should be ;) So untill then the qualification is being
able to test PRs in abundance.

On Fri, Dec 18, 2015 at 5:06 PM, Remi Bergsma 
wrote:

> I don't think we need more RMs per se. I'd rather have more people testing
> and reviewing the PRs. That will bring more velocity, not more RMs.
>
> Being RM now is a hell of a job because only a few people do reviews and
> tests and I was crazy enough to compensate for that by testing many of them
> myself. So, let more people do reviews and tests instead and the RM work
> will be as boring as typing merge one-liners and sending vote mails.
>
> Regards, Remi
>
> > On 18 Dec 2015, at 10:40, Daan Hoogland  wrote:
> >
> > H all,
> >
> > For 4.8 we need RMs. I will not continue with this job and if Remi does,
> he
> > shouldn't be on his own!
> >
> > Any committer that feels like it is needed and they are capable, please
> > come forward. Of course, if you feel we can do without, please elaborate
> on
> > your views. I think this job can be shared amongst six people.
> >
> > ​regards,​
> > --
> > Daan
>



-- 
Daan


[GitHub] cloudstack pull request: CLOUDSTACK-9181 Prevent syntax error in c...

2015-12-18 Thread remibergsma
Github user remibergsma commented on the pull request:

https://github.com/apache/cloudstack/pull/1249#issuecomment-165892090
  
Integration tests are OK:

```
nosetests --with-marvin --marvin-config=${marvinCfg} -s -a 
tags=advanced,required_hardware=true \
component/test_vpc_redundant.py \
component/test_routers_iptables_default_policy.py \
component/test_routers_network_ops.py \
component/test_vpc_router_nics.py \
smoke/test_loadbalance.py \
smoke/test_internal_lb.py \
smoke/test_ssvm.py \
smoke/test_network.py

```

Result:

```
Create a redundant VPC with two networks with two VMs in each network ... 
=== TestName: test_01_create_redundant_VPC_2tiers_4VMs_4IPs_4PF_ACL | Status : 
SUCCESS ===
ok
Create a redundant VPC with two networks with two VMs in each network and 
check default routes ... === TestName: test_02_redundant_VPC_default_routes | 
Status : SUCCESS ===
ok
Create a redundant VPC with two networks with two VMs in each network ... 
=== TestName: 
test_03_create_redundant_VPC_1tier_2VMs_2IPs_2PF_ACL_reboot_routers | Status : 
SUCCESS ===
ok
Test iptables default INPUT/FORWARD policy on RouterVM ... === TestName: 
test_02_routervm_iptables_policies | Status : SUCCESS ===
ok
Test iptables default INPUT/FORWARD policies on VPC router ... === 
TestName: test_01_single_VPC_iptables_policies | Status : SUCCESS ===
ok
Test redundant router internals ... === TestName: 
test_01_isolate_network_FW_PF_default_routes_egress_true | Status : SUCCESS ===
ok
Test redundant router internals ... === TestName: 
test_02_isolate_network_FW_PF_default_routes_egress_false | Status : SUCCESS ===
ok
Test redundant router internals ... === TestName: 
test_01_RVR_Network_FW_PF_SSH_default_routes_egress_true | Status : SUCCESS ===
ok
Test redundant router internals ... === TestName: 
test_02_RVR_Network_FW_PF_SSH_default_routes_egress_false | Status : SUCCESS ===
ok
Create a VPC with two networks with one VM in each network and test nics 
after destroy ... === TestName: test_01_VPC_nics_after_destroy | Status : 
SUCCESS ===
ok
Create a VPC with two networks with one VM in each network and test default 
routes ... === TestName: test_02_VPC_default_routes | Status : SUCCESS ===
ok
Check the password file in the Router VM ... === TestName: 
test_isolate_network_password_server | Status : SUCCESS ===
ok
Check that the /etc/dhcphosts.txt doesn't contain duplicate IPs ... === 
TestName: test_router_dhcphosts | Status : SUCCESS ===
ok
Test to create Load balancing rule with source NAT ... === TestName: 
test_01_create_lb_rule_src_nat | Status : SUCCESS ===
ok
Test to create Load balancing rule with non source NAT ... === TestName: 
test_02_create_lb_rule_non_nat | Status : SUCCESS ===
ok
Test for assign & removing load balancing rule ... === TestName: 
test_assign_and_removal_lb | Status : SUCCESS ===
ok
Test to verify access to loadbalancer haproxy admin stats page ... === 
TestName: test02_internallb_haproxy_stats_on_all_interfaces | Status : SUCCESS 
===
ok
Test create, assign, remove of an Internal LB with roundrobin http traffic 
to 3 vm's ... === TestName: test_01_internallb_roundrobin_1VPC_3VM_HTTP_port80 
| Status : SUCCESS ===
ok
Test SSVM Internals ... === TestName: test_03_ssvm_internals | Status : 
SUCCESS ===
ok
Test CPVM Internals ... === TestName: test_04_cpvm_internals | Status : 
SUCCESS ===
ok
Test stop SSVM ... === TestName: test_05_stop_ssvm | Status : SUCCESS ===
ok
Test stop CPVM ... === TestName: test_06_stop_cpvm | Status : SUCCESS ===
ok
Test reboot SSVM ... === TestName: test_07_reboot_ssvm | Status : SUCCESS 
===
ok
Test reboot CPVM ... === TestName: test_08_reboot_cpvm | Status : SUCCESS 
===
ok
Test destroy SSVM ... === TestName: test_09_destroy_ssvm | Status : SUCCESS 
===
ok
Test destroy CPVM ... === TestName: test_10_destroy_cpvm | Status : SUCCESS 
===
ok
Test Remote Access VPN in VPC ... === TestName: test_vpc_remote_access_vpn 
| Status : SUCCESS ===
ok
Test VPN in VPC ... === TestName: test_vpc_site2site_vpn | Status : SUCCESS 
===
ok
Test for port forwarding on source NAT ... === TestName: 
test_01_port_fwd_on_src_nat | Status : SUCCESS ===
ok
Test for port forwarding on non source NAT ... === TestName: 
test_02_port_fwd_on_non_src_nat | Status : SUCCESS ===
ok
Test for reboot router ... === TestName: test_reboot_router | Status : 
SUCCESS ===
ok
Test for Router rules for network rules on acquired public IP ... === 
TestName: test_network_rules_acquired_public_ip_1_static_nat_rule | Status : 
SUCCESS ===
ok
Test for Router rules for network rules on acquired public IP ... === 
TestName: test_network_rules_acquired_public_ip_2_nat_rule | Status : SUCCESS 
===
 

[GitHub] cloudstack pull request: CLOUDSTACK-9181 Prevent syntax error in c...

2015-12-18 Thread DaanHoogland
Github user DaanHoogland commented on the pull request:

https://github.com/apache/cloudstack/pull/1249#issuecomment-165919008
  
commit one is a good improvement
commit two is not usefull but harmless
code looks good to me! (<== LGTM)


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---