mirror of
https://github.com/librenms/librenms.git
synced 2024-10-07 16:52:45 +00:00
* Fixed snmptraps. * Fixed space * Added bgp down/up and authentication failure * Fixed typo * Fixed some typos, arrays, astext and format_hostname * Updated documentation * Moved code to a function * Some refactor * Minor fixes * Minor fixes 2 * More minor fixes * Changes requested by Tony * Minor fixes * Moved include to snmptrap.php * Refactor traps to use object oriented code. Should trigger events too/instead, but we'll leave that. Testing todo * Add tests and fix things so they actually work Not checking events yet. * Fixed typo and severity level * Update composer deps, I think the lock file wasn't right. add json and mbstring extension deps while I'm at it. * Fix several issues with phpunit fixtures
82 lines
2.9 KiB
PHP
82 lines
2.9 KiB
PHP
<?php
|
|
|
|
/*
|
|
|--------------------------------------------------------------------------
|
|
| Model Factories
|
|
|--------------------------------------------------------------------------
|
|
|
|
|
| Here you may define all of your model factories. Model factories give
|
|
| you a convenient way to create models for testing and seeding your
|
|
| database. Just tell the factory how a default model should look.
|
|
|
|
|
*/
|
|
|
|
/** @var \Illuminate\Database\Eloquent\Factory $factory */
|
|
|
|
use LibreNMS\Util\IPv4;
|
|
|
|
$factory->define(App\User::class, function (Faker\Generator $faker) {
|
|
static $password;
|
|
|
|
return [
|
|
'name' => $faker->name,
|
|
'email' => $faker->unique()->safeEmail,
|
|
'password' => $password ?: $password = bcrypt('secret'),
|
|
'remember_token' => str_random(10),
|
|
];
|
|
});
|
|
|
|
$factory->define(\App\Models\Device::class, function (Faker\Generator $faker) {
|
|
return [
|
|
'hostname' => $faker->domainWord.'.'.$faker->domainName,
|
|
'ip' => $faker->randomElement([$faker->ipv4, $faker->ipv6]),
|
|
'status' => $status = random_int(0, 1),
|
|
'status_reason' => $status == 0 ? $faker->randomElement(['snmp', 'icmp']) : '', // allow invalid states?
|
|
];
|
|
});
|
|
|
|
$factory->define(\App\Models\Port::class, function (Faker\Generator $faker) {
|
|
return [
|
|
'ifIndex' => $faker->unique()->numberBetween(),
|
|
'ifName' => $faker->text(20),
|
|
'ifLastChange' => $faker->unixTime(),
|
|
];
|
|
});
|
|
|
|
$factory->define(\App\Models\BgpPeer::class, function (Faker\Generator $faker) {
|
|
return [
|
|
'bgpPeerIdentifier' => $faker->ipv4,
|
|
'bgpLocalAddr' => $faker->ipv4,
|
|
'bgpPeerRemoteAddr' => $faker->ipv4,
|
|
'bgpPeerRemoteAs' => $faker->numberBetween(1, 65535),
|
|
'bgpPeerState' => $faker->randomElement(['established', 'idle']),
|
|
'astext' => $faker->sentence(),
|
|
'bgpPeerAdminStatus' => $faker->randomElement(['start', 'stop']),
|
|
'bgpPeerInUpdates' => $faker->randomDigit,
|
|
'bgpPeerOutUpdates' => $faker->randomDigit,
|
|
'bgpPeerInTotalMessages' => $faker->randomDigit,
|
|
'bgpPeerOutTotalMessages' => $faker->randomDigit,
|
|
'bgpPeerFsmEstablishedTime' => $faker->unixTime,
|
|
'bgpPeerInUpdateElapsedTime' => $faker->unixTime,
|
|
];
|
|
});
|
|
|
|
$factory->define(\App\Models\Ipv4Address::class, function (Faker\Generator $faker) {
|
|
$prefix = $faker->numberBetween(0, 32);
|
|
$ip = new IPv4($faker->ipv4 . '/' . $prefix);
|
|
|
|
return [
|
|
'ipv4_address' => $ip->uncompressed(),
|
|
'ipv4_prefixlen' => $prefix,
|
|
'ipv4_network_id' => function () use ($ip) {
|
|
return factory(\App\Models\Ipv4Network::class)->create(['ipv4_network' => $ip->getNetworkAddress() . '/' . $ip->cidr])->ipv4_network_id;
|
|
}
|
|
];
|
|
});
|
|
|
|
$factory->define(\App\Models\Ipv4Network::class, function (Faker\Generator $faker) {
|
|
return [
|
|
'ipv4_network' => $faker->ipv4 . '/' . $faker->numberBetween(0, 32),
|
|
];
|
|
});
|