ansible-galaxy-fortiadc-collection's People
Forkers
mduijmansible-galaxy-fortiadc-collection's Issues
Feature: Implement Idempotency
Currently it is possible to run modules with add, edit, get, or delete actions.
It would be nice if the modules would support idempotent actions with states state=present
or state=absent
. This would help to reduce code complexity in in playbooks.
From the Ansible glossary (https://docs.ansible.com/ansible/latest/reference_appendices/glossary.html):
Idempotency
An operation is idempotent if the result of performing it once is exactly the same as the result of performing it repeatedly without any intervening actions.
Condition in virtual server python part of module is wrong and should be removed
Condition in virtual server python part of module (lines 264-267) is wrong and should be removed:
There are conditions evaluated:
if module.params['traffic_group'] and module.params['traffic_group'] != data['traffic-group']:
data['traffic-group'] = module.params['traffic_group']
res = True
if module.params['traffic_group'] and module.params['traffic_group'] != data['traffic-log']:
data['traffic-log'] = module.params['traffic_group']
res = True
if module.params['traffic_log'] and module.params['traffic_log'] != data['traffic-log']:
data['traffic-log'] = module.params['traffic_log']
res = True
1st condition "traffic-group" evaluation is proper.
2nd condition evaluation is wrong - looks like combination between 1st and 3rd hence it's redundant and shall be removed.
3rd condition "traffic-log" evaluation is proper.
In our project to properly interact with FortiADC device updates we are manually remove those lines from the module.
Bug in code of ssl-cipher condition in health check python file in module
Condition in health check python part of module (line 637) is not correct and should be fixed:
There is condition evaluated:
elif module.params[param] != data[ key]:
data[key] = module.params[param]
res = True
Previously if key == 'ssl-ciphers' and there is no update in list, then ssl-ciphers are tried to be evaluated by above clause, hence module always trying to update ssl-ciphers.
After fixing line 637 module code shall be modified to:
elif key != 'ssl-ciphers' and module.params[param] != data[key]:
data[key] = module.params[param]
res = True
In our project to properly interact with FortiADC device updates we are manually change this line in the module.
Bug in code of schedule-pool-list condition in virtual server python file in module
Condition in virtual server python part of module (lines 323-326) is not correct and should be fixed:
There is condition evaluated:
if list_need_update(module.params['source_pool_list'], data['schedule-pool-list']):
data['schedule-pool-list'] = list_to_str(
module.params['source_pool_list'])
res = True
using 'schedule-pool-list' should be replaced with 'source-pool-list' hence above condition shall become:
if list_need_update(module.params['source_pool_list'], data['source-pool-list']):
data['source-pool-list'] = list_to_str(
module.params['source_pool_list'])
res = True
In our project to properly interact with FortiADC device updates we are manually change those lines in the module.
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.