clowder 0.3.0

Software to manage user-reserved bare-metal netbooting machines
/*
 * MOST of this file is generated by `diesel print-schema`, from here to the last few lines:
 *
 * BEGIN AUTO-GENERATED PART
 */

table! {
    architectures (id) {
        id -> Int4,
        name -> Varchar,
    }
}

table! {
    disks (id) {
        id -> Int4,
        machine_id -> Int4,
        vendor -> Nullable<Text>,
        model -> Nullable<Text>,
        capacity_gb -> Int4,
        ssd -> Bool,
    }
}

table! {
    emails (id) {
        id -> Int4,
        user_id -> Int4,
        email -> Text,
    }
}

table! {
    github_accounts (id) {
        id -> Int4,
        user_id -> Int4,
        github_username -> Varchar,
    }
}

table! {
    machines (id) {
        id -> Int4,
        name -> Varchar,
        processor_id -> Int4,
        memory_gb -> Int4,
    }
}

table! {
    microarchitectures (id) {
        id -> Int4,
        arch_id -> Int4,
        name -> Varchar,
        url -> Nullable<Varchar>,
    }
}

table! {
    nics (id) {
        id -> Int4,
        machine_id -> Int4,
        vendor -> Nullable<Text>,
        model -> Nullable<Text>,
        mac_address -> Bpchar,
        speed_gbps -> Int4,
    }
}

table! {
    processors (id) {
        id -> Int4,
        microarch_id -> Int4,
        name -> Varchar,
        cores -> Int4,
        threads -> Int4,
        freq_ghz -> Float8,
        url -> Nullable<Varchar>,
    }
}

table! {
    reservations (id) {
        id -> Int4,
        user_id -> Int4,
        machine_id -> Int4,
        scheduled_start -> Timestamptz,
        scheduled_end -> Nullable<Timestamptz>,
        actual_end -> Nullable<Timestamptz>,
        pxe_path -> Nullable<Text>,
        nfs_root -> Nullable<Text>,
    }
}

table! {
    role_assignments (id) {
        id -> Int4,
        user_id -> Int4,
        role_id -> Int4,
    }
}

table! {
    roles (id) {
        id -> Int4,
        name -> Text,
        can_alter_machines -> Bool,
        can_alter_users -> Bool,
        can_create_machines -> Bool,
        can_delete_machines -> Bool,
        can_view_users -> Bool,
    }
}

table! {
    users (id) {
        id -> Int4,
        username -> Varchar,
        name -> Text,
    }
}

joinable!(microarchitectures -> architectures (arch_id));
joinable!(processors -> microarchitectures (microarch_id));
joinable!(machines -> processors (processor_id));
joinable!(disks -> machines (machine_id));
joinable!(nics -> machines (machine_id));
joinable!(emails -> users (user_id));
joinable!(role_assignments -> users (user_id));
joinable!(role_assignments -> roles (role_id));
joinable!(reservations -> users (user_id));
joinable!(reservations -> machines (machine_id));
joinable!(github_accounts -> users (user_id));