Changed warning display for unknown config, remove tools-url on upgrade, added/modified tests. Bug 1383070.
Clarify comment. Bug 1383070.
Test cleanup as per review. Bug 1383070.
provider/azure: make boilerplate <> usage consistent

Remove <> from boilerplate values for consistency's
sake, to reduce confusion about what needs replacing.
This matches the docs.

Fixes https://bugs.launchpad.net/juju-core/+bug/1381289
Allow env-set to handle deprecated attributes
Tweak test
Replace loopback url (localhost, etc) with network bridge ip. Bug 1309207.
Merge pull request #1015 from axw/lp1381289-azure-boilerplate-consistency

provider/azure: make boilerplate <> usage consistent

Remove <> from boilerplate values for consistency's
sake, to reduce confusion about what needs replacing.
This matches the docs.

Fixes https://bugs.launchpad.net/juju-core/+bug/1381289
Make add-metric test independent of map ordering.
Allow empty values in juju set-env.
Merge pull request #1020 from tasdomas/fix-1388073

Fix 1388073 and the worker/uniter/jujuc test failure in 1387936

Command line parameters for juju set-env were being parsed incorrectly, not allowing empty values ('key=') - that was fixed and a test added to avoid future regressions.

Tests for worker/uniter/jujuc were failing on PPC due to reliance on map ordering, which is not guaranteed. Fixed.
Merge pull request #1016 from wallyworld/deprecated-set-env

Allow env-set to handle deprecated attributes

Fixes: https://bugs.launchpad.net/bugs/1387953

Customers will not be hitting this issue but the CI scripts do because they set tools-metadata-url during the course of CI testing.

When set-env is used, you can now pass in deprecated attributes and they will be converted to the new values. The code used to initially parse env config is shared.

As a drive by, convert some more config string literals to constants.
Write metadata for ppc64; do not write product metadata if it has not changed
upgrades: run upgrade steps for final release when upgrading to an alpha or beta release

This allows definition and testing of upgrade steps as we work towards
a stable release.
upgrades: target 1.21 steps at 1.21 final, not alpha1

Targeting at alpha1 was just a temporary step until the upgrade step
selection logic was changed. Also added a check to ensure that upgrade
steps are only targeted to final releases.
cmd/jujud: test fix due to changed upgrade steps selection logic
Small tweak
Refactor metadataUnchanged to be clearer
Explicitly pass in the streams for which to write metadata
state: strictLocalID tweaks

1. Return an error instead of a flag to reduce boilerplate at call
sites.

2. Use strictLocalID in more places where appropriate.