aboutsummaryrefslogtreecommitdiffhomepage
path: root/README.md
blob: 8db9391ee1bc4e176be41a4ea6a29c8b3417d8f7 (plain) (blame)
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
kong-app
=========

This role aims at creating on a remote kong the service, routes and plugins needed by an app

Requirements
------------

None at the moment

Role Variables
--------------
* `kong_servers`: an array of kong\_server to configure with followin configuration:
  * `kong_app_admin_url` the kong admin url (mandatory).
  * `kong_app_admin_apikey` the apikey to use kong admin api. Default to ""
  * `services` an array of services to setup (default to [])
    * `name` the name of the service to create for this app, mandatory
    * `url` the url of the backend of the app, mandatory. May refer to an upstream by its name (https://upstream\_name/path)
    * `upstream` if the url reference an upstream a dict with the configuration, optional
      * `conf` the configuration as expected by kong for an upstream creation
        * `name` mandatory name for the upstream
        * `healthchecks` optional healthchecks configuration as expected by kong api
      * `targets` an array of dict defining a target for kong
        * `target` the host:port to reach the target (mandatory)
        * `weight` the weight of the target (optional)
    * `plugins` An array of plugins to activate with their name and config in a dict
      * `name`
      * `config`
    * `routes` An array of routes to create for this service.
      * `hosts`
      * `paths`
      * `protocols`
      * `methods`

Dependencies
------------



Example Playbook
----------------

    - hosts: localhost
      roles:
         - { role: kong-app, kong_servers: [ kong_app_admin_url: http://localhost:8001,
             services: [ name:example,
             url: http://example.com,
             plugins: [],
             routes: [ { hosts: [my.kong.example], paths: [/] } ]]]
           }

License
-------

TBD

Author Information
------------------

FretLink Team