Commit Graph

7699 Commits

Author SHA1 Message Date
Alexander Lussier-Cullen
637fdcc2b1 bitbake: toaster: fix pytest build test execution and test discovery
Ensure the proper django settings are used by moving the variable to
the environment assignment.
Remove python file specifier as this works relative to the working
directory, which can vary. The test file directory can instead be
specified when executing the pytest command.
Add annotations required to allow database access with pytest to the
build tests.

(Bitbake rev: 7f4dfaa5bd28ccf1ae0122d984ffa7e02e693960)

Signed-off-by: Alexander Lussier-Cullen <alexander.lussier-cullen@savoirfairelinux.com>
CC: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-12-06 22:37:03 +00:00
Richard Purdie
28f57b8cee bitbake: bitbake: Move to version 2.6.1 to mark runqueue changes
(Bitbake rev: 651a6dcf6f8ff33a4e9290a37c23e4f243974ac3)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-12-06 22:29:09 +00:00
Richard Purdie
73ef8d57e0 bitbake: toastergui: Fix regex markup issues
lib/toaster/toastergui/templatetags/projecttags.py:170: DeprecationWarning: invalid escape sequence '\$'
    value=re.sub('_\$.*', '', value)

tests/views/test_views.py::ViewTests::test_custom_incomplete_params
  lib/toaster/toastergui/urls.py:211: DeprecationWarning: invalid escape sequence '\d'
    '/packages/(?P<package_id>\d+|)$',

(Bitbake rev: 57c738a9118a7a900fc7353d88a385d52c8be6f5)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-12-06 22:28:03 +00:00
Richard Purdie
786ba56074 bitbake: toastermain/settings: Avoid python filehandle closure warnings
Switch to using with blocks when accessing files to ensure file
descriptors are closed and avoid python warnings.

(Bitbake rev: e8574ee78eea23cc35900610bb15e47e40ef5ee1)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-12-06 22:28:03 +00:00
Richard Purdie
c2484f3dec bitbake: toaster: Fix assertRegexpMatches deprecation warnings
Fix:
    DeprecationWarning: Please use assertRegex instead.

(Bitbake rev: 81ee203fd55d45b199d7c3af681855d254e0d876)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-12-06 22:28:03 +00:00
Richard Purdie
029e82d418 bitbake: bb/toaster: Fix assertEquals deprecation warnings
Fix:
    DeprecationWarning: Please use assertEqual instead

(Bitbake rev: dd990ea6843685927954101feb729f3faa3a16d9)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-12-06 22:28:03 +00:00
Alassane Yattara
829953631b bitbake: toaster/test: delay driver action until elements to appear
Update  tests/browser/(test_landing_page.py and test_layerdetails_page.py)
to delay driver actions until for elements to appear

(Bitbake rev: 72908138bd2735c69f5e418ec5f0f2cf8215050a)

Signed-off-by: Alassane Yattara <alassane.yattara@savoirfairelinux.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-12-06 22:28:03 +00:00
Alassane Yattara
8efe835e3b bitbake: toaster/test: from test_no_builds_message.py wait for the empty state div to appear
>From tests/browser/test_sample.py wait for the empty state div to appear

(Bitbake rev: 56ea671526d6ec81b0d69f1bab6ac8f6796b8018)

Signed-off-by: Alassane Yattara <alassane.yattara@savoirfairelinux.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-12-06 22:28:03 +00:00
Alassane Yattara
2d1f6c055d bitbake: toaster/test: bug-fix on tests/browser/test_all_builds_page
- Bug-fix on table filtering on (CompletedOn, filter failed task)
- Better handle testcase used time.sleep and remove it

(Bitbake rev: 03a8657dd377f87be08dd149ec507d153cb10a07)

Signed-off-by: Alassane Yattara <alassane.yattara@savoirfairelinux.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-12-06 22:28:03 +00:00
Richard Purdie
0f4fe4f763 bitbake: runqueue: Improve inter setscene task dependency handling
The way the code currently handles dependencies between setscene tasks is fairly
poor, basically by deleting chunks of dependencies and adding reversed dependency
relationships.

This was once the best way to handle things but now a lot of the surrounding code
has changed and this approach is suboptimal and can be improved.

This change firstly adds debug logging for "hard" setscene task dependencies since
previously the codepaths were missing from logs making them very hard to read.

The changes to the setscene dependency graph are removed entirely this these altered
graphs were a significant source of problems. Instead, if a hard dependency is run
into, we mark the hard dependency as buildable and defer the task until the hard
dependencies are met.

The code now also skips the check_dependencies() code for hard dependencies since
previously that code was having to list all possible hard dependencies. We don't
need to do that as we can safely assume hard dependencies are required.

With these changes to runqueue's behaviour, we stand some chance of being able to
fix other bugs in OE-Core related to useradd for example.

(Bitbake rev: 367789b53c1c22ec26e0f4836cdf2bdd9c7d84fa)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-12-06 22:28:03 +00:00
Joshua Watt
70ad9b9b30 bitbake: hashserv: sqlite: Ensure sync propagates to database connections
When the sqlite database backend was restructured, the code to make the
databases run in WAL mode and to control if sync() is called was
accidentally dropped. This caused terrible database performance to the
point that server timeouts were occurring causing really slow builds.

Fix this by properly enabling WAL mode and setting the synchronous flag
as requested

(Bitbake rev: c5b8c91d325ed1ca8abe5fe28d989693555c0622)

Signed-off-by: Joshua Watt <JPEWhacker@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-12-04 22:36:09 +00:00
Charlie Johnston
1f8a639a67 bitbake: fetch2: Ensure GCP fetcher checks if file exists before download.
The GCP fetcher was calling bb.fetch2.check_network_access with
"gsutil stat" as the command, but then never actually ran that
command to check if the file exists. In cases where the file did
not exist in a gs:// premirror, this would lead to an unhandled
exception from do_fetch when the GCP python API tried to perform
the download.

This change resolves that issue by adding a runfetchcmd to call
gsutil.

(Bitbake rev: 1ab1d36c0af6fc58a974106b61ff4d37da6cb229)

Signed-off-by: Charlie Johnston <charlie.johnston@loftorbital.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-12-02 18:04:23 +00:00
Richard Haar
64725a9c32 bitbake: bitbake: tests: Fix duplicate test_underscore_override test
Found a duplicate test, added  _2 suffix to one, 74 tests now pass up from 73.

(Bitbake rev: ae2a19dadb4f3065b8731a61f45f29e6a70af402)

Signed-off-by: Richard Haar <rh@richhaar.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-12-02 18:04:23 +00:00
Joshua Watt
6b6374c336 bitbake: bitbake-hashclient: Add commands to get hashes
Adds subcommands to query the server for equivalent hashes and for
output hashes.

(Bitbake rev: 36ba202232399738670c9fb11169ead5590a3e82)

Signed-off-by: Joshua Watt <JPEWhacker@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-12-02 18:04:23 +00:00
Alassane Yattara
5b18ff6d6b bitbake: toaster/tests: Test single recipe page
Test recipe page
    - Check if title is displayed
    - Check add recipe layer displayed
    - Check left section is displayed
        - Check recipe: name, summary, description, Version, Section,
        License, Approx. packages included, Approx. size, Recipe file

(Bitbake rev: 4f16f6666ef7ccda0e7194f2107fcbbc8f915be4)

Signed-off-by: Alassane Yattara <alassane.yattara@savoirfairelinux.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-12-02 18:04:23 +00:00
Alassane Yattara
eb2af42e0a bitbake: toaster/tests: Test single layer page
Test layer page
    - Check if title is displayed
    - Check add/remove layer button works
    - Check tabs(layers, recipes, machines) are displayed
    - Check left section is displayed
        - Check layer name
        - Check layer summary
        - Check layer description

(Bitbake rev: 740b37cc077803f134391c99fc4cae45550020f3)

Signed-off-by: Alassane Yattara <alassane.yattara@savoirfairelinux.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-12-02 18:04:23 +00:00
Alassane Yattara
200541ec56 bitbake: toaster/tests: Bug-fix on tests/functional/test_project_page
- Generate a random name for create project while test
- Set timeout on method _wait_until_build
- update test_machines_page, test_softwareRecipe_page and
  test_single_layer_page to  fix exception "element not interactable"

(Bitbake rev: 51c051da61a0396bdaa965065796476de7340727)

Signed-off-by: Alassane Yattara <alassane.yattara@savoirfairelinux.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-12-02 18:04:23 +00:00
Alassane Yattara
5cd899da39 bitbake: toaster/tests: Added distro page TestCase
Test distros page
    - Check if title "Compatible distros" is displayed
    - Check search input
    - Check "Add layer" button works
    - Check distro table feature(show/hide column, pagination)

(Bitbake rev: 8b56af0837e9f09f13d6892c1aa1d82ecd5ef87d)

Signed-off-by: Alassane Yattara <alassane.yattara@savoirfairelinux.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-12-02 18:04:23 +00:00
Alassane Yattara
00fb8ffca3 bitbake: toaster/tests: Added Layers page TestCase
Test layers page
    - Check if title "Compatible layerss" is displayed
    - Check search input
    - Check "Add layer" button works
    - Check "Remove layer" button works
    - Check layers table feature(show/hide column, pagination)

(Bitbake rev: a7bdda5b31f95e39c70eefb8ddf0ec690b3786ef)

Signed-off-by: Alassane Yattara <alassane.yattara@savoirfairelinux.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-12-02 18:04:23 +00:00
Alassane Yattara
9de0b70cc3 bitbake: toaster/tests: Added Machine page TestCase
Test Machine page
    - Check if title "Compatible machines" is displayed
    - Check search input
    - Check "Select machine" button works
    - Check "Add layer" button works
    - Check Machine table feature(show/hide column, pagination)

(Bitbake rev: 98b78d49e2169d57324e4e471d7ad353963c273a)

Signed-off-by: Alassane Yattara <alassane.yattara@savoirfairelinux.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-12-02 18:04:23 +00:00
Alassane Yattara
9f78fee273 bitbake: toaster/tests: Test software recipe page
Test software recipe page
    - Check title "Compatible software recipes" is displayed
    - Check search input
    - Check "build recipe" button works
    - Check software recipe table feature(show/hide column, pagination)

(Bitbake rev: b9c8c77d73d19bd4ddf9b6e90b0aa71f92d36993)

Signed-off-by: Alassane Yattara <alassane.yattara@savoirfairelinux.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-12-02 18:04:23 +00:00
Alassane Yattara
2ee91ebd9c bitbake: toaster/tests: Override table edit columns TestCase from image recipe page
Better handle TestCase of table  edit column feature

(Bitbake rev: 6adc708a1520f8c947f9c40fdc88ebe2b51ecc97)

Signed-off-by: Alassane Yattara <alassane.yattara@savoirfairelinux.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-12-02 18:04:23 +00:00
Alassane Yattara
715898cb9a bitbake: toaster/tests: Update methods wait_until_~ to skip using time.sleep
Update Class Wait from selenium_helpers_base, to override
wait_until_visible and wait_until_present with poll argument to better
handle delay between driver actions

(Bitbake rev: 486817ac6ad28580d81dcf6e3789678d9259bb54)

Signed-off-by: Alassane Yattara <alassane.yattara@savoirfairelinux.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-12-02 18:04:22 +00:00
Richard Purdie
27f7ef2e44 bitbake: cooker: Avoid eventlog variable listing lockups
If the event log is enabled and parsing the metadata triggers log messages,
the event code and deadlock. Iterating the variables inside the event handling
code causes this. SOURCE_DATE_EPOCH triggers a python function which calls
bb.debug() and can trigger a lockup as one example.

Move the code around and add it to the BuildStarted events explictly. This
does mean runs without builds no longer get variables added to the eventlog
however we can look into a more targetted version of data if/as/where neded.

(Bitbake rev: 4135a617ae16d509362b5bf56378139cdc0876d2)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-11-27 22:52:08 +00:00
Richard Purdie
7943caf90c bitbake: ui/ncurses: Add missing function call to avoid traceback
The ncurses UI wasn't working due to a missing function call. Add it
to avoid a traceback when starting builds.

(Bitbake rev: db8f36b69a68de2179e5685cf24a42ec10d68257)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-11-27 22:52:08 +00:00
Felix Moessbauer
2696bf8cf3 bitbake: fetch2/aws: forward env-vars used in gitlab-ci K8s
This patch adds the following variables to the allow-list, which are
used in the "IAM roles for AWS when using the GitLab chart":

- AWS_ROLE_ARN
- AWS_WEB_IDENTITY_TOKEN_FILE

These variables are set in the CI job environment and are needed to
access the sstate cache artifacts in a connected S3 bucket.

[1] https://docs.gitlab.com/charts/advanced/external-object-storage/aws-iam-roles.html

Reported-by: Zhi Bin Dong <zhibin.dong@siemens.com>
(Bitbake rev: c534526ea73805ee7cc16f3168b05ece10e0c03c)

Signed-off-by: Felix Moessbauer <felix.moessbauer@siemens.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-11-23 17:55:08 +00:00
Julien Stephan
8a8d6fe132 bitbake: fetch2: git: add missing destsuffix and subpath parameters in docstrings
Docstring for git fetcher is missing destsuffix and subpath parameters,
so add them

(Bitbake rev: 7cea6c2efefbb0f789f654c04a61d9ba770c148b)

Signed-off-by: Julien Stephan <jstephan@baylibre.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-11-23 17:44:59 +00:00
Desone Burns
7aab731f1e bitbake: bitbake: fetch2: git: Update Git-LFS download and tests
When downloading a Git repository containing an LFS, the Git hooks
are not always initialized correctly to perform the download. This
change updates the Git downloader to run the "git lfs install" command
in order to "smudge" the LFS files. The tests have also been updated
to do checks for situations in which git lfs is not installed, as
the application was required to be installed for any of the tests
to run previously.

The Git LFS functionality was working to some degree previously,
but this change also updates the fetcher to allow LFS downloads for
nobranch SRC_URIs.

(Bitbake rev: 05f8529fb439db93d85a892704b6f2f0ac0c9217)

Signed-off-by: Desone Burns II <dburns@seegrid.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-11-23 17:37:25 +00:00
Alexander Lussier-Cullen
6a87f5d53b bitbake: toaster: make django temp directory configurable
Modify the django settings to make cache, logs and databases save
to a configurable directory with TOASTER_DJANGO_TMPDIR instead of
the machine root level /tmp directory.

In addition, add this variable to the passthroughs for tox.

This change is made to facilitate cleaning test files for runs on
the autobuilder and avoid errors involving the persisted database.

(Bitbake rev: 887aaa91fd54ef24fc3cce42d584b381e37d3343)

Signed-off-by: Alexander Lussier-Cullen <alexander.lussier-cullen@savoirfairelinux.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-11-23 15:25:01 +00:00
Alexander Lussier-Cullen
6a9db991e7 bitbake: toaster/tests: add passthroughs for relevant build environment variables
Toaster build tests create new build environments which do not utlize
any existing build environment variables.
In particular, DL_DIR and SSTATE_DIR from an existing environment can
be passed in to allow for faster builds.

Adding these as passthroughs specifically resolves slow builds
related to the autobuilder integrations of the toaster test suite.

(Bitbake rev: 58cc3a4671878a425f52f9ec21636e366356bfc2)

Signed-off-by: Alexander Lussier-Cullen <alexander.lussier-cullen@savoirfairelinux.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-11-23 15:25:01 +00:00
Alassane Yattara
742323caf3 bitbake: toaster/tests: Add UI TestCase - Test the show rows feature in image recipe
Test the show rows feature in image recipe table on project page

(Bitbake rev: 0afbce01f8b037adb9311f63dcb63a2d180a5373)

Signed-off-by: Alassane Yattara <alassane.yattara@savoirfairelinux.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-11-23 12:06:06 +00:00
Alassane Yattara
105f5a8d0d bitbake: toaster/tests: Add UI TestCase for the edit column feature in image recipe
BUILD IMAGE RECIPES: toastergui/project/{id}/images/
Test the edit column feature in image recipe table on project page

(Bitbake rev: 005f8e4a875d280268e0369d26aaaa9e5a65fd68)

Signed-off-by: Alassane Yattara <alassane.yattara@savoirfairelinux.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-11-23 12:06:06 +00:00
Alassane Yattara
3d2d290157 bitbake: toaster/tests: Add UI TestCase - Test project page section images
BUILD IMAGE RECIPES: toastergui/project/{id}/images/
Test project page section images
    - Check image recipes are displayed
    - Check search input
    - Check image recipe build button works
    - Check image recipe table features(show/hide column, pagination)

(Bitbake rev: 9aa0aad6812730d4ffaa9b3adfae041176274475)

Signed-off-by: Alassane Yattara <alassane.yattara@savoirfairelinux.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-11-23 12:06:06 +00:00
Alassane Yattara
2eb70a30d9 bitbake: toaster/tests: Add UI TestCase - Test project page tab "New custom image"
Test project page tab "New custom image" when no custom image

(Bitbake rev: fd8fe1d3b25679032a43c1dd25a945318e573cef)

Signed-off-by: Alassane Yattara <alassane.yattara@savoirfairelinux.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-11-23 12:06:06 +00:00
Alassane Yattara
a303b37bd6 bitbake: toaster/tests: Add UI TestCase - Test project page tab import layer
(Bitbake rev: 857e6fdefa655fa73460c9bb008dc08abb4c3107)

Signed-off-by: Alassane Yattara <alassane.yattara@savoirfairelinux.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-11-23 12:06:06 +00:00
Alassane Yattara
bc9da9aa64 bitbake: toaster/tests: Add UI TestCase - Test project config tab
Check if project config tab right section contains five blocks:
    - Machine:
        - check 'Machine' is displayed
        - check can change Machine
    - Distro:
        - check 'Distro' is displayed
        - check can change Distro
    - Most built recipes:
        - check 'Most built recipes' is displayed
        - check can select a recipe and build it
    - Project release:
        - check 'Project release' is displayed
        - check project has right release displayed
    - Layers:
        - check can add a layer if exists
        - check at least three layers are displayed
            - openembedded-core
            - meta-poky
            - meta-yocto-bsp

(Bitbake rev: cbf0df0604e6cb37aa8c4433e9af3c321be80010)

Signed-off-by: Alassane Yattara <alassane.yattara@savoirfairelinux.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-11-23 12:06:06 +00:00
Alassane Yattara
363f19e75a bitbake: toaster/tests: Add UI TestCase - Test project config tab navigation:
- Check if the menu is displayed and contains the right elements:
    - Configuration
    - COMPATIBLE METADATA
    - Custom images
    - Image recipes
    - Software recipes
    - Machines
    - Layers
    - Distro
    - EXTRA CONFIGURATION
    - Bitbake variables
    - Actions
    - Delete project

(Bitbake rev: a12fe481aac82e1feebdb56afb67ba77a8904995)

Signed-off-by: Alassane Yattara <alassane.yattara@savoirfairelinux.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-11-23 12:06:06 +00:00
Alassane Yattara
fd740a6b6d bitbake: toaster/tests: Add UI TestCase - Test project page has right tabs displayed
Test project tabs:
  - "configuration" tab
  - "Builds" tab
  - "Import layers" tab
  - "New custom image" tab
  Check search box used to build recipes

(Bitbake rev: 13a55ebe630ad20e8ab4cdcb3dc6dcbf4fa7243a)

Signed-off-by: Alassane Yattara <alassane.yattara@savoirfairelinux.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-11-23 12:06:06 +00:00
Alassane Yattara
f002040d77 bitbake: toaster/tests: Add UI TestCase - Test edit project name on project page
Test edit project name:
  - Click on "Edit" icon button
  - Change project name
  - Click on "Save" button
  - Check project name is changed

(Bitbake rev: 0bd0bbf8df2a1043d5c768a70e4c4fabd5195227)

Signed-off-by: Alassane Yattara <alassane.yattara@savoirfairelinux.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-11-23 12:06:06 +00:00
Alassane Yattara
4ff7c528dd bitbake: toaster/tests: Add UI TestCase - Check project header contains right items
Check page header in project page:
  - AT LEFT -> Logo of Yocto project, displayed, clickable
  - "Toaster"+" Information icon", displayed, clickable
  - "Server Icon" + "All builds", displayed, clickable
  - "Directory Icon" + "All projects", displayed, clickable
  - "Book Icon" + "Documentation", displayed, clickable
  - AT RIGHT -> button "New project", displayed, clickable

(Bitbake rev: 5b2b8fe16e2adb45ca88165162c65c0f7f9a0755)

Signed-off-by: Alassane Yattara <alassane.yattara@savoirfairelinux.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-11-23 12:06:06 +00:00
Alassane Yattara
26ac6923e2 bitbake: toaster/tests/create_new_project: Code cleanup
Fixed
- Select import,
- Remove trailing whitespace,
- Set excepted 2lines after imports

(Bitbake rev: f0c91629fad2e556cd429f561cc244aef4b7b066)

Signed-off-by: Alassane Yattara <alassane.yattara@savoirfairelinux.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-11-23 12:06:06 +00:00
Alassane Yattara
ff3a48920a bitbake: toaster/tests: Add UI TestCase for visualize all projects show rows
Test the show rows feature in the projects table on the all projects page

(Bitbake rev: d899a3cf9e186f78780415195c734fdef359d08d)

Signed-off-by: Alassane Yattara <alassane.yattara@savoirfairelinux.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-11-23 12:06:06 +00:00
Alassane Yattara
f1230edc55 bitbake: toaster/tests: Add UI TestCase for visualize all projects edit column
Test the edit column feature in the projects table on the all projects page

(Bitbake rev: 16e05122b7298c449bf6cec1bcae75c3fb5d87db)

Signed-off-by: Alassane Yattara <alassane.yattara@savoirfairelinux.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-11-23 12:06:06 +00:00
Alassane Yattara
6c5dff75f5 bitbake: toaster/tests: Add UI TestCase for Visualize all projects
Test the search box in the all project table on the all projects page

(Bitbake rev: a2c0e65e90619268da916a235a97df890697d22f)

Signed-off-by: Alassane Yattara <alassane.yattara@savoirfairelinux.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-11-23 12:06:06 +00:00
Peter Kjellerstedt
2a2320001e bitbake: cache: Simplify virtualfn2realfn()
Also correct the description of variant2virtual().

(Bitbake rev: d766e9bd22ec6392fbf1694eea5032b9d09f1949)

Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-11-23 12:06:06 +00:00
Peter Kjellerstedt
02c2d31d4d bitbake: cookerdata: Be consistent with what type bb_data represents
In _parse_recipe(), bb_data was initially a datastore object, but then
after the call to bb.parse.handle() it was all of a sudden turned into a
dict of variant:datastore pairs. At the same time, parseRecipeVariants()
used bb_data for datastore objects, while parseRecipe() used it for the
dicts of variant:datastore pairs.

Change these functions to consistently use "bb_data" for datastore
objects and use "datastores" for the dicts of variant:datastore pairs.

(Bitbake rev: ed0f94c037476efd465db87726b2480406076beb)

Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-11-23 12:06:06 +00:00
Peter Kjellerstedt
370de0fa91 bitbake: command: Make parseRecipeFile() handle virtual recipes correctly
Running `devtool search gcc` would result in errors like this for
virtual recipes:

  ERROR: When reparsing
  .../meta/recipes-devtools/gcc/libgcc-initial_13.2.bb:do_populate_sysroot,
  the basehash value changed from
  b1cd809ed98cef9db0fb1b17d34c4083e739c336f9d5619b89715b0294d81af5 to
  44c2f92781dc4a20e98b7bb4724e204e64b101905fa75e71241a574b725997dc. The
  metadata is not deterministic and this needs to be fixed.
  ERROR: The following commands may help:
  ERROR: $ bitbake libgcc-initial -cdo_populate_sysroot -Snone
  ERROR: Then:
  ERROR: $ bitbake libgcc-initial -cdo_populate_sysroot -Sprintdiff

The reason was the newly introduced :layer-<layername> override, which
is used, e.g., in meta/classes-global/insane.bbclass to add the
patch-status QA test only for the meta layer:

  ERROR_QA:append:layer-core = " patch-status"

When tinfoil parsed the recipes using the parseRecipeFile() function, it
failed to properly identify the layername for virtual recipes, which
resulted in the error above.

The correct thing to do is to make parseRecipeFile() call
bb.cache.virtualfn2realfn() to convert the virtual filename into a real
filename and virtual class.

(Bitbake rev: da2aed134412f5de04d7b540f92d735983ad0108)

Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-11-23 12:06:06 +00:00
Richard Purdie
65bd1b3bf7 bitbake: cooker: Avoid sideeffects for autorev from getAllKeysWithFlags
If we expand the variable AUTOREV in OE-Core, it triggers side effects in the
fetcher. The situation isn't ideal and needs improvement but this breaks
and is blocking enabling BB_DEFAULT_EVENTLOG.

Hack around the issue for now so we unblock things until we can work out
a better plan for how to improve AUTOREV support.

(Bitbake rev: cb9b6530f3d12c56a8b48847af2e7461924205d2)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-11-23 12:06:06 +00:00
Richard Purdie
6ca541175e bitbake: cooker: Add support for BB_DEFAULT_EVENTLOG
Currently it is only possible to specify an eventlog on the bitbake
commandline. Add a variable that can be used in bitbake.conf so that
we can log data by default more easily.

(Bitbake rev: ee174b231897a53cdde0f68769518342e53210cf)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-11-23 12:06:06 +00:00
Julien Stephan
4d6c63a56c bitbake: bitbake: utils: remove spaces on empty lines
(Bitbake rev: 979ff8b4228e4c6f90985e9a3faa5fc9f3922218)

Signed-off-by: Julien Stephan <jstephan@baylibre.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-11-20 15:32:25 +00:00