[Toaster] Need help with Production toaster setup
Neth, Craig Allen
craig.neth at verizon.com
Thu Jul 3 13:33:39 PDT 2014
A month or so ago, I set up a production toaster instance using the poky
master branch.
Our projects were building with Daisy. Everything was working fine.
For various reasons, I needed to redo the production instance and that
involved recloning the poky master repo, and now I¹m having issuesŠ
After recloning poky and restarting the server, all my builds with the
build logging turned on started throwing weird errors complaining like
this:
ERROR: Field 'project_id' doesn't have a default value
<traceback omitted>
And :
ERROR:
Traceback (most recent call last):
File "/poky/bitbake/lib/bb/ui/toasterui.py", line 191, in main
buildinfohelper.store_started_task(event)
File "/poky/bitbake/lib/bb/ui/buildinfohelper.py", line 653, in
store_started_task
recipe_information =
self._get_recipe_information_from_taskfile(event.taskfile)
File "/poky/bitbake/lib/bb/ui/buildinfohelper.py", line 551, in
_get_recipe_information_from_taskfile
layer_version_obj = self._get_layer_version_for_path(localfilepath)
File "/poky/bitbake/lib/bb/ui/buildinfohelper.py", line 533, in
_get_layer_version_for_path
assert 'build' in self.internal_state
AssertionError
So I figured that there was probably some difference of opinion between
the client and the server about the schema; I tried running the Œsyncdb¹
and Œmigrate orm¹ commands again on the server but that didn¹t help.
---
So next I figured I would just delete the Œtoaster¹ database and start
over. I tried going into mysql and dropping the toaster database,
recreating it, and then redoing the two python commands, but that results
in this error from the migrate orm command:
python bitbake/lib/toaster/manage.py migrate orm
Running migrations for orm:
- Migrating forwards to 0007_auto__add_helptext.
> orm:0001_initial
> orm:0002_auto__add_field_build_timespent
> orm:0003_timespent
- Migration 'orm:0003_timespent' is marked for no-dry-run.
> orm:0004_auto__add_field_package_installed_name
>
orm:0005_auto__add_target_image_file__add_target_file__add_field_variablehi
stor
FATAL ERROR - The following SQL query failed: ALTER TABLE `orm_build` ADD
COLUMN `timespent` integer NOT NULL DEFAULT 0;
The error was: (1060, "Duplicate column name 'timespent'")
RuntimeError: Cannot reverse this migration. 'Target.file_name' and its
values cannot be restored.
This was all done while working on the daisy branch.
So, then I tried the delete/recreate database trick again and changed back
to the master branch. Now I can run the two python commands ok, but my
daisy clients are back to throwing the assert errors...
So, a few questions:
- Does it still work to run the production server on the master and
clients running daisy, or do I have to use the daisy version of the
production server, or do I need something newer than daisy but not as new
as master?
- If for whatever reason I need to recreate the database, what are the
exact steps that I need to do to delete/recreate?
It seems like just dropping the Œtoaster¹ database and recreating it is
insufficient, but I am not sure what else to do.
The wiki pages are a bit vague on all this stuff, thanks for any help.
Craig
More information about the toaster
mailing list