forked from LucasPickering/slumber
-
Notifications
You must be signed in to change notification settings - Fork 0
/
slumber.yml
88 lines (80 loc) · 1.73 KB
/
slumber.yml
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
profiles:
works:
name: This Works
data:
host: https://httpbin.org
username: xX{{chains.username}}Xx
user_guid: abc123
init-fails:
name: Request Init Fails
data:
request-fails:
name: Request Fails
data:
host: http://localhost:5000
username: xX{{chains.username}}Xx
user_guid: abc123
chains:
username:
source: !command
command: [whoami]
trim: both
password:
source: !prompt
message: Password
sensitive: true
auth_token:
source: !request
recipe: login
trigger: !expire 12h
selector: $.data
.ignore:
base: &base
authentication: !bearer "{{chains.auth_token}}"
headers:
Accept: application/json
requests:
login: !request
method: POST
url: "{{host}}/anything/login"
query:
- sudo=yes_please
- fast=no_thanks
- fast=actually_maybe
headers:
Accept: application/json
body: !form_urlencoded
username: "{{username}}"
password: "{{chains.password}}"
users: !folder
name: Users
requests:
get_users: !request
<<: *base
name: Get Users
method: GET
url: "{{host}}/get"
query:
- foo=bar
get_user: !request
<<: *base
name: Get User
method: GET
url: "{{host}}/anything/{{user_guid}}"
modify_user: !request
<<: *base
name: Modify User
method: PUT
url: "{{host}}/anything/{{user_guid}}"
body: !json { "username": "new username" }
get_image: !request
headers:
Accept: image/png
name: Get Image
method: GET
url: "{{host}}/image"
delay: !request
<<: *base
name: Delay
method: GET
url: "{{host}}/delay/5"