# flake8: noqa
# pylint: skip-file

DOCUMENTATION = '''
---
module: oc_adm_manage_node
short_description: Module to manage openshift nodes
description:
  - Manage openshift nodes programmatically.
options:
  kubeconfig:
    description:
    - The path for the kubeconfig file to use for authentication
    required: false
    default: /etc/origin/master/admin.kubeconfig
    aliases: []
  debug:
    description:
    - Turn on debug output.
    required: false
    default: False
    aliases: []
  node:
    description:
    - A list of the nodes being managed
    required: false
    default: None
    aliases: []
  selector:
    description:
    - The selector when filtering on node labels
    required: false
    default: None
    aliases: []
  pod_selector:
    description:
    - A selector when filtering on pod labels.
    required: false
    default: None
    aliases: []
  evacuate:
    description:
    - Remove all pods from a node.
    required: false
    default: False
    aliases: []
  schedulable:
    description:
    - whether or not openshift can schedule pods on this node
    required: False
    default: None
    aliases: []
  dry_run:
    description:
    - This shows the pods that would be migrated if evacuate were called
    required: False
    default: False
    aliases: []
  grace_period:
    description:
    - Grace period (seconds) for pods being deleted.
    required: false
    default: None
    aliases: []
  force:
    description:
    - Whether or not to attempt to force this action in openshift
    required: false
    default: None
    aliases: []
author:
- "Kenny Woodson <kwoodson@redhat.com>"
extends_documentation_fragment: []
'''

EXAMPLES = '''
- name: oadm manage-node --schedulable=true --selector=ops_node=new
  oc_adm_manage_node:
    selector: ops_node=new
    schedulable: True
  register: schedout

- name: oadm manage-node my-k8s-node-5 --evacuate
  oc_adm_manage_node:
    node:  my-k8s-node-5
    evacuate: True
    force: True
'''
