mirror of
https://github.com/ansible-collections/community.general.git
synced 2025-06-03 14:59:09 -07:00
added mongodb lookup docs
This commit is contained in:
parent
0b4cebfb8b
commit
1ef2b6b302
1 changed files with 71 additions and 0 deletions
|
@ -15,6 +15,77 @@
|
||||||
#
|
#
|
||||||
# You should have received a copy of the GNU General Public License
|
# You should have received a copy of the GNU General Public License
|
||||||
# along with Ansible. If not, see <http://www.gnu.org/licenses/>.
|
# along with Ansible. If not, see <http://www.gnu.org/licenses/>.
|
||||||
|
'''
|
||||||
|
DOCUMENTATION:
|
||||||
|
author: 'Marcos Diez <marcos (at) unitron.com.br>'
|
||||||
|
lookup: mongodb
|
||||||
|
version_added: "2.3"
|
||||||
|
short_description: lookup info from MongoDB
|
||||||
|
description:
|
||||||
|
- 'The ``MongoDB`` lookup runs the *find()* command on a given *collection* on a given *MongoDB* server.'
|
||||||
|
- 'The result is a list of jsons, so slightly different from what PyMongo returns. In particular, *timestamps* are converted to epoch integers.'
|
||||||
|
options:
|
||||||
|
connect_string:
|
||||||
|
description:
|
||||||
|
- "Can be any valid MongoDB connection string, supporting authentication, replicasets, etc. More info at https://docs.mongodb.org/manual/reference/connection-string/"
|
||||||
|
default: "mongodb://localhost/"
|
||||||
|
database:
|
||||||
|
description:
|
||||||
|
- Name of the database which the query will be made
|
||||||
|
required: True
|
||||||
|
collection:
|
||||||
|
description:
|
||||||
|
- Name of the collection which the query will be made
|
||||||
|
required: True
|
||||||
|
filter:
|
||||||
|
description:
|
||||||
|
- Criteria of the output
|
||||||
|
type: 'dict'
|
||||||
|
default: '{}'
|
||||||
|
projection:
|
||||||
|
description:
|
||||||
|
- Fields you want returned
|
||||||
|
type: dict
|
||||||
|
default: "{}"
|
||||||
|
skip:
|
||||||
|
description:
|
||||||
|
- How many results should be skept
|
||||||
|
type: integer
|
||||||
|
limit:
|
||||||
|
description:
|
||||||
|
- How many results should be shown
|
||||||
|
type: integer
|
||||||
|
sort:
|
||||||
|
description:
|
||||||
|
- Sorting rules. Please notice the constats are replaced by strings.
|
||||||
|
type: list
|
||||||
|
default: "[]"
|
||||||
|
notes:
|
||||||
|
- "Please check https://api.mongodb.org/python/current/api/pymongo/collection.html?highlight=find#pymongo.collection.Collection.find for more detais."
|
||||||
|
requirements:
|
||||||
|
- pymongo >= 2.4
|
||||||
|
EXAMPLES:
|
||||||
|
- hosts: all
|
||||||
|
gather_facts: false
|
||||||
|
vars:
|
||||||
|
mongodb_parameters:
|
||||||
|
#mandatory parameters
|
||||||
|
database: 'local'
|
||||||
|
#optional
|
||||||
|
collection: "startup_log"
|
||||||
|
connection_string: "mongodb://localhost/"
|
||||||
|
extra_connection_parameters: { "ssl" : True , "ssl_certfile": /etc/self_signed_certificate.pem" }
|
||||||
|
#optional query parameters, we accept any parameter from the normal mongodb query.
|
||||||
|
filter: { "hostname": "batman" }
|
||||||
|
projection: { "pid": True , "_id" : False , "hostname" : True }
|
||||||
|
skip: 0
|
||||||
|
limit: 1
|
||||||
|
sort: [ [ "startTime" , "ASCENDING" ] , [ "age", "DESCENDING" ] ]
|
||||||
|
tasks:
|
||||||
|
- debug: msg="Mongo has already started with the following PID [{{ item.pid }}]"
|
||||||
|
with_mongodb: "{{mongodb_parameters}}"
|
||||||
|
'''
|
||||||
|
|
||||||
from __future__ import (absolute_import, division, print_function)
|
from __future__ import (absolute_import, division, print_function)
|
||||||
from __future__ import unicode_literals
|
from __future__ import unicode_literals
|
||||||
from ansible.module_utils.six import string_types
|
from ansible.module_utils.six import string_types
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue