README: add setup info for other distro comparisons

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
This commit is contained in:
Paul Eggleton 2018-05-14 15:32:51 +12:00
parent bc1757abf3
commit 45ebb07da3

82
README
View File

@ -220,9 +220,10 @@ been migrated/superseded). If you want to enable this, do the following:
1. From the admin interface, create a Branch record with the following
values:
- Name: oe-classic
- Name: oe-classic (must be exactly this!)
- Bitbake branch: 1.12
- Enable updates: NOT enabled
- Enable updates: NOT ticked
- Comparison: ticked
- Update environment: if you have set up Python environments (for
python2 vs python3 across different branches) then you'll need
to select the python2 environment that you created here
@ -257,6 +258,81 @@ doesn't have the same name, so the update_classic_status.py script
wouldn't be able to pick it up.
Setting up other distro comparisons
-----------------------------------
The Layer Index also provides optional functionality to enable comparison
with other distributions (currently RPM-based only) in a similar manner to
OE-Classic comparison documented above. To set this up you need to perform
the following steps:
1. From the admin interface, set up the appropriate entries:
1.1. Create a Branch with the following values:
- Bitbake branch: <any dummy value>
- Enable updates: NOT enabled
- Comparison: enabled
1.2. Create a Layer. Typically this would have the same name as
the branch although that is not a requirement. The "Comparison"
checkbox should be ticked. If the packages are in separate
repositories (one per package, as is typical in RPM-based
distributions such as Fedora) then in order to make the links
through to files work correctly you may need to use repository web
interface URLs similar to these:
Repository web interface tree base URL:
https://github.com/organisationname/%pathelement[0]%/tree/master/%pathelement[1:]%
Repository web interface file base URL:
https://github.com/organisationname/%pathelement[0]%/blob/master/%pathelement[1:]%
1.3. Create a LayerBranch to link the Branch and Layer that you
created in the previous steps. You don't need to enter anything
special here.
2. Run the import script, specifying the branch and layer names and the path
to the base of the packages (where each subdirectory contains a package,
notably a spec file describing the package):
layerindex/tools/import_otherdistro.py import-pkgspec <branchname> <layername> <pkgpath>
3. Update the comparison status of recipes based on layers in the database:
layerindex/tools/update_classic_status.py -l <layername> -b <branchname>
4. Optionally enable the Update button in the UI by setting COMPARISON_UPDATE
in settings.py to map each other distro branch to the command that should
be run in the background when the button is pressed. For example:
COMPARISON_UPDATE = [
{
'branch_name': 'otherlinux',
'update_command': 'layerindex/tools/import_otherdistro.py import-pkgspec otherlinux otherlinux /path/to/pkgs -u %update%; layerindex/tools/update_classic_status.py -b otherlinux -l otherlinux -u %update%',
},
]
If you refresh the main page of the website, the other distro data should
now show up at the bottom of the branch drop-down menu. On a periodic
basis you can repeat steps 2 and 3 to refresh the data as changes occur on
both sides. Users with sufficient permissions can also manually update the
migration status on the other distro recipe detail pages within the website,
which is useful for example when there's an equivalent recipe in another
layer that doesn't have the same name, so the update_classic_status.py
script wouldn't be able to pick it up.
If you want to show links to additional upstream pages associated with
packages in the other distro, you can add "Layer recipe extra URL" entries
for each type of link you want to be shown. For example, Fedora provides
a summary page for each package - acl's one is at
https://apps.fedoraproject.org/packages/acl, so you would create a
Layer Recipe Extra URL entry with the template URL
"https://apps.fedoraproject.org/packages/%pn%" and then links would be
shown for this under the detail page for each package in the other distro.
If you have the rrs application enabled the link will also be shown in the
"Distros" section of the maintenance detail page for the covering recipe.
Maintenance
-----------
@ -289,7 +365,7 @@ Bundled nv.d3.js is redistributed under the Apache License 2.0.
Bundled d3.js is redistributed under the BSD License.
All other content is copyright (C) 2013-2016 Intel Corporation and
All other content is copyright (C) 2013-2018 Intel Corporation and
licensed under the MIT license (unless otherwise noted) - see
COPYING.MIT for details.