github.com/manicqin/nomad@v0.9.5/ui/app/components/freestyle/sg-diff-viewer.js (about) 1 import Component from '@ember/component'; 2 3 const generateDiff = changeset => ({ 4 Fields: null, 5 ID: 'insertions-only', 6 Objects: null, 7 TaskGroups: [ 8 { 9 Fields: [{ Annotations: null, Name: 'Count', New: '2', Old: '2', Type: 'None' }], 10 Name: 'cache', 11 Objects: [ 12 { 13 Fields: changeset, 14 Name: 'RestartPolicy', 15 Objects: null, 16 Type: 'Edited', 17 }, 18 ], 19 Type: 'Edited', 20 Updates: null, 21 }, 22 ], 23 Type: 'Edited', 24 }); 25 26 export default Component.extend({ 27 insertionsOnly: generateDiff([ 28 { Annotations: null, Name: 'Attempts', New: '15', Old: '15', Type: 'None' }, 29 { Annotations: null, Name: 'Delay', New: '25000000000', Old: '', Type: 'Added' }, 30 { Annotations: null, Name: 'Interval', New: '900000000000', Old: '', Type: 'Added' }, 31 { Annotations: null, Name: 'Mode', New: 'delay', Old: 'delay', Type: 'None' }, 32 ]), 33 34 deletionsOnly: generateDiff([ 35 { Annotations: null, Name: 'Attempts', New: '15', Old: '15', Type: 'None' }, 36 { 37 Annotations: null, 38 Name: 'Delay', 39 New: '25000000000', 40 Old: '25000000000', 41 Type: 'None', 42 }, 43 { 44 Annotations: null, 45 Name: 'Interval', 46 New: '900000000000', 47 Old: '900000000000', 48 Type: 'None', 49 }, 50 { Annotations: null, Name: 'Mode', New: '', Old: 'delay', Type: 'Deleted' }, 51 ]), 52 53 editsOnly: generateDiff([ 54 { Annotations: null, Name: 'Attempts', New: '15', Old: '15', Type: 'None' }, 55 { 56 Annotations: null, 57 Name: 'Delay', 58 New: '25000000000', 59 Old: '25000000000', 60 Type: 'None', 61 }, 62 { 63 Annotations: null, 64 Name: 'Interval', 65 New: '900000000000', 66 Old: '250000000000', 67 Type: 'Edited', 68 }, 69 { Annotations: null, Name: 'Mode', New: 'delay', Old: 'delay', Type: 'None' }, 70 ]), 71 72 largeDiff: { 73 Fields: null, 74 ID: 'example', 75 Objects: null, 76 TaskGroups: [ 77 { 78 Fields: null, 79 Name: 'cache', 80 Objects: null, 81 Tasks: [ 82 { 83 Annotations: null, 84 Fields: [ 85 { 86 Annotations: null, 87 Name: 'Meta[one]', 88 New: "flew over the cuckoo's nest", 89 Old: '', 90 Type: 'Added', 91 }, 92 { 93 Annotations: null, 94 Name: 'Meta[two]', 95 New: 'birds on a wire', 96 Old: '', 97 Type: 'Added', 98 }, 99 ], 100 Name: 'redis', 101 Objects: [ 102 { 103 Fields: [ 104 { 105 Annotations: null, 106 Name: 'image', 107 New: 'redis:3.4', 108 Old: 'redis:3.2', 109 Type: 'Edited', 110 }, 111 { 112 Annotations: null, 113 Name: 'port_map[0][db]', 114 New: '6380', 115 Old: '6379', 116 Type: 'Edited', 117 }, 118 ], 119 Name: 'Config', 120 Objects: null, 121 Type: 'Edited', 122 }, 123 { 124 Fields: [ 125 { Annotations: null, Name: 'CPU', New: '1000', Old: '500', Type: 'Edited' }, 126 { Annotations: null, Name: 'DiskMB', New: '0', Old: '0', Type: 'None' }, 127 { Annotations: null, Name: 'IOPS', New: '0', Old: '0', Type: 'None' }, 128 { Annotations: null, Name: 'MemoryMB', New: '512', Old: '256', Type: 'Edited' }, 129 ], 130 Name: 'Resources', 131 Objects: [ 132 { 133 Fields: [ 134 { Annotations: null, Name: 'MBits', New: '100', Old: '', Type: 'Added' }, 135 ], 136 Name: 'Network', 137 Objects: [ 138 { 139 Fields: [ 140 { Annotations: null, Name: 'Label', New: 'db', Old: '', Type: 'Added' }, 141 ], 142 Name: 'Dynamic Port', 143 Objects: null, 144 Type: 'Added', 145 }, 146 ], 147 Type: 'Added', 148 }, 149 { 150 Fields: [ 151 { Annotations: null, Name: 'MBits', New: '', Old: '10', Type: 'Deleted' }, 152 ], 153 Name: 'Network', 154 Objects: [ 155 { 156 Fields: [ 157 { Annotations: null, Name: 'Label', New: '', Old: 'db', Type: 'Deleted' }, 158 ], 159 Name: 'Dynamic Port', 160 Objects: null, 161 Type: 'Deleted', 162 }, 163 ], 164 Type: 'Deleted', 165 }, 166 ], 167 Type: 'Edited', 168 }, 169 { 170 Fields: [ 171 { 172 Annotations: null, 173 Name: 'AddressMode', 174 New: 'auto', 175 Old: 'auto', 176 Type: 'None', 177 }, 178 { 179 Annotations: null, 180 Name: 'Name', 181 New: 'redis-cache', 182 Old: 'redis-cache', 183 Type: 'None', 184 }, 185 { Annotations: null, Name: 'PortLabel', New: 'db', Old: 'db', Type: 'None' }, 186 ], 187 Name: 'Service', 188 Objects: [ 189 { 190 Fields: [ 191 { Annotations: null, Name: 'Tags', New: 'redis', Old: '', Type: 'Added' }, 192 { Annotations: null, Name: 'Tags', New: 'cache', Old: 'cache', Type: 'None' }, 193 { 194 Annotations: null, 195 Name: 'Tags', 196 New: 'global', 197 Old: 'global', 198 Type: 'None', 199 }, 200 ], 201 Name: 'Tags', 202 Objects: null, 203 Type: 'Added', 204 }, 205 { 206 Fields: [ 207 { Annotations: null, Name: 'AddressMode', New: '', Old: '', Type: 'None' }, 208 { Annotations: null, Name: 'Command', New: '', Old: '', Type: 'None' }, 209 { Annotations: null, Name: 'GRPCService', New: '', Old: '', Type: 'None' }, 210 { 211 Annotations: null, 212 Name: 'GRPCUseTLS', 213 New: 'false', 214 Old: 'false', 215 Type: 'None', 216 }, 217 { Annotations: null, Name: 'InitialStatus', New: '', Old: '', Type: 'None' }, 218 { 219 Annotations: null, 220 Name: 'Interval', 221 New: '15000000000', 222 Old: '10000000000', 223 Type: 'Edited', 224 }, 225 { Annotations: null, Name: 'Method', New: '', Old: '', Type: 'None' }, 226 { Annotations: null, Name: 'Name', New: 'alive', Old: 'alive', Type: 'None' }, 227 { Annotations: null, Name: 'Path', New: '', Old: '', Type: 'None' }, 228 { Annotations: null, Name: 'PortLabel', New: '', Old: '', Type: 'None' }, 229 { Annotations: null, Name: 'Protocol', New: '', Old: '', Type: 'None' }, 230 { 231 Annotations: null, 232 Name: 'TLSSkipVerify', 233 New: 'false', 234 Old: 'false', 235 Type: 'None', 236 }, 237 { 238 Annotations: null, 239 Name: 'Timeout', 240 New: '7000000000', 241 Old: '2000000000', 242 Type: 'Edited', 243 }, 244 { Annotations: null, Name: 'Type', New: 'tcp', Old: 'tcp', Type: 'None' }, 245 ], 246 Name: 'Check', 247 Objects: null, 248 Type: 'Edited', 249 }, 250 ], 251 Type: 'Edited', 252 }, 253 ], 254 Type: 'Edited', 255 }, 256 ], 257 Type: 'Edited', 258 Updates: null, 259 }, 260 { 261 Fields: [ 262 { Annotations: null, Name: 'Count', New: '1', Old: '', Type: 'Added' }, 263 { Annotations: null, Name: 'Meta[key]', New: 'value', Old: '', Type: 'Added' }, 264 { Annotations: null, Name: 'Meta[red]', New: 'fish', Old: '', Type: 'Added' }, 265 ], 266 Name: 'cache2', 267 Objects: [ 268 { 269 Fields: [ 270 { Annotations: null, Name: 'Attempts', New: '2', Old: '', Type: 'Added' }, 271 { Annotations: null, Name: 'Delay', New: '15000000000', Old: '', Type: 'Added' }, 272 { Annotations: null, Name: 'Interval', New: '1800000000000', Old: '', Type: 'Added' }, 273 { Annotations: null, Name: 'Mode', New: 'fail', Old: '', Type: 'Added' }, 274 ], 275 Name: 'RestartPolicy', 276 Objects: null, 277 Type: 'Added', 278 }, 279 { 280 Fields: [ 281 { Annotations: null, Name: 'Migrate', New: 'false', Old: '', Type: 'Added' }, 282 { Annotations: null, Name: 'SizeMB', New: '300', Old: '', Type: 'Added' }, 283 { Annotations: null, Name: 'Sticky', New: 'false', Old: '', Type: 'Added' }, 284 ], 285 Name: 'EphemeralDisk', 286 Objects: null, 287 Type: 'Added', 288 }, 289 ], 290 Tasks: [ 291 { 292 Annotations: null, 293 Fields: [ 294 { Annotations: null, Name: 'Driver', New: 'docker', Old: '', Type: 'Added' }, 295 { Annotations: null, Name: 'KillTimeout', New: '5000000000', Old: '', Type: 'Added' }, 296 { Annotations: null, Name: 'Leader', New: 'false', Old: '', Type: 'Added' }, 297 { Annotations: null, Name: 'ShutdownDelay', New: '0', Old: '', Type: 'Added' }, 298 ], 299 Name: 'redis', 300 Objects: [ 301 { 302 Fields: [ 303 { Annotations: null, Name: 'image', New: 'redis:3.2', Old: '', Type: 'Added' }, 304 { 305 Annotations: null, 306 Name: 'port_map[0][db]', 307 New: '6379', 308 Old: '', 309 Type: 'Added', 310 }, 311 ], 312 Name: 'Config', 313 Objects: null, 314 Type: 'Added', 315 }, 316 { 317 Fields: [ 318 { Annotations: null, Name: 'CPU', New: '500', Old: '', Type: 'Added' }, 319 { Annotations: null, Name: 'DiskMB', New: '0', Old: '', Type: 'Added' }, 320 { Annotations: null, Name: 'IOPS', New: '0', Old: '', Type: 'Added' }, 321 { Annotations: null, Name: 'MemoryMB', New: '256', Old: '', Type: 'Added' }, 322 ], 323 Name: 'Resources', 324 Objects: [ 325 { 326 Fields: [ 327 { Annotations: null, Name: 'MBits', New: '10', Old: '', Type: 'Added' }, 328 ], 329 Name: 'Network', 330 Objects: [ 331 { 332 Fields: [ 333 { Annotations: null, Name: 'Label', New: 'db', Old: '', Type: 'Added' }, 334 ], 335 Name: 'Dynamic Port', 336 Objects: null, 337 Type: 'Added', 338 }, 339 ], 340 Type: 'Added', 341 }, 342 ], 343 Type: 'Added', 344 }, 345 ], 346 Type: 'Added', 347 }, 348 ], 349 Type: 'Added', 350 Updates: null, 351 }, 352 ], 353 Type: 'Edited', 354 }, 355 });