github.com/Ilhicas/nomad@v1.0.4-0.20210304152020-e86851182bc3/ui/mirage/scenarios/topo.js (about)

     1  import faker from 'nomad-ui/mirage/faker';
     2  import { generateNetworks, generatePorts } from '../common';
     3  
     4  const genResources = (CPU, Memory) => ({
     5    Cpu: { CpuShares: CPU },
     6    Memory: { MemoryMB: Memory },
     7    Disk: { DiskMB: 10000 },
     8    Networks: generateNetworks(),
     9    Ports: generatePorts(),
    10  });
    11  
    12  export function topoSmall(server) {
    13    server.createList('agent', 3);
    14    server.createList('node', 12, {
    15      datacenter: 'dc1',
    16      status: 'ready',
    17      nodeResources: genResources(3000, 5192),
    18    });
    19  
    20    const jobResources = [
    21      ['M: 2560, C: 150'],
    22      ['M: 128, C: 400'],
    23      ['M: 512, C: 100'],
    24      ['M: 256, C: 150'],
    25      ['M: 200, C: 50'],
    26      ['M: 64, C: 100'],
    27      ['M: 128, C: 150'],
    28      ['M: 1024, C: 500'],
    29      ['M: 100, C: 300', 'M: 200, C: 150'],
    30      ['M: 512, C: 250', 'M: 600, C: 200'],
    31    ];
    32  
    33    jobResources.forEach(spec => {
    34      server.create('job', {
    35        status: 'running',
    36        datacenters: ['dc1'],
    37        type: 'service',
    38        createAllocations: false,
    39        resourceSpec: spec,
    40      });
    41    });
    42  
    43    server.createList('allocation', 25, {
    44      forceRunningClientStatus: true,
    45    });
    46  }
    47  
    48  export function topoMedium(server) {
    49    server.createList('agent', 3);
    50    server.createList('node', 10, {
    51      datacenter: 'us-west-1',
    52      status: 'ready',
    53      nodeResources: genResources(3000, 5192),
    54    });
    55    server.createList('node', 12, {
    56      datacenter: 'us-east-1',
    57      status: 'ready',
    58      nodeResources: genResources(3000, 5192),
    59    });
    60    server.createList('node', 11, {
    61      datacenter: 'eu-west-1',
    62      status: 'ready',
    63      nodeResources: genResources(3000, 5192),
    64    });
    65  
    66    server.createList('node', 8, {
    67      datacenter: 'us-west-1',
    68      status: 'ready',
    69      nodeResources: genResources(8000, 12192),
    70    });
    71    server.createList('node', 9, {
    72      datacenter: 'us-east-1',
    73      status: 'ready',
    74      nodeResources: genResources(8000, 12192),
    75    });
    76  
    77    const jobResources = [
    78      ['M: 2560, C: 150'],
    79      ['M: 128, C: 400'],
    80      ['M: 512, C: 100'],
    81      ['M: 256, C: 150'],
    82      ['M: 200, C: 50'],
    83      ['M: 64, C: 100'],
    84      ['M: 128, C: 150'],
    85      ['M: 1024, C: 500'],
    86  
    87      ['M: 1200, C: 50'],
    88      ['M: 1400, C: 200'],
    89      ['M: 50, C: 150'],
    90      ['M: 5000, C: 1800'],
    91  
    92      ['M: 100, C: 300', 'M: 200, C: 150'],
    93      ['M: 512, C: 250', 'M: 600, C: 200'],
    94    ];
    95  
    96    jobResources.forEach(spec => {
    97      server.create('job', {
    98        status: 'running',
    99        datacenters: ['dc1'],
   100        type: 'service',
   101        createAllocations: false,
   102        createRecommendations: true,
   103        resourceSpec: spec,
   104      });
   105    });
   106  
   107    server.createList('allocation', 100, {
   108      forceRunningClientStatus: true,
   109    });
   110  }