Juju devel 1.26-alpha3 is realeased

Curtis Hovey-Canonical curtis at canonical.com
Sat Dec 19 03:41:15 UTC 2015


# juju-core 1.26-alpha3

A new development release of Juju, juju-core 1.26-alpha3, is now available.
This release replaces version 1.26-alpha2.


## Getting Juju

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

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

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

    https://launchpad.net/juju-core/+milestone/1.26-alpha3

Development releases use the "devel" simple-streams. You must configure
the `agent-stream` option in your environments.yaml to use the matching
juju agents.

Upgrading from stable releases to development releases is not
supported. You can upgrade test environments to development releases
to test new features and fixes, but it is not advised to upgrade
production environments to 1.26-alpha3.


## Notable Changes

  * New Support for Rackspace
  * Multi Series Charms
  * Improved local charm deployment
  * Centos and Windows Image Streams
  * Azure provider changes


### New Support for Rackspace

A new provider has been added that supports hosting a Juju environment
in Rackspace Public Cloud As Rackspace Cloud is based on OpenStack,
Rackspace provider internally uses OpenStack provider, and most of the
features and configuration options for those two providers are
identical.

The basic config options in your environments.yaml will look like this:

    rackspace:
        type: rackspace
        tenant-name: <your tenant name>
        region: <IAD, DFW, ORD, LON, HKG, or SYD>
        auth-mode: <userpass or keypair>
        username: <your username>
        password: <secret>
        # access-key: <secret>
        # secret-key: <secret>

The values in angle brackets need to be replaced with your rackspace
information.

'tenant-name' must contain the rackspace Account Number. 'region' must
contain rackspace region (IAD, DFW, ORD, LON, HKG, SYD). 'auth-mode'
parameter can contain either 'userpass' or 'keypair'. This parameter
distinguish the authentication mode that provider will use. If you use
'userpass' mode you must also provide 'username' and 'password'
parameters. If you use 'keypair' mode 'access-key' and 'secret-key'
parameters must be provided.


### Multi Series Charms

Charms now have the capability to declare that they support more than one
series. Previously a separate copy of the charm was required for each
series. An important constraint here is that for a given charm, all of the
listed series must be for the same distro/OS; it is not allowed to offer a
single charm for Ubuntu and CentOS for example. Supported series are added
to charm metadata as follows:

    name: mycharm
    summary: "Great software"
    description: It works
    maintainer: Some One <some.one at example.com>
    categories:
       - databases
    series:
       - precise
       - trusty
       - wily
    provides:
       db:
         interface: pgsql
    requires:
       syslog:
         interface: syslog

The default series is the first in the list:

    juju deploy mycharm

will deploy a mycharm service running on precise.

A different, non-default series may be specified:

    juju deploy mycharm --series trusty

It is possible to force the charm to deploy using an unsupported series
(so long as the underlying OS is compatible):

    juju deploy mycharm --series xenial --force

or

    juju add-machine --series xenial
    Machine 1 added.
    juju deploy mycharm --to 1 --force

--force is required in the above deploy command because the target machine
is running Xenial which is not supported by the charm.

The force option may also be required when upgrading charms. Consider
the case where a service is initially deployed with a charm supporting
Precise and Trusty. A new version of the charm is published which only
supports Trusty and Xenial. For services deployed on precise, upgrading
to the newer charm revision is allowed, but only using force (note the
use of --force-series since upgrade-charm also supports --force-units):

    juju upgrade-charm mycharm --force-series


### Improved local charm deployment

Local charms can be deployed directly from their source directory
without  having to set up a pre-determined local repository file
structure. This  feature makes it more convenient to hack on a charm and
just deploy it, and  it also necessary to develop local charms
supporting multi series.

Assuming a local charm exists in directory /home/user/charms/mycharm :

    juju deploy ~/charms/mycharm

will deploy the charm using the default series.

    juju deploy ~/charms/mycharm --series trusty

will deploy the charm using trusty.

Note that it is no longer necessary to define a JUJU_REPOSITORY nor locate
the charms in a directory named after a series. Any directory structure can
be used, including simply pulling the charm source from a VCS, hacking on
the code, and deploying directly from the local repo.


### Centos and Windows Image Streams

A new simplestreams search path is supported when looking up the id of
images to run. As well as searching published Ubuntu images found on
http://cloud-images.ubuntu.com, Windows and Centos image metadata will be
published to https://streams.canonical.com/juju/images. This will allow
Windows and Centos workloads to be deployed to AWS and other supported
clouds.


### Azure provider changes

The new Azure provider announced in 1.26-alpha2 was updated in
response to your feedback. The 'application-key' in the config was
renamed to 'application-password'.

To use the new Azure support, you need the following configuration in
environments.yaml:

    type:                 azure
    application-id:       <Azure-AD-application-ID>
    application-password: <Azure-AD-application-password>
    subscription-id:      <Azure-account-subscription-ID>
    tenant-id:            <Azure-AD-tenant-ID>
    location:             westus # or any other Azure location

To obtain these values, it is recommended that you use the Azure CLI:
https://azure.microsoft.com/en-us/documentation/articles/xplat-cli/.

You will need to create an "application" in Azure Active Directory for
Juju to use, per the following documentation:
https://azure.microsoft.com/en-us/documentation/articles/resource-group-authenticate-service-principal/#authenticate-service-principal-with-password---azure-cli
(NOTE: you should assign the role "Owner", not "Reader", to the
application.)

Take a note of the "Application Id" output when issuing "azure ad app
create". This is the value that you must use in the 'application-id'
configuration for Juju. The password you specify is the value to use in
'application-password'.

To obtain your subscription ID, you can use "azure account list" to list
your account subscriptions and their IDs. To obtain your tenant ID, you
should use "azure account show", passing in the ID of the account
subscription you will use.

You may need to register some resources using the azure CLI when updating an
existing Azure account:

    azure provider register Microsoft.Compute
    azure provider register Microsoft.Network
    azure provider register Microsoft.Storage


## Known Issues

ARM-HF clients and agents are not available Precise, Trusty and Vivid.
Clients and agents are available for Wily.


## Resolved issues

  * Bootstrap with the vsphere provider fails to log into the virtual
    machine
    Lp 1511138

  * Using maas 1.9 as provider using dhcp nic will prevent juju
    bootstrap
    Lp 1512371

  * Add-machine with vsphere triggers machine-0: panic: juju home
    hasn't been initialized
    Lp 1513492

  * 'debug-log' fails when logs are large when using db-log
    Lp 1524135

  * Upgrade-juju shows available tools and best version but did not
    output what it decided to do
    Lp 1403655

  * Invalid binary version, version "1.23.3--amd64" or "1.23.3--armhf"
    Lp 1459033

  * Output from metadata generate-image looks bad
    Lp 1489215

  * Addresses logged by apiaddressupdater aren't accurate
    Lp 1497098

  * Session closed in data source
    Lp 1497829

  * 'juju environments' fails due to missing ~/.juju/current-
    environment
    Lp 1506680

  * Juju can't find daily image streams from cloud-
    images.ubuntu.com/daily
    Lp 1513982

  * Juju 1.25 misconfigures juju-br0 when using maas 1.9 bonded
    interface
    Lp 1516891

  * Lxd cannot bootstrap with image streams
    Lp 1519027

  * Support centos and windows image metadata
    Lp 1523693

  * Deploy incompatible charm using --to should error earlier
    Lp 1524527

  * Deploy charm with --series --force doesn't reject invalid os
    Lp 1526296

  * Juju should check common failure conditions before upgrading
    Lp 1521354


Finally

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


-- 
Curtis Hovey
Canonical Cloud Development and Operations
http://launchpad.net/~sinzui



More information about the Juju mailing list