SCC download cacher usage information

Use the SUSE Customer Center (SCC) download cacher to download and cache SUSE patches in air-gapped environments. This tool supports the Patches for SLE 12 Native Tools, Patches for SLE 12 on System z, Patches for SLE 11 Native Tools, and Patches for SLE 11 on System z Native Tools sites.

The SCC download cacher accesses the following URLs:
  • https://scc.suse.com:443
  • https://updates.suse.com:443
  • http://sync.bigfix.com:80
Note: To avoid download errors, ensure to configure your whitelist, firewall, or proxy to allow traffic through the listed hosts and ports.

You can run the SCC download cacher on a Windows system or a Linux system. For information about requirements, see https://help.hcltechsw.com/bigfix/9.5/platform/Platform/Installation/c_spcr_platform.html.

The latest SCC download cacher is available from the BigFix Support site.
Note: For illustration purposes, this section indicates the steps to run the SCC download cacher in Windows. However, the parameters and subcommands to run the SCC download cacher are the same for both Windows and Linux systems.
You can run the tool SCCDownloadCacher.exe to perform additional operations. To run this tool from the command prompt, use the following command:
SCCDownloadCacher.exe [-h] --mirrorUser <username> --mirrorPass <base64_encoded_password>
 [parameters...] {subcommand} [-h]  [subparameters...]

where:

-h

Specifies the help message of a command instead of running the command.

--mirrorUser username
Specifies the SCC mirror user name. This value is required.
Note: You can get the mirror credentials for your organization from SUSE Customer Center. For more information, see Mirroring Credentials.
--mirrorPass password
Specifies the SCC mirror password. This value must be base64 encoded.
parameters
Specifies the optional parameters to be used to configure the download cacher.
--proxyServer
Specifies the URL of the proxy server to use. It must be a well-formed URL that contains a protocol and a host name. The URL is usually the IP address or DNS name of your proxy server and its port, which is separated by a colon. For example: http://192.168.100.10:8080.
--proxyUser
Specifies the proxy user name if your proxy server requires authentication. It is usually in the form of domain\username.
--proxyPass
Specifies the proxy password if your proxy server requires authentication.
Only basic authentication is supported. Ensure that the proxy is configured to work with the Transport Layer Security (TLS) protocol.
--download_dir
Specifies the directory where the files are cached.
If this parameter is not defined, the files are downloaded to the directory that is relative to the download cacher executable directory.
--sha1_download_dir
Specifies the directory where the files are cached with a sha1 filename into a single flat directory. The cacher downloads all packages from all repositories (keys) as files in the specified directory.
Only the packages are stored in the sha1_download_dir. Each repository metadata is stored in the download_dir, and the SUSE Repository directory structure is maintained.
Note: When using this parameter, consider the cache limit of the BigFix server's sha1 file folder.
Space-saving benchmarks are established with the use of the --sha1_download_dir through the check-storagereq subcommand. Using --sha1_download_dir have shown significant decrease in storage size, download size, and time when caching multiple repositories of the same SUSE version. This is because many packages are duplicated among repositories with the same SUSE version (for example, sles-12-x86_64-sp2, sles-12-x86_64-sp1, sled-12-x86_64-sp1). Space is not saved if you only cache a single repository for each SUSE version (for example, sles-12-x86_64-sp2, sles-11-x86_64-sp2).
Sample results:
SCCDownloadCacher.exe --mirrorUser username --mirrorPass base64_encoded_password 
check-storagereq --key sles-12-x86_64-sp2,sles-12-x86_64-sp1,sled-12-x86_64-sp1

For Repo Keys: ['sles-12-x86_64-sp2', 'sles-12-x86_64-sp1', 'sled-12-x86_64-sp1']
Total Repo Metadata size:
150 MB
Total Packages count: With sha1 (Without sha1)
13219 (22015)
Total Packages size: With sha1 (Without sha1)
37 GB (61 GB)
Total Repo Metadata & Packages size: With sha1 (Without sha1)
37 GB (61 GB) [39 % saved]
--redownload
Specifies the flag to re-download and overwrite existing RPM files that are in the download directory.
If this parameter is not defined, RPM files are not re-downloaded. However, metadata are, by default, downloaded and overwritten.
--redownload
Specifies the flag to re-download and overwrite existing RPM files that are in the download directory.
If this parameter is not defined, RPM files are not re-downloaded. However, metadata are, by default, downloaded and overwritten.
--help

Specifies the full description and help of a command instead of running the command.

subcommand subparameter
Specifies the subcommand and subparameters to be used to run the download cacher.
Note: The subcommand and subparameter names are case-sensitive.
The subparameter varies for each subcommand as follows:
showKeys
Outputs the list of OS keys for the supported repositories in the <cacher directory>\logs\SCCDownloadCacher.log file. An OS key indicates the SUSE operating system version, architecture, and service pack of a single SUSE repository.
The syntax to run this subcommand is:
SCCDownloadCacher.exe --mirrorUser <username> --mirrorPass <base64_encoded_password> 
[parameters] showsKeys
buildRepo
Builds a local mirrored repository and downloads all the relevant files based on the specified OS key.
The syntax to run this subcommand is:
SCCDownloadCacher.exe --mirrorUser <username>  --mirrorPass <base64_encoded_password>
[parameters] buildRepo --key <OS_key1,OS_key2,…>
where:
--key OS_key1,OS_key2,…
Specifies the SUSE operating system version, architecture, and service pack. Entries must be separated by a comma and must not include spaces. It must use the following format:
<product>-<version_number>-<architecture>-<sp_level>
For example, --key sles-12-x86_64-sp0,sles-11-x86-sp4.
downloadMetadataOnly
Downloads the metadata of the specified OS keys.
The syntax to run this subcommand is:
SCCDownloadCacher.exe --mirrorUser <username> --mirrorPass <base64_encoded_password>
[parameters] downloadMetadataOnly --key <OS_key1,OS_key2,…>
where:
--key OS_key1,OS_key2,…
Specifies the SUSE operating system version, architecture, and service pack. Entries must be separated by a comma and must not include spaces. It must use the following format:
<product>-<version_number>-<architecture>-<sp_level>
For example, --key sles-12-x86_64-sp0,sles-11-x86-sp4.
downloadPkg
Downloads the listed RPM files for the specified OS key.
The syntax to run this subcommand is:
SCCDownloadCacher.exe --mirrorUser <username> --mirrorPass <base64_encoded_password> 
[parameters] downloadPkg --key <OS_key1,OS_key2,…> --pkg <pkg1,pkg2…>
where:
--key OS_key1,OS_key2,…
Specifies the SUSE operating system version, architecture, and service pack. Entries must be separated by a comma and must not include spaces. It must use the following format:
<product>-<version_number>-<architecture>-<sp_level>
For example, --key sles-12-x86_64-sp0,sles-11-x86-sp4.
--pkg pkg1,pkg2,…
Indicates the package name.
Each entry must be separated by a comma and must not include spaces. For example, --pkg liblcms1-1.17-77.12.1.x86_64.rpm,liblcms1-32bit-1.17-77.12.1.x86_64.rpm.
downloadByPatchId
Downloads files based on the patch ID for one or more OS keys.
The syntax to run this subcommand is:
SCCDownloadCacher.exe --mirrorUser <username>  --mirrorPass <base64_encoded_password> 
[parameters] downloadByPatchId --key <OS_key1,OS_key2,…> 
--patch_id <patch_id1,patch_id2…>
where:
--key OS_key1,OS_key2,…
Specifies the SUSE operating system version, architecture, and service pack. Entries must be separated by a comma and must not include spaces. It must use the following format:
<product>-<version_number>-<architecture>-<sp_level>
For example, --key sles-12-x86_64-sp0,sles-11-x86-sp4.
--patch_id patch_id1,patch_id2,…
Indicates the patch ID of a Fixlet, which is the first six digits in the Fixlet title.
Each entry must be separated by a comma and must not include spaces. For example, --patch_id 100601,100602.