Package profiles

Package profiles allows you to create a set of packages and constraints into another package (called a profile, or meta-package), which then can be installed on the machines that you want in that profiles.

It integrates with the activity system and the tag system, automatically creating activities for computers with the associated tags.

Requirements

In order to be able to use this feature, you need to have landscape-client 1.5.0 or later installed on the machine. If you don't, Landscape won't be able to ask for installation of the profile.

Creating a package profile

To create a package profile, click in the "Package Profiles" item in the left menu of your account, and then "Add".

attachment:profile_creation.png

The following fields are present:

Name: it's the identifier for your profile. It has a unique constraint inside your account. It must be alphanumeric, and will be used as the package name created by Landscape. "web-server", or "database-profile" are good examples. The generated package will have the name "landscape-profile-$your_account-$name".

Description: high-level description of your profile. It will be used to create the debian package description.

Package constraints: those are composed of 3 parts: a relationship (depends or conflicts), a package name, and a version constraint. The version constraint is optional, and default to any version.

{i} Note that you don't need to put all the dependencies in the constraints. As a normal package, dependencies will be resolved at installation time. For example, if you specify apache2-mpm-prefork, apache2-common and apache2-bin will be installed as well.

Dashboard

The package profile dashboard summarizes the information about your profile in several blocks.

attachment:profile_dashboard.png

The first block displays the content of your profile: the current version, the description, and the different constraints, one table containing dependencies and the other containing conflicts.

The second block presents a summary of the current links between your profile and computers:

The first line tells you if the profile is currently being applied, ie if there are pending activities installing the profile. If there are any, there is a link to the activity page which will show you those activities.

attachment:profile_activities.png

The second line shows failures happening when trying to apply the profile. For example, it happens if one specified package doesn't exist, or can't be installed, or if you cancel an activity. If this is a temporary failure, you can click on the link to the computers, and reapply the profile. Otherwise, you can edit the profile to fix the problem, and it will be automatically reapplied.

attachment:profile_computers.png

The third line counts the number of computers associated with the profile, with a link to display those computers.

Finally, the last block allows you to edit the association of the profile with tags. Associating a profile with a tag create an activity to install the profile on the machines having that tag, and maintain the relationship (if you upgrade the profile, for example).

{i} If you dissociate a profile and a tag, the packages won't be removed from the corresponding machines. If you want them to be removed you have to explicitly create an activity.

Editing

The package profile dashboard also presents a link to edit the profile. The editing page looks exactly the same as the creation page, except that it show you the current version, the creation date, and the last modified date. The version is automatically incremented when you save, and the installation of the profile is propagated to the associated machines, creating an activity.

Profile activities

The enforcement of a profile in a machine will create an activity to install that profile. It will happen when you initially associate a profile with a tag (an activity will be created for all the machines with that tag) or when you add a machine to a tag linked to a profile.

As normal package activities, they may come back unapproved if it requires additional changes. It will fail if the asked task can't be achieve, for example if a version constraint is not possible, or if a package doesn't exist. You can also manually cancel one of those activities.

attachment:profile_activity.png

PackageProfiles (last edited 2010-04-29 16:52:57 by ahasenack)