Edit the configuration file

The configuration file for SA Patch Importer for Oracle Enterprise Linux is located in /etc/opt/opsware/patch_importer/uln_import.conf. It is divided into various sections. It has two mandatory sections, [main] and [system_id], and zero or more optional sections. The optional sections are used to control channel-specific behaviors.

The following tables describe the various configuration sections.

[main] Section

The [main] section has the general configuration options.

[main] Section options

Property name

Expected values

Description

username

String (in the form of email)

ULN username

password

String

ULN password

CSI

String (a sequence of numbers)

Oracle Customer Support Identifier

hide_passwords

1, 0 (Default: 1)

Indicates whether to obfuscate the passwords.

If set to 1, all the passwords in this file will be obfuscated the very first time the tool is used. Once a password is obfuscated, it will remain obfuscated, there’s no way to de-obfuscate it.

If the password has changed, you can simply re-enter the clear text password and it will be obfuscated on the next run, assuming hide_passwords is still set to 1.

You may also use the --hide_passwords command line option to obfuscate the passwords. If --hide_passwords option is specified at the command line, it will be used instead of the one from the configuration file.

server_uri

A valid URI (Default: https://linux-update.oracle.com/XMLRPC)

URI to the ULN RPC server. It points to the default ULN instance. We do not support a server list for live failover at this point. If the primary server is down, you have to manually change it to point to one of the mirrors.

system_id

A valid file path. ( Default: /var/opt/opsware/uln_import/system_id)

The location to store the system_id. Once the system is registered with the ULN.

Warning: Please do not remove or change the location of this file. Otherwise, you will have to re-register with the ULN.

proxy_host

<FQHN>:[<port>]

If HTTP proxy is used, specify it here.

proxy_user

String

If HTTP proxy authentication is required, specify the proxy username. It will be ignored if proxy_host is not specified.

proxy_pass

String

If HTTP proxy authentication is required, specify the proxy user password. It will be ignored if proxy_host is not specified.

proxy_agent

String

If HTTP proxy authentication is required, you may optionally specify the proxy_agent HTTP header for identification purposes.

opsware_user

String

You may elect to import the packages in the context of an SA user. If so, specify the username here. If opsware_user is omitted, package import will be run in the context of a system (internal) user.

opsware_pass

String

Password for the SA user. It will be ignored if opsware_user is not specified.

continue_on_error

1, 0 (Default: 1)

This option is for not supported.

import_threads

Number (Default: 10)

Maximum number of import threads. Setting this to an unreasonable value may cause service outage since some source networks may not be capable of supporting heavy load.

limit_policy_description

1, 0 (Default: 1)

This option is not supported

channels

An explicit list of channels may be given separated by spaces and/or newlines:

channels:

LABEL1

LABEL2

LABELn

If the channels option is not specified, then all SA supported top-level (parent) channels are enabled, plus any channels that have their own [channel] sections in this configuration file.

package_path

A valid directory path. (Default: /ULN/Packages/$channel_name)

The folder in which the package will be uploaded for a given channel.

“$channel_name” is a special placeholder. It will be replaced by the channel at runtime.

Packages can be quarantined to prevent their use until they are approved. Note that you must ensure that the permissions on the Unapproved folder limit the servers that can access it. You can configure package_path to a special folder for this purpose. For example: package_path=/ULN/Packages/Unapproved/$channel_name

channel_path

A valid directory path. (Default: /ULN/Channels/$channel_name Policy)

The folder in which the channel software policies will be created for a given channel.

“$channel_name” is a special placeholder. It will be replaced by the channel at runtime.

erratum_path

A valid directory path. (Default: /ULN/Errata/$erratum_type Policies/$erratum_name)

The folder in which the erratum software policies will be created for the given channel.

“$erratum_type” and “$erratum_name” are special placeholders. They will be replaced by erratum type and erratum name respectively at runtime.

Instead of creating a roll-up policy by channel, you might choose to create it by month For example,

errata_path=/ULN/Errata/$Y-$m Advisory Roll-Up Policy

Notice that “$Y” and “$m” are special placeholders for year and month respectively.

This configuration is currently not being used.

errata_path

A valid directory path. (Default: /ULN/Errata/$channel_name Advisory Roll-Up Policy)

The folder in which the errata software policies will be created for the given channel.

“$channel_name” is a special placeholder. It will be replaced by the channel at runtime.

This configuration is currently not being used.

package_search_path

An explicit list of directory paths may be given separated by spaces and/or newlines:

channels:

PATH1

PATH2

PATHn

 

Default:

/Package Repository/OS Media/$opsware_platform

/Package Repository/All Red Hat Linux/$opsware_platform

/Migrated/Package Repository/Customer Independent/$opsware_platform

The paths to search for previously uploaded packages.

“$opsware_platform” is a special placeholder. It will be replaced by the platform name at runtime.

[system_profile] Section

This section is used to specify the properties for the system profile. The information is used to register with the ULN. Typically, before downloading packages, the system must first register with the ULN. A system profile is created, which contains OS and hardware information, upon registration. Once the system is registered, the ULN will automatically assign the default channels associated with the platform in which the system is running. However, since SA can be run on a non-OEL system, this essentially generates a pseudo system profile.

The system profile is created using the information from the [system_profile] section:

[system_profile] Section Options

Property name

Expected values

Description

profile_name

String (Default: FQDN of the system where the tool is run)

Name of the profile. Typically it is the Fully Qualified Domain Name of the host where the tool is run.

os_release

Number (Default: 5)

Oracle Enterprise Linux OS release number.

release-name

String (Default: enterprise-release)

Oracle Enterprise Linux OS release name.

architecture

X86 or x86_64 (Default: x86_64)

OS architecture. We only support x86 and x86_64 right now.

uuid

String

UUID. Will be generated in runtime.

Warning: Do not modify this property unless you are not certain of how it will affect your system. Misuse of this property can break the import tool and require you need to re-register.

rhnuuid

String

RHN UUID. Will be generated in runtime.

Warning: Do not modify this property unless you are not certain of how it will affect your system. Misuse of this property can break the import tool and require you to re-register.

Channel-specific sections

Here is an example of a channel specific section. In this case, it enables the Oracle Enterprise Linux 5 Update 6 Patch channel, creating a policy composed of all the packages in that channel. Note that this section is enabled by default as long as the ‘channels’ option is not specified in the [main] section. If the ‘channels’ option is specified in the [main] section, then it must be explicitly enabled via the "enabled" option. Also, channel_path is defined here only as we don't wish to create channel policies for top-level channels

[ol5_u6_x86_64_patch]
; enabled=1
# You may wish to import all versions of each packages in the channel. By
# default, only the latest version of each package is imported. Note that
# when importing all versions, it is recommended that packages_only=1 also be
# used since it is not useful to have a policy with more than one version of
# each package.
; which_packages=all
# You may wish to download the packages for this channel only and then
# create the policies manually. Also useful in combination with
# which_packages=all:
; packages_only=1
# To locate a child channel's packages next to the corresponding policy in
# the library, use a path such as the following:
; package_path=/ULN/Channels/$channel_name Packages