> On Aug. 12, 2014, 9:52 p.m., Rohit Yadav wrote: > > Hi Daniel, > > > > Thank you for your work, it looks comprehensive. Appreciate the tests and > > design doc on the wiki. > > > > Can you make sure we don't do wildcard imports, I personally don't have any > > problem with using them but a lot of community folks (and on our coding > > guidelines) we don't prefer these: > > > import static org.mockito.Mockito.*; > > > > When adding APIs, you can add a "since=4.5.0" field in the APICommand, > > which simply help users, who would read apidocs, to know that these > > APIs/feature were available since that version/release of ACS. > > > > I'll be able to test this tomorrow, meanwhile can you share with us > > demo/test credentials for testing against the DNS service (or point us to a > > link to sign up for it if it's free). > > Daniel Vega Simoes wrote: > I'll fix the imports and the APICommand. > We're building a VM to provide DNS service for testing and will let you > know as soon as it's ready. > > Rohit Yadav wrote: > Thanks Daniel, the patch applies cleanly. > I'll have to test it before I could merge it on master, let me know if > the VM is downloadable somewhere or some other way to test this feature > against. > > Daniel Vega Simoes wrote: > Rohit, > > We've fired up a VM on Amazon EC2 to host both the DNS server and the > GloboDNS application that manages it. > > When you configure the GloboDNS provider, you should use the following > info: > -> username: ad...@example.com > -> password: password > -> url: http://54.83.77.243:8080/ > > After that, you need to create a network offering (doesn't matter if > isolated or shared) that uses GloboDNS as the DNS provider. Then, feel free > to launch as many networks and VMs as you want. Their names should appear at > the GloboDNS (you can login through the same URL/username/password and take a > look). > > It usually takes about 2 minutes before the application exports the new > zones and records to the Bind server. After that time, you can lookup the > full name using nslookup or dig. > > Also keep in mind that the plugin only accepts lower-case names for the > VMs. If you do not supply a name, you need to change the global option > 'instance.name' to make sure that the name generated by Cloudstack is also > lower-case. > > Any questions or problems, just let us know :) > > Rohit Yadav wrote: > Hey, can you revert back to my email -- I still see the build issues in > the patch, this is another reminder. > Cheers. > > Daniel Vega Simoes wrote: > Hi Rohit > > I didn't get it. You said the patches applied cleanly and just needed > testing. We used f6bde7b46bb09aa13cb35049716bd7e1fc5b7774 as base commit for > the patch. It doesn't work anymore? > > Rohit Yadav wrote: > Hi Daniel, yes it applies cleanly but since I did not the VM you recently > shared to test against I did not build it with some maven profiles. It was > failing for me, so see if you could do test your patch so that it builds > cleanly. I would want to help you test/merge your work on master soon to > avoid conflict from ever changing master branch :) > > Cheers. > > Daniel Vega Simoes wrote: > Hi Rohit > > Apparently the last patch had some weird errors. I updated it with a new > one and also changed version to be 4.5-SNAPSHOT so it fits well into master. > The base commit is 8d0817860faa347eb738c28d30c98f549afb3096. > > I managed to build it in my machine using the developer profile: > $ mvn -Pdeveloper -Dsimulator clean install > > Should there be any more problems, just let me know. > > Cheers, > > Rohit Yadav wrote: > Tested on latest master, it builds cleanly with unit tests and patch > applied cleanly too. Tested to work against simulator. > I'm going ahead to merge it now on master, further issues can be address > later if found against using a real host. > > Thank you for this feature.
Thank you Rohit for your time to review this feature. We're glad to have contributed to Cloudstack and will surely submit other features and bug fixes in the future. - Daniel ----------------------------------------------------------- This is an automatically generated e-mail. To reply, visit: https://reviews.apache.org/r/24611/#review50372 ----------------------------------------------------------- On Aug. 20, 2014, 7:18 p.m., Daniel Vega Simoes wrote: > > ----------------------------------------------------------- > This is an automatically generated e-mail. To reply, visit: > https://reviews.apache.org/r/24611/ > ----------------------------------------------------------- > > (Updated Aug. 20, 2014, 7:18 p.m.) > > > Review request for cloudstack, Chiradeep Vittal, Murali Reddy, Rohit Yadav, > and Hugo Trippaers. > > > Bugs: CLOUDSTACK-6998 > https://issues.apache.org/jira/browse/CLOUDSTACK-6998 > > > Repository: cloudstack-git > > > Description > ------- > > This is a feature to handle DNS entries by means of an external DNS Provider, > such as Bind. These entries include DNS domains and reverse domains, VM > records and reverse records. > > For a complete description, please refer to the design document available at > https://cwiki.apache.org/confluence/display/CLOUDSTACK/Bind+and+PowerDNS+integration+by+Globo+DNSAPI > > For the discussion about this feature on the dev mailing list, please refer > to http://markmail.org/thread/fvwf36hpxotiibka > > Summary: > - new Network Service Provider called GloboDNS > - new Network Element to manage network domains and VM records (entries) on > an external API > - new Network Resource to communicate with GloboDNS (open source) > - new API command to add DNS server > - new global option to determine if this provider should override VM entries > on external DNS server > - changes in UI to include GloboDNS in Providers list > > > Diffs > ----- > > api/src/com/cloud/network/Network.java 55502df > api/src/org/apache/cloudstack/network/ExternalNetworkDeviceManager.java > f38e9e6 > client/pom.xml d87fc45 > client/tomcatconf/commands.properties.in 3191bbf > plugins/network-elements/globodns/pom.xml PRE-CREATION > > plugins/network-elements/globodns/resources/META-INF/cloudstack/globodns/module.properties > PRE-CREATION > > plugins/network-elements/globodns/resources/META-INF/cloudstack/globodns/spring-globodns-context.xml > PRE-CREATION > > plugins/network-elements/globodns/src/com/globo/globodns/cloudstack/api/AddGloboDnsHostCmd.java > PRE-CREATION > > plugins/network-elements/globodns/src/com/globo/globodns/cloudstack/commands/CreateOrUpdateDomainCommand.java > PRE-CREATION > > plugins/network-elements/globodns/src/com/globo/globodns/cloudstack/commands/CreateOrUpdateRecordAndReverseCommand.java > PRE-CREATION > > plugins/network-elements/globodns/src/com/globo/globodns/cloudstack/commands/RemoveDomainCommand.java > PRE-CREATION > > plugins/network-elements/globodns/src/com/globo/globodns/cloudstack/commands/RemoveRecordCommand.java > PRE-CREATION > > plugins/network-elements/globodns/src/com/globo/globodns/cloudstack/commands/SignInCommand.java > PRE-CREATION > > plugins/network-elements/globodns/src/com/globo/globodns/cloudstack/element/GloboDnsElement.java > PRE-CREATION > > plugins/network-elements/globodns/src/com/globo/globodns/cloudstack/element/GloboDnsElementService.java > PRE-CREATION > > plugins/network-elements/globodns/src/com/globo/globodns/cloudstack/resource/GloboDnsResource.java > PRE-CREATION > > plugins/network-elements/globodns/src/com/globo/globodns/cloudstack/response/GloboDnsDomainListResponse.java > PRE-CREATION > > plugins/network-elements/globodns/src/com/globo/globodns/cloudstack/response/GloboDnsDomainResponse.java > PRE-CREATION > > plugins/network-elements/globodns/src/com/globo/globodns/cloudstack/response/GloboDnsExportResponse.java > PRE-CREATION > > plugins/network-elements/globodns/src/com/globo/globodns/cloudstack/response/GloboDnsRecordListResponse.java > PRE-CREATION > > plugins/network-elements/globodns/src/com/globo/globodns/cloudstack/response/GloboDnsRecordResponse.java > PRE-CREATION > > plugins/network-elements/globodns/test/com/globo/globodns/cloudstack/element/GloboDnsElementTest.java > PRE-CREATION > > plugins/network-elements/globodns/test/com/globo/globodns/cloudstack/resource/GloboDnsResourceTest.java > PRE-CREATION > plugins/network-elements/globodns/test/resources/db.properties PRE-CREATION > plugins/network-elements/globodns/test/resources/log4j.properties > PRE-CREATION > plugins/pom.xml 0b1b62d > ui/scripts/system.js fe51acb > > Diff: https://reviews.apache.org/r/24611/diff/ > > > Testing > ------- > > The implemented feature is widely covered by several unit tests, which check > use cases like: > - creation of GloboDNS host (external resource) > - creation of a DNS domain when override flag is true or false > - creation of a VM record when override flag is true > - creation of a VM record fails when override flag is false and record exists > - uppercase letters are not allowed for VM records > - updating VM records when override flag is true and false > - removal of a record entry when VM is destroyed > - removal of DNS domains when network is destroyed > > You can check all use cases related to the override flag on the design > document. > > On this first release, tests were performed using Bind server as DNS server. > Further improvements could include PowerDNS as well. > > > Thanks, > > Daniel Vega Simoes > >