[Kimchi-devel] [PATCH V2] UI: template supports networks

Sheldon shaohef at linux.vnet.ibm.com
Wed Jan 15 00:42:48 UTC 2014


On 01/13/2014 01:48 PM, Xin Ding wrote:
> I find the situation that there is no network doesn't exist.
>
> There should be at least one network named "default", and it should 
> not be deleted.
> When starting up kimchi, it will check if the "default" network exists 
> or not, if not, it will
> create a network named "default".
>
> The current problem is that the "default" network can be deleted, it's 
> a issue.
> In my testcase, I delete all networks including "default", and then 
> create several network
> not named "default", and restart kimchi, it will throw errors as 
> following:
> libvirt: Network Driver error : Network not found: no network with 
> matching name 'default'
> libvirt: Network Driver error : internal error: bridge name 'virbr0' 
> already in use.
> [13/Jan/2014:10:37:05] Fatal: Cannot create default network because of 
> internal error: bridge name 'virbr0' already in use., exit kimchid
> I have submitted this issue 
> https://github.com/kimchi-project/kimchi/issues/302.
need enhancement?
do we allow user to delete the default network?

>
> On 1/9/2014 2:46 AM, Aline Manera wrote:
>>
>> Only one point that I've just noticed
>> When there is no network you should also remove the label "Network" 
>> or add a link to "Add network" page
>>
>> On 01/08/2014 04:26 PM, Aline Manera wrote:
>>>
>>> Reviewed-by: Aline Manera <alinefm at linux.vnet.ibm.com>
>>>
>>> On 01/08/2014 06:35 AM, Xin Ding wrote:
>>>> V1 ->V2 use combo box
>>>>
>>>> Add network to edit Template.
>>>>
>>>> Signed-off-by: Xin Ding <xinding at linux.vnet.ibm.com>
>>>> ---
>>>>   ui/css/theme-default/template-edit.css | 34 
>>>> +++++++++++++++++++++++++++++++++-
>>>>   ui/js/src/kimchi.template_edit_main.js | 29 
>>>> +++++++++++++++++++++++++++++
>>>>   ui/pages/template-edit.html.tmpl       | 21 +++++++++++++++++++--
>>>>   3 files changed, 81 insertions(+), 3 deletions(-)
>>>>
>>>> diff --git a/ui/css/theme-default/template-edit.css 
>>>> b/ui/css/theme-default/template-edit.css
>>>> index e61b2fb..ecc9106 100644
>>>> --- a/ui/css/theme-default/template-edit.css
>>>> +++ b/ui/css/theme-default/template-edit.css
>>>> @@ -20,7 +20,7 @@
>>>>    */
>>>>   #template-edit-window {
>>>>       font-size: 13px;
>>>> -    height: 400px;
>>>> +    height: 420px;
>>>>       width: 1000px;
>>>>   }
>>>>
>>>> @@ -73,3 +73,35 @@
>>>>   .hidden-area {
>>>>       display: none;
>>>>   }
>>>> +
>>>> +.template-edit-wrapper-controls .select-list-box {
>>>> +    width: 272px;
>>>> +    max-height: 168px;
>>>> +    overflow: auto;
>>>> +    margin-top: 5px;
>>>> +    border: 1px solid #ccc;
>>>> +}
>>>> +
>>>> +.template-edit-wrapper-controls .select-list-box>li>label {
>>>> +    display: block;
>>>> +}
>>>> +
>>>> +.template-edit-wrapper-controls 
>>>> .select-list-box>li>label>input[type="checkbox"] {
>>>> +    display: none;
>>>> +}
>>>> +
>>>> +.template-edit-wrapper-controls .select-list-box>li>label>.item {
>>>> +    display: block;
>>>> +    height: 41px;
>>>> +    line-height: 41px;
>>>> +    padding: 0 20px 0 40px;
>>>> +    border-bottom: 1px solid #ccc;
>>>> +    box-shadow: 0px 1px 1px #fff;
>>>> +    text-shadow: -1px -1px 1px #ddd, 1px 1px 1px #fff;
>>>> +    color: #222;
>>>> +    font-size: 12px;
>>>> +}
>>>> +
>>>> +.template-edit-wrapper-controls 
>>>> .select-list-box>li>label>input[type="checkbox"]:CHECKED+.item {
>>>> +    background: #f8f8f8 
>>>> url(../images/theme-default/check-green.png) no-repeat 10px center;
>>>> +}
>>>> diff --git a/ui/js/src/kimchi.template_edit_main.js 
>>>> b/ui/js/src/kimchi.template_edit_main.js
>>>> index efe4a6f..ad535ee 100644
>>>> --- a/ui/js/src/kimchi.template_edit_main.js
>>>> +++ b/ui/js/src/kimchi.template_edit_main.js
>>>> @@ -43,6 +43,26 @@ kimchi.template_edit_main = function() {
>>>>               }
>>>> kimchi.select('template-edit-storagePool-list', options);
>>>>           });
>>>> +        kimchi.listNetworks(function(result) {
>>>> +            if(result && result.length > 0) {
>>>> +                var html = '';
>>>> +                var tmpl = $('#tmpl-network').html();
>>>> +                $.each(result, function(index, network) {
>>>> +                    html += kimchi.template(tmpl, network);
>>>> +                });
>>>> + $('#template-edit-network-list').html(html).show();
>>>> +                if(template.networks && template.networks.length > 
>>>> 0) {
>>>> +                    $('input[name="networks"]', 
>>>> templateEditForm).each(function(index, element) {
>>>> +                        var value = $(element).val();
>>>> +                        if(template.networks.indexOf(value) >= 0) {
>>>> +                            $(element).prop('checked', true);
>>>> +                        }
>>>> +                    });
>>>> +                }
>>>> +            } else {
>>>> +                $('#template-edit-network-list').hide();
>>>> +            }
>>>> +        });
>>>>       });
>>>>
>>>>       $('#tmpl-edit-button-cancel').on('click', function() {
>>>> @@ -64,6 +84,15 @@ kimchi.template_edit_main = function() {
>>>>           });
>>>>           data['memory'] = Number(data['memory']);
>>>>           data['cpus']   = Number(data['cpus']);
>>>> +        var networks = templateEditForm.serializeObject().networks;
>>>> +        if (networks instanceof Array) {
>>>> +            data.networks = networks;
>>>> +        } else if (networks != null) {
>>>> +            data.networks = [networks];
>>>> +        } else {
>>>> +            data.networks = [];
>>>> +        }
>>>> +
>>>>           kimchi.updateTemplate($('#template-name').val(), data, 
>>>> function() {
>>>>               kimchi.doListTemplates();
>>>>               kimchi.window.close();
>>>> diff --git a/ui/pages/template-edit.html.tmpl 
>>>> b/ui/pages/template-edit.html.tmpl
>>>> index fe7314d..f7921d6 100644
>>>> --- a/ui/pages/template-edit.html.tmpl
>>>> +++ b/ui/pages/template-edit.html.tmpl
>>>> @@ -75,8 +75,6 @@
>>>>                           <input id="template-edit-memory-textbox" 
>>>> name="memory" type="text" />
>>>>                       </div>
>>>>                   </div>
>>>> -            </fieldset>
>>>> -            <fieldset class="template-edit-fieldset">
>>>>                   <div>
>>>>                       <div class="template-edit-wrapper-label">
>>>>                           <label>$_("Disk (GB)")</label>
>>>> @@ -85,6 +83,8 @@
>>>>                           <input id="template-edit-version-textbox" 
>>>> name="disks" type="text" />
>>>>                       </div>
>>>>                   </div>
>>>> +            </fieldset>
>>>> +            <fieldset class="template-edit-fieldset">
>>>>                   <div>
>>>>                       <div class="template-edit-wrapper-label">
>>>> <label>$_("CDROM")</label>
>>>> @@ -108,6 +108,23 @@
>>>>                           </div>
>>>>                       </div>
>>>>                   </div>
>>>> +                <div>
>>>> +                    <div class="template-edit-wrapper-label">
>>>> + <label>$_("Network")</label>
>>>> +                    </div>
>>>> +                    <div class="template-edit-wrapper-controls">
>>>> +                        <ul class="select-list-box" 
>>>> id="template-edit-network-list">
>>>> +                        </ul>
>>>> +                        <script id="tmpl-network" type="text/html">
>>>> +                            <li>
>>>> +                                <label>
>>>> +                                    <input name="networks" 
>>>> type="checkbox" value="{name}" />
>>>> +                                    <span class="item">{name}</span>
>>>> +                                </label>
>>>> +                            </li>
>>>> +                        </script>
>>>> +                    </div>
>>>> +                </div>
>>>>               </fieldset>
>>>>           </form>
>>>>       </div>
>>>
>>> _______________________________________________
>>> Kimchi-devel mailing list
>>> Kimchi-devel at ovirt.org
>>> http://lists.ovirt.org/mailman/listinfo/kimchi-devel
>>>
>>
>
>
>
> _______________________________________________
> Kimchi-devel mailing list
> Kimchi-devel at ovirt.org
> http://lists.ovirt.org/mailman/listinfo/kimchi-devel


-- 
Thanks and best regards!

Sheldon Feng(???)<shaohef at linux.vnet.ibm.com>
IBM Linux Technology Center

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.ovirt.org/pipermail/kimchi-devel/attachments/20140115/df1c1c30/attachment.html>


More information about the Kimchi-devel mailing list