Comments (5)
Access ports can only have 1 VLAN assigned to them (as you know), so you will need to delete the vlan assignment before you push the config. It acts the same as if you were on the cmd line.
I would just add that to the Configuration File in your example, so it deletes the vlan stanza and then adds in the stanza that you want. I haven't tested this but it should be something similar to the following:
interfaces {
ge-0/0/7 {
description TEST;
unit 0 {
family ethernet-switching {
port-mode access;
delete: vlan;
vlan {
members VL0002;
}
}
}
}
}
This would be easier with the set command if you want to go that route.
from ansible-junos-stdlib.
Or use XML instead for your config format. It allows you to clearly specify which sections need to be merged, replaced or deleted. E.g.
<configuration>
<interfaces>
<name>ge-0/0/7</name>
<description>TEST</description>
<unit>
<name>0</name>
<family>
<ethernet-switching>
<port-mode>access</port-mode>
<vlan operation="replace">
<members>VL0002</members>
</vlan>
</ethernet-switching>
</family>
</unit>
</interfaces>
</configuration>
XML has the added benefit of being more easily parsed, so you can do policy checks after your build all your configs.
from ansible-junos-stdlib.
Completely agree. Heck, for that matter even the set notation would be much easier, but the XML is the preferred method if you want to make it "smart"
from ansible-junos-stdlib.
Thanks I will give the XML a shot. I have previously tried using the
delete: vlan; statement with both the Ansible module and with a custom
python script using the junos-eznc module and neither worked (though it is
possible I did something wrong).
On Mon, Jun 15, 2015 at 12:01 PM, sdndude [email protected] wrote:
Completely agree. Heck, for that matter even the set notation would be
much easier, but the XML is the preferred method if you want to make it
"smart"—
Reply to this email directly or view it on GitHub
#65 (comment)
.
from ansible-junos-stdlib.
Load Replace support provided by #71
from ansible-junos-stdlib.
Related Issues (20)
- Current implementation doesn't handle multi member stacks where versions of members are inconsistent HOT 8
- Ansible SSH connection fails with Authentication Error if I connected to target via host jump HOT 2
- RPC "get-system-core-dumps" with formats "text" only prints the first line of rpc-reply HOT 4
- juniper.device.config module with set system login message " " with "," separated text message replaces "," with newline HOT 2
- Get facts and printing them results in invalid or malformed argument Error HOT 2
- Executing RPC with filters returns The error was: AttributeError: 'JuniperJunosModule' object has no attribute '_check_type_dict' HOT 3
- Address readthedocs upcoming changes HOT 3
- Ansible RPC error with junipe.device.rpc module HOT 2
- ansible-lint violation: missing required arguments: _inventory_hostname, _module_name, _module_utils_path (warning) HOT 2
- juniper.device.software - Software is downloaded for each RE when using remote_package HOT 8
- Feature Request: Add option to not discard uncommitted changes HOT 2
- PyEZ connection fails when ~/.ssh/config has a IdentityFile option for target hosts HOT 4
- sphinx-build -b html . _build/html/ fails with AttributeError: 'Sphinx' object has no attribute 'add_stylesheet' with sphinx 7.2.6 HOT 2
- Random diff on juniper SRX device HOT 1
- Update README to clarify the status of collections vs roles HOT 1
- Update tests to cover all modules, when using pyez connection plugin HOT 1
- All modules fail since Ansible 2.15.9 or >=2.16.3 ("missing required arguments") HOT 9
- Juniper's galaxy module download fails. HOT 1
- juniper.device.config always performs a commit confirmed operation HOT 13
- juniper.device.config does not transmit the error message with juniper.device.pyez connection HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from ansible-junos-stdlib.