forked from fedora-copr/copr
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Signed-off-by: Li Chaoran <[email protected]>
- Loading branch information
Showing
3 changed files
with
52 additions
and
1 deletion.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,50 @@ | ||
.. _how_to_rename_chroot: | ||
|
||
How to rename a chroot | ||
================================ | ||
|
||
In the openEuler copr instance, we unfortunately need to rename a chroot. | ||
|
||
The operations need to be done can be described as: | ||
|
||
* [backend]: symlinks all the old chroot dir in resultdir to the new one | ||
* [frontend]: change the os_release/os_version in frontend table mock_chroot | ||
* [builder]: add new mock chroot configs to all builder | ||
|
||
.. note:: | ||
|
||
After these operations are complete, a new chroot will be displayed at all frontend pages, and all the old repo config files should be still usable. | ||
|
||
To be more precisely, here are some operation details: | ||
|
||
*Suppose you have a chroot named* ``foo-bar-x86_64`` *and want to rename it to* ``new-foo_bar-x86_64`` | ||
|
||
For backend | ||
-------------- | ||
Login as copr user to backend node, and run: | ||
|
||
.. code-block:: console | ||
$ /usr/bin/copr-rename-chroot --real-run --pair PAIRS foo-bar-x86_64:new-foo_bar-x86_64 | ||
Explain: the ``/usr/bin/copr-rename-chroot`` script will rename the dir in ``destdir`` from ``foo-bar-x86_64`` to ``new-foo_bar-x86_64`` | ||
|
||
.. warning:: | ||
|
||
You may note the ``--real-run`` arguement, without it the script will perform a dry-run and just print the operations out. | ||
|
||
Run the command without ``real-run`` until you make sure all the operations are expected! | ||
|
||
For frontend | ||
-------------- | ||
Login to the frontend database and run: | ||
|
||
.. code-block:: sql | ||
coprdb# UPDATE mock_chroot SET os_version='foo_bar', os_release='new' WHERE os_version='foo' AND os_release='bar' AND arch='x86_64' | ||
Explain: the SQL will rename the old chroot which name is ``foo-bar-x86_64`` to ``new-foo_bar-x86_64`` in database, this operation will make webUI&copr-cli see the new chroot. | ||
|
||
For builder | ||
-------------- | ||
Update your mock package to ensure the ``new-foo_bar-x86_64.cfg`` existed! |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters