Add a profile to the system.
The following conditions must hold for a profile to be added by name:
- The profile_name must be specified.
- The profile_file must not specified.
- The profile must already exist in SVN.
- The user calling this method must be a Domain Admin.
The following conditions must hold for a profile to be uploaded:
- The profile_file must be specified.
- The profile_name must not be specified
- The user calling this method must have permission to add profiles to the specified
project.
URL
/cubit_api/1/add_profile
Parameters
-
can_users_modify ( Required, once )
- Set this to True if user's with Root Access or better should
be able to make modifications to the project. If set to False,
only the owning user and users with Project Admin access (or better) will be able to modify
the profile.
- Type: String
-
is_prebuilt
(Required,
once )
- Set this to True if this profile
is
a
prebuilt
image, False if this profile is installed via a network install
method.
- Type: String
-
is_public ( Required, once )
- If the profile is public (i.e can be built by any project). Valid values are
True or False.
- Type: String
-
owner ( zero or once )
- Lab Management user that this profile will be associated with. The user must be a member of
the owning project in order to be able to modify the profile. If unset, this profile will not
belong to any particular user.
- Type: String
-
profile_file ( zero or once )
- The filename of a profile to be uploaded. The specified file must:
- Exist on your local system.
- Contain a valid profile name. Profile names can only contain letters, numbers,
underscores ("_"), and dashes ("-"). Profile names are case sensitive.
- Not currently exist as a profile name on the system.
- Be a valid XML file, and contain all the needed attributes for a Lab Management
profile.
-
profile_name ( zero or once )
- The name of a profile that already exists in Lab Management's Subversion Repository.
- Type: String
-
project ( zero or once )
- Project that will own this profile. If unset, this profile will not belong to any
particular project.
- Type: String
-
sig ( Required, once )
- API authentication hash signature.
- Type: String
-
summary ( Required, once )
- Summary of the purpose of this profile.
- Type: String
-
userid ( Required, once )
- The login name of the user initiating the request.
- Type: String
Example Response
Successful addition of the profile rhel3_base:
<?xml version='1.0'?>
<cubit version='1'>
<status>OK</status>
<output>rhel3_base</output>
</cubit>
If the user is unauthorized:
<?xml version='1.0'?>
<cubit version='1'>
<error>Failed to add profile rhel3_base.</error>
<output>User 'userid' does not have Domain Admin rights.</output>
</cubit>
Response Codes
- 200 - ok
- 400 - Login failed / Insufficient permissions