Skip to content
This repository has been archived by the owner on Aug 20, 2020. It is now read-only.

Build bot #123

Open
kalyankondapally opened this issue Nov 9, 2013 · 3 comments
Open

Build bot #123

kalyankondapally opened this issue Nov 9, 2013 · 3 comments
Assignees
Labels
Milestone

Comments

@kalyankondapally
Copy link
Contributor

We now pin to a specific chromium checkout always. This task is to set up a build bot for Ozone-Wayland.

Usage:

  1. Check coding style matches chromium coding style. Depends on script ensuring C++ code conforms to our coding style #91
  2. Build any incoming pull requests and ensure patch doesn't break build.
  3. Run unit tests etc to ensure the change doesn't cause any regression. Depends on Unittests. #26
@ghost ghost assigned kalyankondapally Nov 9, 2013
@kalyankondapally
Copy link
Contributor Author

First task is to handle 2 and ability to display results in GitHub.

@kalyankondapally
Copy link
Contributor Author

Instructions proposed by Peter Mayo in Ozone mailing list:

To own maintain and operate a builder is particularly easy if you also have the code to the master and it looks like one of chromium's own.

To start I would:
A) check out chromium's tools
.gclient:
[{ "name": "build", "url": ".../trunk/tools/build...", "deps_file": "DEPS" (or.git) }]

B) get the OZONE FYI builder up and going locally:
i) echo "secret" >build/site_config/.bot_password
ii) pretend to be the slave:
after the imports in build/slave/run_slave.py add

          os.environ['TESTING_MASTER'] = 'ChromiumFYI'

          os.environ['TESTING_MASTER_HOST'] = 'localhost'

          os.environ['TESTING_SLAVENAME'] = 'vm951-m1'



iii) run the master : in build/masters/master.chromium.fyi "make start"
iv) run the slave : in build/slave "make start"
v) go to <hostname>:8011/waterfall?show=Ozone%20ECS%20Linux

C) copy the interesting parts to a new master that you checkout for your own repo
gclient:
[{ "name": "build", ...},{"name": "intel", ...}]
where the DEPS adds a directory like build/masters/master.intel.wayland

D) change the slaves portion around in a corresponding fashion

E) edit the recipes to be what you want to watch:
especially like scripts/slave/recipes/ozone_ecs.py

F) scale out to more slaves - check out slave.DEPS in the tools repo to see how it can be pruned down,
don't forget to share the same secret for the bot password.

This way gclient sync should keep you up to date with us, but not break you too often.

Yes, each step gets harder, IMHO.

@kalyankondapally
Copy link
Contributor Author

I have A and B done, starting with C part.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
Projects
None yet
Development

No branches or pull requests

1 participant