summaryrefslogtreecommitdiffstats
path: root/roles/lib_openshift/src/doc/service
blob: ba9aa0b38df7af62aeffedf730fef75d6a588b40 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
# flake8: noqa
# pylint: skip-file

DOCUMENTATION = '''
---
module: oc_service
short_description: Create, modify, and idempotently manage openshift services.
description:
  - Manage openshift service objects programmatically.
options:
  state:
    description:
    - State represents whether to create, modify, delete, or list
    required: False
    default: present
    choices: ["present", "absent", "list"]
    aliases: []
  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: []
  name:
    description:
    - Name of the object that is being queried.
    required: false
    default: None
    aliases: []
  namespace:
    description:
    - The namespace where the object lives.
    required: false
    default: default
    aliases: []
  selector:
    description:
    - The selector to apply when filtering for services.
    required: false
    default: None
    aliases: []
  labels:
    description:
    - The labels to apply on the service.
    required: false
    default: None
    aliases: []
  clusterip:
    description:
    - The cluster ip address to use with this service.
    required: false
    default: None
    aliases: []
  portalip:
    description:
    - The portal ip(virtual ip) address to use with this service.
    - "https://docs.openshift.com/enterprise/3.0/architecture/core_concepts/pods_and_services.html#services"
    required: false
    default: None
    aliases: []
  ports:
    description:
    - A list of the ports that are used for this service.  This includes name, port, protocol, and targetPort.
    - See examples.
    required: false
    default: None
    aliases: []
  session_affinity:
    description:
    - The type of session affinity to use.
    required: false
    default: 'None'
    aliases: []
  service_type:
    description:
    - The type of service desired.  Each option tells the service to behave accordingly.
    - https://kubernetes.io/docs/user-guide/services/
    required: false
    default: ClusterIP
    choices:
    - ClusterIP
    - NodePort
    - LoadBalancer
    - ExternalName
    aliases: []
  externalips:
    description:
    - A list of the external IPs that are exposed for this service.
    - https://kubernetes.io/docs/concepts/services-networking/service/#external-ips
    required: false
    default: None
    aliases: []
author:
- "Kenny Woodson <kwoodson@redhat.com>"
extends_documentation_fragment: []
'''

EXAMPLES = '''
- name: get docker-registry service
  run_once: true
  oc_service:
    namespace: default
    name: docker-registry
    state: list
  register: registry_service_out

- name: create the docker-registry service
  oc_service:
    namespace: default
    name: docker-registry
    ports:
    - name: 5000-tcp
      port: 5000
      protocol: TCP
      targetPort: 5000
    selector:
      docker-registry: default
    session_affinity: ClientIP
    service_type: ClusterIP
  register: svc_out
  notify:
  - restart openshift master services
'''