Commit Graph

6670 Commits

Author SHA1 Message Date
Marlon Rodriguez Garcia
df5c8d6471 bitbake: toaster: Added new feature to import eventlogs from command line into toaster using replay functionality
Added a new button on the base template to access a new template.
Added a model register the information on the builds and generate access links
Added a form to include the option to load specific files
Added jquery and ajax functions to block screen and redirect to build page when import eventlogs is trigger
Added a new button on landing page linked to import build page, and set min-height of buttons in landing page for uniformity
Removed test assertion to check command line build in content, because new button contains text
Updated toaster_eventreplay to use library
Fix test in test_layerdetails_page
Rebased from master

This feature uses the value from the variable BB_DEFAULT_EVENTLOG to read the files created by bitbake
Exclude listing of files that don't contain the allvariables definitions used to replay builds
This part of the feature should be revisited. Over a long period of time, the BB_DEFAULT_EVENTLOG
will exponentially increase the size of the log file and cause bottlenecks when importing.

(Bitbake rev: ab96cafe03d8bab33c1de09602cc62bd6974f157)

Signed-off-by: Marlon Rodriguez Garcia <marlon.rodriguez-garcia@savoirfairelinux.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-12-12 15:58:57 +00:00
Richard Purdie
b32dbb3747 bitbake: toaster/tests/builds: Add BB_HASHSERVE passthrough
As well as BB_HASHSERVE_UPSTREAM, ensure BB_HASHSERVE is passed through
to allow sstate resuse on the autobuilder.

(Bitbake rev: f18a647d998670cc37a8832cb36ffe03da43d1c5)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-12-09 10:04:12 +00:00
Richard Purdie
4d14176aa6 bitbake: toaster: Update to use qemux86-64 machine by default
Toaster currently uses qemux86 as the default, update to match the
local.conf default changes, i.e. qemux86-64.

(Bitbake rev: 27fbba9ee15994a69284a7f8579c22d85e0ce863)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-12-09 10:04:12 +00:00
Pavel Zhukov
d14eb12deb bitbake: utils: Do not create directories with ${ in the name
In some cases ${ may not be expanded in the WORKDIR (one of the cases is
undefined variable) and causes cryptic failures [1]. Guard this by
erroring out if directory name contains ${

Fixes: [Yocto #15255]

[1]
ERROR: x-native-1.0+${SRCPV}-r0 do_deploy_source_date_epoch: Error executing a python function in exec_func_python() autogenerated:

The stack trace of python calls that resulted in this exception/failure was:
File: 'exec_func_python() autogenerated', lineno: 2, function: <module>
     0001:
 *** 0002:sstate_hardcode_path(d)
     0003:
File: '/home/mischief/src/poky/meta/classes-global/sstate.bbclass', lineno: 654, function: sstate_hardcode_path
     0650:    bb.note("Removing hardcoded paths from sstate package: '%s'" % (sstate_hardcode_cmd))
     0651:    subprocess.check_output(sstate_hardcode_cmd, shell=True, cwd=sstate_builddir)
     0652:
     0653:        # If the fixmefn is empty, remove it..
 *** 0654:    if os.stat(fixmefn).st_size == 0:
     0655:        os.remove(fixmefn)
     0656:    else:
     0657:        bb.note("Replacing absolute paths in fixmepath file: '%s'" % (sstate_filelist_relative_cmd))
     0658:        subprocess.check_output(sstate_filelist_relative_cmd, shell=True)
Exception: FileNotFoundError: [Errno 2] No such file or directory: '/home/mischief/src/poky/build/tmp/work/core2-64-poky-linux/x-native/1.0+${SRCPV}-r0/sstate-build-deploy_source_date_epoch/fixmepath'

(Bitbake rev: e91c256ec076e70cf8a18e369fe7862e50618c48)

Signed-off-by: Pavel Zhukov <pavel@zhukoff.net>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-12-08 17:17:42 +00:00
Alassane Yattara
7fefb85888 bitbake: toaster/tests: bug-fix tests writing files into /tmp on the autobuilders
- Use build directory instead of /tmp
- Better handle delay between driver actions

(Bitbake rev: 234b125c11e4cca015e4d54fbddbfd3d276b88f6)

Signed-off-by: Alassane Yattara <alassane.yattara@savoirfairelinux.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-12-08 17:17:42 +00:00
Alassane Yattara
6d91225651 bitbake: toaster/tests: Fixes warnings in autobuilder
../bitbake/lib/toaster/tests/functional/functional_helpers.py:66
  /home/pokybuild/yocto-worker/toaster/build/bitbake/lib/toaster/tests/functional/functional_helpers.py:66: DeprecationWarning: invalid escape sequence '\s'
    project_url=re.search("(projectPageUrl\s:\s\")(.*)(\",)",rc)

Traceback (most recent call last):
  File "/usr/lib/python3.10/threading.py", line 1016, in _bootstrap_inner
    self.run()
  File "/home/pokybuild/yocto-worker/toaster/build/bitbake/lib/toaster/tests/commands/test_runbuilds.py", line 39, in run
    os.kill(int(pid), signal.SIGTERM)
ProcessLookupError: [Errno 3] No such process

(Bitbake rev: 5a4732d5e4437cfc366c6b034868903ad6f0088c)

Signed-off-by: Alassane Yattara <alassane.yattara@savoirfairelinux.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-12-08 17:17:42 +00:00
Alassane Yattara
23d3e2c718 bitbake: toaster/tests: Bug fixes, functional tests dependent on each other
refactor test_create_project and test_project_page to remove their dependencies

(Bitbake rev: 54f7c0bb6ff435c4936c3422532aa071bd5b66e8)

Signed-off-by: Alassane Yattara <alassane.yattara@savoirfairelinux.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-12-08 17:17:42 +00:00
Alassane Yattara
d5a6e3b546 bitbake: toaster/tests: Refactorize tests/functional
- Split testcases from test_project_page_tab_config into tow files
- Added new testcases in test_project_config
    - Test changing distro variable
    - Test setting IMAGE_INSTALL:append variable
    - Test setting PACKAGE_CLASSES variable
    - Test creating new bitbake variable

(Bitbake rev: 649218c648b79a89b0e91aa80d8c9bf8fa2de645)

Signed-off-by: Alassane Yattara <alassane.yattara@savoirfairelinux.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-12-08 17:17:42 +00:00
Alassane Yattara
49128ef8ba bitbake: toaster/tests: Added functional/utils, contains useful methods using by functional tests
(Bitbake rev: c39a0cceedce324c311d00634c5329fbec1ba6d4)

Signed-off-by: Alassane Yattara <alassane.yattara@savoirfairelinux.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-12-08 17:17:42 +00:00
Alassane Yattara
f6cc0b360f bitbake: toaster/tests: Ensure to kill toaster process create for tests functional
Toaster background task runbuilds continu running when even if tests is
done
(Bitbake rev: e885863dffebab77f501a58df172926aafec5623)

Signed-off-by: Alassane Yattara <alassane.yattara@savoirfairelinux.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-12-08 17:17:42 +00:00
Marlon Rodriguez Garcia
ad2f5a359e bitbake: toaster/tests: Update build test
Updated build tests in toaster, added SSTATE_MIRROR to package build, changed build directory and update test order
This builds include the core-minimal-image, on the test enviroment a smaller package was use to run the test for time purposes

(Bitbake rev: af31116f0017912fc5a58a5976c814b6b326985f)

Signed-off-by: Marlon Rodriguez Garcia <marlon.rodriguez-garcia@savoirfairelinux.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-12-08 17:17:42 +00:00
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