GitHub user remibergsma opened a pull request:
https://github.com/apache/cloudstack/pull/1386
CLOUDSTACK-9266: Make deleting static routes in private gw work
The to-be-deleted static routes were removed from the json file, instead of
putting them there with revoke=true. The script that parses the json now
doesn't find it and thus does not delete it.
Example after adding/removing some:
```
root@r-3-VM:/var/cache/cloud# cat /etc/cloudstack/staticroutes.json
{
"1.2.3.0/24": {
"gateway": "172.16.0.1",
"ip_address": "172.16.0.2",
"network": "1.2.3.0/24",
"revoke": true
},
"1.2.3.4/32": {
"gateway": "172.16.0.1",
"ip_address": "172.16.0.2",
"network": "1.2.3.4/32",
"revoke": true
},
"1.2.33.3/32": {
"gateway": "172.16.0.1",
"ip_address": "172.16.0.2",
"network": "1.2.33.3/32",
"revoke": true
},
"1.22.2.2/32": {
"gateway": "172.16.0.1",
"ip_address": "172.16.0.2",
"network": "1.22.2.2/32",
"revoke": true
},
"10.1.2.1/32": {
"gateway": "172.16.0.1",
"ip_address": "172.16.0.2",
"network": "10.1.2.1/32",
"revoke": true
},
"10.1.200.0/25": {
"gateway": "172.16.0.1",
"ip_address": "172.16.0.2",
"network": "10.1.200.0/25",
"revoke": true
},
"10.11.12.13/32": {
"gateway": "172.16.0.1",
"ip_address": "172.16.0.2",
"network": "10.11.12.13/32",
"revoke": true
},
"172.16.1.3/32": {
"gateway": "172.16.0.1",
"ip_address": "172.16.0.2",
"network": "172.16.1.3/32",
"revoke": true
},
"172.16.15.14/32": {
"gateway": "172.16.0.1",
"ip_address": "172.16.0.2",
"network": "172.16.15.14/32",
"revoke": false
},
"172.16.17.0/25": {
"gateway": "172.16.0.1",
"ip_address": "172.16.0.2",
"network": "172.16.17.0/25",
"revoke": false
},
"id": "staticroutes"
}
```
This results in:
```
root@r-3-VM:/var/cache/cloud# ip route show
default via 192.168.23.1 dev eth1
169.254.0.0/16 dev eth0 proto kernel scope link src 169.254.1.67
172.16.0.0/24 dev eth2 proto kernel scope link src 172.16.0.2
172.16.15.14 via 172.16.0.1 dev eth2
172.16.17.0/25 via 172.16.0.1 dev eth2
192.168.23.0/24 dev eth1 proto kernel scope link src 192.168.23.4
```
Two static routes left, the rest deleted:
```
172.16.15.14 via 172.16.0.1 dev eth2
172.16.17.0/25 via 172.16.0.1 dev eth2
```
That also matches the UI:
<img width="1327" alt="screen shot 2016-01-30 at 06 34 06"
src="https://cloud.githubusercontent.com/assets/1630096/12693933/83e67d80-c71b-11e5-9241-9f478522b7a4.png">
You can merge this pull request into a Git repository by running:
$ git pull https://github.com/remibergsma/cloudstack
fix-del-private-gw-route
Alternatively you can review and apply these changes as the patch at:
https://github.com/apache/cloudstack/pull/1386.patch
To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:
This closes #1386
----
commit a40415604a9a8bbdc7833d850c4f74d66236d334
Author: Remi Bergsma <[email protected]>
Date: 2016-01-30T05:24:03Z
CLOUDSTACK-9266: Make deleting static routes in private gw work
----
---
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 [email protected] or file a JIRA ticket
with INFRA.
---