2016-08-17 05:25:42 +00:00
< rd-header >
2017-09-06 13:11:38 +00:00
< rd-header-title title = "Create network" >
< i id = "loadingViewSpinner" class = "fa fa-cog fa-spin" > < / i >
< / rd-header-title >
2016-08-17 05:25:42 +00:00
< rd-header-content >
2017-07-08 08:23:00 +00:00
< a ui-sref = "networks" > Networks< / a > > Add network
2016-08-17 05:25:42 +00:00
< / rd-header-content >
< / rd-header >
< div class = "row" >
< div class = "col-lg-12 col-md-12 col-xs-12" >
< rd-widget >
< rd-widget-body >
< form class = "form-horizontal" >
<!-- name - input -->
< div class = "form-group" >
< label for = "network_name" class = "col-sm-1 control-label text-left" > Name< / label >
< div class = "col-sm-11" >
< input type = "text" class = "form-control" ng-model = "config.Name" id = "network_name" placeholder = "e.g. myNetwork" >
< / div >
< / div >
<!-- !name - input -->
2017-03-27 12:44:39 +00:00
< div class = "col-sm-12 form-section-title" >
Network configuration
< / div >
2016-08-17 05:25:42 +00:00
<!-- subnet - gateway - inputs -->
< div class = "form-group" >
2017-03-27 12:44:39 +00:00
< label for = "network_subnet" class = "col-sm-2 col-lg-1 control-label text-left" > Subnet< / label >
< div class = "col-sm-4 col-lg-5" >
2016-08-17 05:25:42 +00:00
< input type = "text" class = "form-control" ng-model = "formValues.Subnet" id = "network_subnet" placeholder = "e.g. 172.20.0.0/16" >
< / div >
2017-03-27 12:44:39 +00:00
< label for = "network_gateway" class = "col-sm-2 col-lg-1 control-label text-left" > Gateway< / label >
< div class = "col-sm-4 col-lg-5" >
2016-08-17 05:25:42 +00:00
< input type = "text" class = "form-control" ng-model = "formValues.Gateway" id = "network_gateway" placeholder = "e.g. 172.20.10.11" >
< / div >
< / div >
<!-- !subnet - gateway - inputs -->
2017-03-27 12:44:39 +00:00
< div class = "col-sm-12 form-section-title" >
Driver configuration
< / div >
2016-08-17 05:25:42 +00:00
<!-- driver - input -->
< div class = "form-group" >
2017-03-27 12:44:39 +00:00
< label for = "network_driver" class = "col-sm-2 col-lg-1 control-label text-left" > Driver< / label >
2017-09-06 13:11:38 +00:00
< div class = "col-sm-11" >
< select class = "form-control" ng-options = "driver for driver in availableNetworkDrivers" ng-model = "config.Driver" ng-if = "availableNetworkDrivers.length > 0" >
< option disabled hidden value = "" > Select a driver< / option >
< / select >
< input type = "text" class = "form-control" ng-model = "config.Driver" id = "network_driver" placeholder = "e.g. driverName" ng-if = "availableNetworkDrivers.length === 0" >
2016-08-17 05:25:42 +00:00
< / div >
< / div >
<!-- !driver - input -->
<!-- driver - options -->
< div class = "form-group" >
2017-03-27 12:44:39 +00:00
< div class = "col-sm-12" style = "margin-top: 5px;" >
< label class = "control-label text-left" >
Driver options
< portainer-tooltip position = "bottom" message = "Driver options are specific to the selected driver. Please refer to the selected driver documentation." > < / portainer-tooltip >
< / label >
< span class = "label label-default interactive" style = "margin-left: 10px;" ng-click = "addDriverOption()" >
< i class = "fa fa-plus-circle" aria-hidden = "true" > < / i > add driver option
2016-08-17 05:25:42 +00:00
< / span >
< / div >
<!-- driver - options - input - list -->
2017-03-27 12:44:39 +00:00
< div class = "col-sm-12 form-inline" style = "margin-top: 10px;" >
2016-08-17 05:25:42 +00:00
< div ng-repeat = "option in formValues.DriverOptions" style = "margin-top: 2px;" >
< div class = "input-group col-sm-5 input-group-sm" >
< span class = "input-group-addon" > name< / span >
< input type = "text" class = "form-control" ng-model = "option.name" placeholder = "e.g. com.docker.network.bridge.enable_icc" >
< / div >
< div class = "input-group col-sm-5 input-group-sm" >
< span class = "input-group-addon" > value< / span >
< input type = "text" class = "form-control" ng-model = "option.value" placeholder = "e.g. true" >
< / div >
2017-03-27 12:44:39 +00:00
< button class = "btn btn-sm btn-danger" type = "button" ng-click = "removeDriverOption($index)" >
< i class = "fa fa-trash" aria-hidden = "true" > < / i >
< / button >
2016-08-17 05:25:42 +00:00
< / div >
< / div >
<!-- !driver - options - input - list -->
< / div >
<!-- !driver - options -->
2017-03-27 12:44:39 +00:00
< div class = "col-sm-12 form-section-title" >
Advanced configuration
2016-08-17 05:25:42 +00:00
< / div >
2016-12-25 20:32:17 +00:00
<!-- labels -->
< div class = "form-group" >
2017-03-27 12:44:39 +00:00
< div class = "col-sm-12" style = "margin-top: 5px;" >
< label class = "control-label text-left" > Labels< / label >
< span class = "label label-default interactive" style = "margin-left: 10px;" ng-click = "addLabel()" >
< i class = "fa fa-plus-circle" aria-hidden = "true" > < / i > add label
2016-12-25 20:32:17 +00:00
< / span >
< / div >
<!-- labels - input - list -->
2017-03-27 12:44:39 +00:00
< div class = "col-sm-12 form-inline" style = "margin-top: 10px;" >
2016-12-25 20:32:17 +00:00
< div ng-repeat = "label in formValues.Labels" style = "margin-top: 2px;" >
< div class = "input-group col-sm-5 input-group-sm" >
< span class = "input-group-addon" > name< / span >
2017-07-10 07:33:09 +00:00
< input type = "text" class = "form-control" ng-model = "label.key" placeholder = "e.g. com.example.foo" >
2016-12-25 20:32:17 +00:00
< / div >
< div class = "input-group col-sm-5 input-group-sm" >
< span class = "input-group-addon" > value< / span >
< input type = "text" class = "form-control" ng-model = "label.value" placeholder = "e.g. bar" >
< / div >
2017-03-27 12:44:39 +00:00
< button class = "btn btn-sm btn-danger" type = "button" ng-click = "removeLabel($index)" >
< i class = "fa fa-trash" aria-hidden = "true" > < / i >
< / button >
2016-12-25 20:32:17 +00:00
< / div >
< / div >
<!-- !labels - input - list -->
< / div >
<!-- !labels -->
2017-03-27 12:44:39 +00:00
<!-- internal -->
< div class = "form-group" >
< div class = "col-sm-12" >
< label for = "ownership" class = "control-label text-left" >
Restrict external access to the network
< / label >
< label class = "switch" style = "margin-left: 20px;" >
2017-04-05 08:04:29 +00:00
< input type = "checkbox" ng-model = "config.Internal" > < i > < / i >
2017-03-27 12:44:39 +00:00
< / label >
< / div >
< / div >
<!-- !internal -->
2017-09-19 14:58:30 +00:00
<!-- access - control -->
< por-access-control-form form-data = "formValues.AccessControlData" ng-if = "applicationState.application.authentication" > < / por-access-control-form >
<!-- !access - control -->
2017-03-27 12:44:39 +00:00
<!-- actions -->
< div class = "col-sm-12 form-section-title" >
Actions
< / div >
< div class = "form-group" >
< div class = "col-sm-12" >
< button type = "button" class = "btn btn-primary btn-sm" ng-disabled = "!config.Name" ng-click = "create()" > Create network< / button >
< a type = "button" class = "btn btn-default btn-sm" ui-sref = "networks" > Cancel< / a >
2017-09-19 14:58:30 +00:00
< i id = "createResourceSpinner" class = "fa fa-cog fa-spin" style = "margin-left: 5px; display: none;" > < / i >
< span class = "text-danger" ng-if = "state.formValidationError" style = "margin-left: 5px;" > {{ state.formValidationError }}< / span >
2017-03-27 12:44:39 +00:00
< / div >
< / div >
<!-- !actions -->
2016-08-17 05:25:42 +00:00
< / form >
< / rd-widget-body >
< / rd-widget >
< / div >
< / div >