Stop using intersphinx

Remove intersphinx from the docs build as it triggers network calls that
occasionally fail, and we don't really use intersphinx (links other
sphinx documents out on the internet)

This also removes the requirement for internet access during docs build.

This causes docs jobs to fail because we error out on warnings.

Change-Id: I71e941e2a639641a662a163c682eb86d51de42fb
Related-Bug: #1368910
delete python bytecode before every test run

Bring over the cleaning line from run_tests.sh for the pyc files to
all the tox runs.

This should eliminate the need to clean -x -i to kill pyc files in
your local directory to get tests to pass.

Closes-Bug: #1368661

Change-Id: Idf3a46d8c95806f2d2ce28ce84ced12b625e53df
Bump FakeDriver's resource numbers

Bump the amount of memory and disk that FakeDriver reports so one can
schedule larger instances. One should be able to schedule an instance
larger with more then 8GB of ram onto the FakeDriver.

Since the FakeVirt driver is now used for much more then just unit
tests, subclass FakeVirt to decouple the amount of resources FakeVirt reports
from the amounts in the api_samples. This way the api_samples don't need changing every
time the resource amounts reported by FakeVirt are tweaked.

Change-Id: Ifd3b8bd1abf985d279de334776ed5feb4fa72a27
Related-Bug: #1268943
Add plan for kilo blueprints: when is a blueprint needed

At the nova mid-cycle we agreed that while specs have made our
process significantly better, we think the current approach still leaves
much to be desired. This document is the outcome of the discussion at
the mid-cycle on how we want to manage blueprints in kilo.

This proposal is being placed in devref, as we want to use gerrit's
workflow (two core reviews, inline comments, revisions etc) and this is
a document for developers.

It turns out adding the specs requirement to blueprints adds a
non-trivial amount of overhead, revisit when a blueprint and spec is
needed to minimize overhead in cases where it isn't helpful.

Change-Id: Iaaadc26f3f51ee091419beaa12e0508623eed99e
Fixes network_get_all_by_host to use indexes

The OR in the subquery was constructed in a way that didn't allow
the fixed_ips without instances allocated to be filtered out. It
also had an unnecessary join through virtual interfaces. We have a
denormalized field for instance_uuid with an index in the fixed_ips
table that we can use. This patch removes the unnecessary join and
ads an extra filter inside the OR to reject fixed_ips without
instances. In my test with 300000 fixed ips, this reduced the query
time from about 2.5 seconds to less than 0.01 seconds.

Change-Id: I26fb0dfaf5ff64bd70c947982de4ec1728c84856
Resolves-bug: #1369009
Merge "Fix config generator to use keystonemiddleware"
Merge "Adds LOG statements in multiprocess API test"
Merge "Handle exception better in v2 attach_interface"
Merge "Add InstancePCIRequests object"
Merge "Replace pci_request flavor storage with proper object usage"
Merge "Add request_id in PciDevice"
Merge "Support SR-IOV networking in the PCI modules"
Merge "Support SR-IOV networking in nova compute api and nova neutronv2"
Merge "Support SR-IOV networking in libvirt"
Merge "Clarify logging in lockutils"
Stash numa-related flavor extra_spec items in system_metadata

This is a temporary measure to avoid having to add additional persistence
of extra_specs data simply to facilitate merging the NUMA patches. Only
the numa_cpus.* and numa_mem.* items are saved from extra_specs at
this time. The expectation is that this will quickly come out in kilo
when the rest of the flavor information stashed in system_metadata gets
removed and stored elsewhere.

Blueprint: virt-driver-numa-placement
Change-Id: I83ca863d521c579d8f1fe6168d7b1096af9f14f1
Hook NUMA topology checking into claims

This patch adds the ability to test claims against NUMA topology exposed
by the host and instance. This is currently a no-op as no code in the
scheduler will actually attempt to set the limits against numa_topology.
Since getting the NUMA topology of the instance may require an additional
db roundtrip, we try to avoid getting it unless absolutely necessary.

This patch also changes the resource_tracker resize_claim method to
accept the image_metada of the instance as it is used (alongside flavor)
to calculate the new topology that will be exposed after the resize is
done.

The resource tracker will not do any actual usage tracking yet - this
will be done in a follow-up patch.

Blueprint: virt-driver-numa-placement
Change-Id: I07b690243d481c855c5e706f968cf224b336a1a0
Make resource tracker track NUMA usage

This patch makes the resource tracker actually track and update NUMA
usage from instance andd resize claims, and periodic resource updates.

Change-Id: Iea9d076cb37e530f442faefacd2a59b6b6225e92
Blueprint: virt-driver-numa-placement
API boot process sets NUMA topology for instances

This patch makes the API instance boot path look at the bits that can
contain requested topology, generate the desired topology and make sure
it is saved on the instance itself.

We also need to account for the flavor passed to
VirtNUMAInstanceTopology.get_constraints not being an actual Flavor
object, and work with db layer objects.

Change-Id: Ia3f3446da99a04e2d8152acb7d0bda7a1d502c83
Blueprint: virt-driver-numa-placement
Make HostManager track NUMA usage

This patch adds tracking of NUMA usage in scheduler's HostManager class,
by adding it to the HostState, and making sure it gets updated along
with all the other usage data.

Change-Id: Id31c9a7fd54b918b3d38abb61b305cf7048a6a7d
Blueprint: virt-driver-numa-placement