Updating an OS Repository¶
This procedure assumes that you have already populated an OS repository as described in Adding OS Distributions.
The following section gives an example for updating CentOS. They can be adjusted for your particular version, and are applicable to OpenSUSE, RedHat Enterprise Linux and Scientific Linux.
Create the distribution repository.
For example, for the CentOS 6.5 repository:
$ uforge org repo create --name "CentOS 6.5 os" --repoUrl http://vault.centos.org/6.5/os/x86_64/ --type RPM --coreRepository -u $ADMIN -p $PASS Success: Created repository with url [http://vault.centos.org/6.5/os/x86_64/] to default organization
The
--namespecified here is the “tagname” that will be shown in the UI when creating an appliance. The--repoUrlcan be eitherhttp://orfile://.Warning
You must use the
--coreRepositoryflag for all the default repositories of officially supported OSes. For a list of supported OSes, refer to the User Guide. Do not use--coreRepositoryfor repositories that are not part of the core distribution, such as epel or VMware tools. When generating a machine image, packages tagged as--coreRepositoryare installed first, before other packages.Attach repository to the distribution as follows for each repository (your own repository and the UShareSoft tool repository):
$ uforge org repo os attach --name CentOS --arch x86_64 --version 6.5 --repoIds 354 -u $ADMIN -p $PASS
The
--repoIdsspecified here are the space-separated “id” of previously created repositories, shown by commanduforge org repo list -u $ADMIN -p $PASS.Populate repository packages:
$ /opt/UShareSoft/uforge/cron/update_repos_pkgs.sh
Note
This procedure may take a long time.
To verify if the procedure is terminated, run the following command:
$ tail -f /tmp/USER_DATA/FactoryContainer/logs/repos/spider/<directory name with date>/spider.stdout
The procedure is complete when you see the line INFO ends with Entering CheckForRepositoriesUpdates->terminate()
Deleting an OS Repository¶
If you want to remove an OS repository from your UForge AppCenter, you will need to run org repo delete as follows:
You will need to identify the ID number associated with the repo you want to delete. Run:
org repo list
Delete the repository by running the
org repo deletewith the argument--idindicating the repo to be deleted. For example:org repo delete --ids 127