ipamutils has two default address pool. Instead of allowing them to
be accessed directly, adding get functions so that other packages
can use get APIs.
Signed-off-by: selansen <elango.siva@docker.com>
| ... | ... |
@@ -45,9 +45,10 @@ func NewAllocator(lcDs, glDs datastore.DataStore) (*Allocator, error) {
|
| 45 | 45 |
a := &Allocator{}
|
| 46 | 46 |
|
| 47 | 47 |
// Load predefined subnet pools |
| 48 |
+ |
|
| 48 | 49 |
a.predefined = map[string][]*net.IPNet{
|
| 49 |
- localAddressSpace: ipamutils.PredefinedLocalScopeDefaultNetworks, |
|
| 50 |
- globalAddressSpace: ipamutils.PredefinedGlobalScopeDefaultNetworks, |
|
| 50 |
+ localAddressSpace: ipamutils.GetLocalScopeDefaultNetworks(), |
|
| 51 |
+ globalAddressSpace: ipamutils.GetGlobalScopeDefaultNetworks(), |
|
| 51 | 52 |
} |
| 52 | 53 |
|
| 53 | 54 |
// Initialize asIndices map |
| ... | ... |
@@ -56,6 +56,20 @@ func configDefaultNetworks(defaultAddressPool []*NetworkToSplit, result *[]*net. |
| 56 | 56 |
return nil |
| 57 | 57 |
} |
| 58 | 58 |
|
| 59 |
+// GetGlobalScopeDefaultNetworks returns PredefinedGlobalScopeDefaultNetworks |
|
| 60 |
+func GetGlobalScopeDefaultNetworks() []*net.IPNet {
|
|
| 61 |
+ mutex.Lock() |
|
| 62 |
+ defer mutex.Unlock() |
|
| 63 |
+ return PredefinedGlobalScopeDefaultNetworks |
|
| 64 |
+} |
|
| 65 |
+ |
|
| 66 |
+// GetLocalScopeDefaultNetworks returns PredefinedLocalScopeDefaultNetworks |
|
| 67 |
+func GetLocalScopeDefaultNetworks() []*net.IPNet {
|
|
| 68 |
+ mutex.Lock() |
|
| 69 |
+ defer mutex.Unlock() |
|
| 70 |
+ return PredefinedLocalScopeDefaultNetworks |
|
| 71 |
+} |
|
| 72 |
+ |
|
| 59 | 73 |
// ConfigGlobalScopeDefaultNetworks configures global default pool. |
| 60 | 74 |
// Ideally this will be called from SwarmKit as part of swarm init |
| 61 | 75 |
func ConfigGlobalScopeDefaultNetworks(defaultAddressPool []*NetworkToSplit) error {
|