# solaris_zone – Manage Solaris zones

- Synopsis

- Requirements

- Parameters

- Examples

- Status

## Synopsis

- Create, start, stop and delete Solaris zones.

- This module does not currently allow changing of options for a zone that is already been created.

## Requirements

The below requirements are needed on the host that executes this module.

- Solaris 10 or 11

## Parameters

Parameter | Choices/Defaults | Comments
--- | --- | ---
attach_options string | Default: "" | Extra options to the zoneadm attach command. For example, this can be used to specify whether a minimum or full update of packages is required and if any packages need to be deleted. For valid values, see zoneadm(1M)
config string | Default: "" | The zonecfg configuration commands for this zone. See zonecfg(1M) for the valid options and syntax. Typically this is a list of options separated by semi-colons or new lines, e.g. "set auto-boot=true;add net;set physical=bge0;set address=10.1.1.1;end"
create_options string | Default: "" | Extra options to the zonecfg(1M) create command.
install_options string | Default: "" | Extra options to the zoneadm(1M) install command. To automate Solaris 11 zone creation, use this to specify the profile XML file, e.g. install_options="-c sc_profile.xml"
name string / required |  | Zone name. A zone name must be unique name. A zone name must begin with an alpha-numeric character. The name can contain alpha-numeric characters, underbars _, hyphens -, and periods .. The name cannot be longer than 64 characters.
path string |  | The path where the zone will be created. This is required when the zone is created, but not used otherwise.
root_password string |  | The password hash for the root account. If not specified, the zone's root account will not have a password.

sparse
boolean

Choices:
- no ←
- yes

Whether to create a sparse (`true`) or whole root (`false`) zone.

state
string / required

Choices:
- absent
- attached
- configured
- detached
- installed
- present ←
- running
- started
- stopped

`present`, configure and install the zone.
`installed`, synonym for `present`.
`running`, if the zone already exists, boot it, otherwise, configure and install the zone first, then boot it.
`started`, synonym for `running`.
`stopped`, shutdown a zone.
`absent`, destroy the zone.
`configured`, configure the ready so that it's to be attached.
`attached`, attach a zone, but do not boot it.
`detached`, shutdown and detach a zone

timeout integer | Default: 600 | Timeout, in seconds, for zone to boot.

## Examples

    - name: Create and install a zone, but don't boot it
      solaris_zone:
        name: zone1
        state: present
        path: /zones/zone1
        sparse: True
        root_password: Be9oX7OSwWoU.
        config: 'set autoboot=true; add net; set physical=bge0; set address=10.1.1.1; end'

    - name: Create and install a zone and boot it
      solaris_zone:
        name: zone1
        state: running
        path: /zones/zone1
        root_password: Be9oX7OSwWoU.
        config: 'set autoboot=true; add net; set physical=bge0; set address=10.1.1.1; end'

    - name: Boot an already installed zone
      solaris_zone:
        name: zone1
        state: running

    - name: Stop a zone
      solaris_zone:
        name: zone1
        state: stopped

    - name: Destroy a zone
      solaris_zone:
        name: zone1
        state: absent

    - name: Detach a zone
      solaris_zone:
        name: zone1
        state: detached

    - name: Configure a zone, ready to be attached
      solaris_zone:
        name: zone1
        state: configured
        path: /zones/zone1
        root_password: Be9oX7OSwWoU.
        config: 'set autoboot=true; add net; set physical=bge0; set address=10.1.1.1; end'

    - name: Attach zone1
      solaris_zone:
        name: zone1
        state: attached
        attach_options: -u

## Status

- This module is not guaranteed to have a backwards compatible interface. [preview]

- This module is maintained by the Ansible Community. [community]

### Authors

- Paul Markham (@pmarkham)

Hint

If you notice any issues in this documentation, you can edit this document to improve it.