juju-core 1.25.0

Milestone information

Project:
juju-core
Series:
1.25
Version:
1.25.0
Released:
 
Registrant:
Curtis Hovey
Release registered:
Active:
No. Drivers cannot target bugs and blueprints to this milestone.  

Download RDF metadata

Activities

Assigned to you:
No blueprints or bugs assigned to you.
Assignees:
10 Andrew Wilkins, 2 Cheryl Jennings, 4 Ian Booth, 1 Katherine Cox-Buday, 1 Martin Packman, 2 Menno Finlay-Smits, 5 Michael Foord, 3 Tim Penhey
Blueprints:
1 Implemented
Bugs:
27 Fix Released

Download files for this release

After you've downloaded a file, you can verify its authenticity using its MD5 sum or signature. (How do I verify a download?)

File Description Downloads
download icon juju-setup-1.25.0-signed.exe (md5, sig) Signed Windows installer for the juju client 435
last downloaded 41 weeks ago
download icon juju-1.25.0-centos7.tar.gz (md5, sig) Centos juju commands tarball 35
last downloaded 41 weeks ago
download icon juju-1.25.0-osx.tar.gz (md5, sig) OS X juju commands tarball 17
last downloaded 41 weeks ago
download icon juju-setup-1.25.0.exe (md5, sig) Windows installer for the juju client 42
last downloaded 41 weeks ago
download icon juju-core_1.25.0.tar.gz (md5, sig) Juju-core release 152
last downloaded 41 weeks ago
Total downloads: 681

Release notes 

# juju-core 1.25.0

A new stable release of Juju, juju-core 1.25.0, is now available.
This release replaces version 1.24.7.

## Getting Juju

juju-core 1.25.0 is available for Wily and backported to earlier
series in the following PPA:

    https://launchpad.net/~juju/+archive/stable

Windows Centos, and OS X users will find installers at:

    https://launchpad.net/juju-core/+milestone/1.25.0

## Notable Changes
  * (Experimental) Improved networking features for AWS
    * New 'spaces' and 'subnet' commands
    * New 'spaces' constraints support
  * Support for "devices" on MAAS 1.8+
  * Storage support for GCE and Azure providers
  * Payload management for charmers

### (Experimental) Improved networking features for AWS

Juju has experimental support for deploying services on AWS in isolation,
taking advantage of the enhanced AWS VPC networking features. This is just a
first step towards a full-fledged networking model support in Juju.

#### New 'spaces' and 'subnet' commands

Juju introduces the 'space' and 'subnet' commands to manage the networks
available to services. A Juju network space is a collection of related subnets
that have no firewalls between each other and have the same ingress and egress
policies.

You can create a new Juju space, and optionally associate existing subnets
with it by specifying their CIDRs using the 'create' subcommand. The command
looks like this:

    juju space create <name> [<CIDR1> <CIDR2> …]

The list of registered spaces can be seen using the 'list' subcommand:

    juju space list [--short] [--format yaml|json] [--output <path>]

You can add an existing AWS subnet to a space by CIDR or AWS ID, for example:

    juju subnet add <CIDR>|<AWS-subnet-id> <space-name>

You can list all the subnets known by Juju and optionally filtering them by
space and/or availability zone like so:

    juju subnet list [--zone <name>] [--space <name>] [<zone1> <zone2> …]

For more information about these commands, type:

    juju <command> --help

#### New 'spaces' constraints support

The new 'spaces' constraint instructs Juju to deploy a service's units in
subnets of the given space.

Similar to the 'tags' constraint, the 'spaces' constraint takes a comma-
delimited list of existing Juju network spaces. Both positive (without prefix)
and negative (prefixed by "^") spaces are allowed in the list. For this alpha
release, the first positive space name is used, the rest is ignored.

You can constrain a service to a space like this:

    juju deploy <charm-URL> [<service-name>] [--constraints "spaces=<list>"]

For more information, run

    juju help glossary

and

    juju help constraints

#### Known issues

Deploying a service to a space that has no subnets will cause the agent to
panic and is a known issue (https://launchpad.net/bugs/1499426). This issue
can be mitigated by always adding at least one subnet to the space.

### Support "devices" on MAAS 1.8+

MAAS 1.8 introduced a new feature called "devices". This allows the
association of a "device", that requires an IP address, with a parent machine
managed by MAAS. There is a view in the MAAS UI showing all devices.

With the "address-allocation" feature flag enabled, Juju will register LXC and
KVM containers as devices on MAAS 1.8+. They are visible in the MAAS UI. If
the environment is forcibly shut down, the IP addresses allocated to the
containers will be released by MAAS.

You can enable "address-allocation" is new Juju environments like so:

    JUJU_DEV_FEATURE_FLAG=address-allocation juju bootstrap

### Storage support for GCE and Azure providers

Juju's storage feature can now be used with the Google Compute Engine and
Azure providers. Storage is now supported for local, AWS, Openstack, MAAS, GCE
and Azure. See https://jujucharms.com/docs/devel/storage for more information.

### Status for storage volumes

Volumes now have status associated, so provisioning progress can be observed.
List the volumes to see their status:

    juju storage volume list

### Payload management for charmers

The new payload management feature allows charmers to more accurately define
large and complex deployments by registering different payloads, such as LXC,
KVM, and docker, with Juju. This lets the operator better understand the
purpose and function of these payloads on a given machine.

You define these payloads in the metadata.yaml of the charm under the
payloads section. You create a class for the payload, "monitoring" or "kvm-
guest", and assign the type.

    payloads:
        monitoring:
            type: docker
        kvm-guest:
            type: kvm

From your charm hook you can manage your payload with the following
commands:

    payload-register <type> <class> <ID> [tags]
    payload-unregister <type> <class> <ID>
    payload-status-set <type> <class> <ID> <starting, running, stopping, stopped>

From the Juju command line you can view your payloads like this:

      juju list-payloads <filter>

For more information run:

    juju help payloads

## Resolved issues

  * Failed configuring a static ip for container "1/lxc/0": cannot
    allocate addresses: instid not supported
    Lp 1498982

  * Addresses logged by apiaddressupdater aren't accurate
    Lp 1497098

  * Server should handle tools of unknown or unsupported series
    Lp 1403689

  * Provider/gce: devicenames populated in volume attachment info are
    invalid
    Lp 1500703

  * Provider/ec2: volumes should be attached with name "xvdf" instead
    of "xvdf1" by default
    Lp 1500721

  * Provider/ec2: "iops" should be per-gib in ebs pool config
    Lp 1501637

  * Provider/ec2: min/max ebs volume sizes are wrong for ssd/iops
    Lp 1501642

  * Worker/storageprovisioner: worker bounces upon finding invalid
    volume/filesystem params
    Lp 1501710

  * Config-get returns scientific notation for large ints
    Lp 1302118

  * Sending a sigabrt to jujud process causes jujud to uninstall
    (wiping /var/lib/juju)
    Lp 1464304

  * Juju-core 1.20.11 crashes (sigsegv) if apiaddresses key is missing
    from agent.conf
    Lp 1392814

  * Session closed in data source
    Lp 1497829

  * Support use of cloud-images mirror for container images
    Lp 1357045

Finally

We encourage everyone to subscribe the mailing list at
juju-dev@lists.canonical.com, or join us on #juju-dev on freenode.

Changelog 

This release does not have a changelog.

1 blueprint and 27 bugs targeted

Blueprint Priority Assignee Delivery
Payload Management Payload Management 5 Essential Katherine Cox-Buday  11 Implemented
Bug report Importance Assignee Status
1335885 #1335885 destroy-environment reports WARNING cannot delete security group 2 Critical Tim Penhey  10 Fix Released
1498982 #1498982 failed configuring a static IP for container "1/lxc/0": cannot allocate addresses: instId not supported 2 Critical Michael Foord  10 Fix Released
1499571 #1499571 Restore failed: error fetching address 2 Critical Michael Foord  10 Fix Released
1505866 #1505866 TestRenderNetworkInterfacesScript* tests fail on windows 2 Critical Michael Foord  10 Fix Released
1508585 #1508585 TestUploadedToolsMetadata fails on windows and centos 2 Critical Cheryl Jennings  10 Fix Released
1302118 #1302118 config-get returns scientific notation for large ints 3 High Ian Booth  10 Fix Released
1373516 #1373516 Switch default instance type from m1.small to t2.small/m3.medium for EC2 provider 3 High Cheryl Jennings  10 Fix Released
1392814 #1392814 juju-core 1.20.11 crashes (SIGSEGV) if apiaddresses key is missing from agent.conf 3 High Ian Booth  10 Fix Released
1403689 #1403689 Server should handle tools of unknown or unsupported series 3 High Ian Booth  10 Fix Released
1435283 #1435283 juju occasionally switches a units public-address if an additional interface is added post-deployment 3 High Michael Foord  10 Fix Released
1464304 #1464304 Sending a SIGABRT to jujud process causes jujud to uninstall (wiping /var/lib/juju) 3 High Andrew Wilkins  10 Fix Released
1494476 #1494476 MAAS provider with MAAS 1.9 - /etc/network/interfaces "auto eth0" gets removed and bridge is not setup 3 High Michael Foord  10 Fix Released
1497094 #1497094 SetAPIHostPorts shouldn't record just one address per API server 3 High Menno Finlay-Smits  10 Fix Released
1497098 #1497098 Addresses logged by apiaddressupdater aren't accurate 3 High Ian Booth  10 Fix Released
1497829 #1497829 session closed in data source 3 High Menno Finlay-Smits  10 Fix Released
1500613 #1500613 configstore should break fslock if time > few seconds 3 High Tim Penhey  10 Fix Released
1500703 #1500703 provider/gce: DeviceNames populated in volume attachment info are invalid 3 High Andrew Wilkins  10 Fix Released
1500721 #1500721 provider/ec2: volumes should be attached with name "xvdf" instead of "xvdf1" by default 3 High Andrew Wilkins  10 Fix Released
1500769 #1500769 provder/gce: default block source not set 3 High Andrew Wilkins  10 Fix Released
1500803 #1500803 provider/gce: HardwareId should use the documented "google-" format 3 High Andrew Wilkins  10 Fix Released
1501173 #1501173 apiserver/common/storagecommon: StorageAttachmentInfo returns without error even if block device doesn't exist 3 High Andrew Wilkins  10 Fix Released
1501559 #1501559 provider/ec2: bootstrap fails with "failed to bootstrap environment: cannot start bootstrap instance: tagging root disk: timed out waiting for EBS volume to be associated" 3 High Andrew Wilkins  10 Fix Released
1501637 #1501637 provider/ec2: "iops" should be per-GiB in EBS pool config 3 High Andrew Wilkins  10 Fix Released
1501642 #1501642 provider/ec2: min/max EBS volume sizes are wrong for SSD/IOPS 3 High Andrew Wilkins  10 Fix Released
1501710 #1501710 worker/storageprovisioner: worker bounces upon finding invalid volume/filesystem params 3 High Andrew Wilkins  10 Fix Released
1507601 #1507601 TestStartTerminationWorker fails on gccgo 3 High Martin Packman  10 Fix Released
1357045 #1357045 Support use of cloud-images mirror for container images 4 Medium Tim Penhey  10 Fix Released
This milestone contains Public information
Everyone can see this information.