1{ 2 "version": 2, 3 "waiters": { 4 "FunctionExists": { 5 "delay": 1, 6 "operation": "GetFunction", 7 "maxAttempts": 20, 8 "acceptors": [ 9 { 10 "state": "success", 11 "matcher": "status", 12 "expected": 200 13 }, 14 { 15 "state": "retry", 16 "matcher": "error", 17 "expected": "ResourceNotFoundException" 18 } 19 ] 20 }, 21 "FunctionActive": { 22 "delay": 5, 23 "maxAttempts": 60, 24 "operation": "GetFunctionConfiguration", 25 "description": "Waits for the function's State to be Active. This waiter uses GetFunctionConfiguration API. This should be used after new function creation.", 26 "acceptors": [ 27 { 28 "state": "success", 29 "matcher": "path", 30 "argument": "State", 31 "expected": "Active" 32 }, 33 { 34 "state": "failure", 35 "matcher": "path", 36 "argument": "State", 37 "expected": "Failed" 38 }, 39 { 40 "state": "retry", 41 "matcher": "path", 42 "argument": "State", 43 "expected": "Pending" 44 } 45 ] 46 }, 47 "FunctionUpdated": { 48 "delay": 5, 49 "maxAttempts": 60, 50 "operation": "GetFunctionConfiguration", 51 "description": "Waits for the function's LastUpdateStatus to be Successful. This waiter uses GetFunctionConfiguration API. This should be used after function updates.", 52 "acceptors": [ 53 { 54 "state": "success", 55 "matcher": "path", 56 "argument": "LastUpdateStatus", 57 "expected": "Successful" 58 }, 59 { 60 "state": "failure", 61 "matcher": "path", 62 "argument": "LastUpdateStatus", 63 "expected": "Failed" 64 }, 65 { 66 "state": "retry", 67 "matcher": "path", 68 "argument": "LastUpdateStatus", 69 "expected": "InProgress" 70 } 71 ] 72 }, 73 "FunctionActiveV2": { 74 "delay": 1, 75 "maxAttempts": 300, 76 "operation": "GetFunction", 77 "description": "Waits for the function's State to be Active. This waiter uses GetFunction API. This should be used after new function creation.", 78 "acceptors": [ 79 { 80 "state": "success", 81 "matcher": "path", 82 "argument": "Configuration.State", 83 "expected": "Active" 84 }, 85 { 86 "state": "failure", 87 "matcher": "path", 88 "argument": "Configuration.State", 89 "expected": "Failed" 90 }, 91 { 92 "state": "retry", 93 "matcher": "path", 94 "argument": "Configuration.State", 95 "expected": "Pending" 96 } 97 ] 98 }, 99 "FunctionUpdatedV2": { 100 "delay": 1, 101 "maxAttempts": 300, 102 "operation": "GetFunction", 103 "description": "Waits for the function's LastUpdateStatus to be Successful. This waiter uses GetFunction API. This should be used after function updates.", 104 "acceptors": [ 105 { 106 "state": "success", 107 "matcher": "path", 108 "argument": "Configuration.LastUpdateStatus", 109 "expected": "Successful" 110 }, 111 { 112 "state": "failure", 113 "matcher": "path", 114 "argument": "Configuration.LastUpdateStatus", 115 "expected": "Failed" 116 }, 117 { 118 "state": "retry", 119 "matcher": "path", 120 "argument": "Configuration.LastUpdateStatus", 121 "expected": "InProgress" 122 } 123 ] 124 }, 125 "PublishedVersionActive": { 126 "delay": 5, 127 "maxAttempts": 312, 128 "operation": "GetFunctionConfiguration", 129 "description": "Waits for the published version's State to be Active. This waiter uses GetFunctionConfiguration API. This should be used after new version is published.", 130 "acceptors": [ 131 { 132 "state": "success", 133 "matcher": "path", 134 "argument": "State", 135 "expected": "Active" 136 }, 137 { 138 "state": "failure", 139 "matcher": "path", 140 "argument": "State", 141 "expected": "Failed" 142 }, 143 { 144 "state": "retry", 145 "matcher": "path", 146 "argument": "State", 147 "expected": "Pending" 148 } 149 ] 150 } 151 } 152} 153