summaryrefslogtreecommitdiff
path: root/.gitlab-ci.yml
Commit message (Collapse)AuthorAgeFilesLines
* zephyr: gitlab: Filter chip/core specific code from coverageYuval Peress2021-11-301-0/+1
| | | | | | | | | | | | | | Since we're not running these in a QEMU we'll never be able to touch these files. BRANCH=none BUG=none TEST=Run zmake with coverage and manually run lcov with the filters Signed-off-by: Yuval Peress <peress@google.com> Change-Id: I7815dfedafaaacad160408fec7618c89e457d280 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3291128 Reviewed-by: Jeremy Bettis <jbettis@chromium.org>
* zephyr: gitlab: Use glob pattery to filter zephyr/driversYuval Peress2021-11-301-1/+4
| | | | | | | | | | | | | | | | Looks like * in lcov isn't recusive. Use ** instead which does the job correctly. Also, include the matching include/ directory which I missed on the first pass. BRANCH=none BUG=none TEST=Run tests with coverage, then manually run lcov and verify that the directory was removed. Signed-off-by: Yuval Peress <peress@google.com> Change-Id: I7eb58b0eff01ecd5ba9c4f5da18e947d3e41c489 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3291127 Reviewed-by: Jeremy Bettis <jbettis@chromium.org>
* zephyr: zmake: Drop support for per-project zephyr versioningJack Rosenthal2021-11-221-13/+10
| | | | | | | | | | | | | | | | | | | | | | | This drops all support for projects to specify which zephyr version they use. Zmake no longer cares what Zephyr version you give it: it will simply use whatever's passed for --zephyr-base and be happy with it. This intentionally hard-codes the checkout path to the v2.7 branch as the Zephyr version used to de-couple from the cutover to the main branch. The follow up CL actually switches to the main branch. (This is, more or less, just self-contained preparatory work in zmake for the transition to main.) BUG=b:205884929 BRANCH=none TEST=unit tests pass TEST=https://gitlab.com/zephyr-ec/ec/-/pipelines/412252730 Signed-off-by: Jack Rosenthal <jrosenth@chromium.org> Change-Id: I9f8e28cec6466c666862c8f46f1608625a3ec53f Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3296530 Reviewed-by: Jeremy Bettis <jbettis@chromium.org>
* gitlab: Generate coverage report for hayatoJeremy Bettis2021-11-191-0/+5
| | | | | | | | | | | | | | | | Generate a coverage report for hayato also. BRANCH=None BUG=None TEST=None Change-Id: Ic789460166282f3ad631aa0091e81eddc84a08db Signed-off-by: Jeremy Bettis <jbettis@google.com> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3289292 Tested-by: Jeremy Bettis <jbettis@chromium.org> Auto-Submit: Jeremy Bettis <jbettis@chromium.org> Commit-Queue: Keith Short <keithshort@chromium.org> Reviewed-by: Keith Short <keithshort@chromium.org>
* zephyr: gitlab: filter zephyr/drivers/** directoriesYuval Peress2021-11-181-1/+1
| | | | | | | | | | | | | | | | | Remove the drivers written under zephyr/drivers/ from the code coverage. These drivers are in the process of being migrated upstream and the tests will be done upstream as well. Additionally, adding emulators to support this in a host test will be too difficult since many dependencies in the Zephyr build are SOC and SOC_FAMILY dependent. BRANCH=none BUG=none TEST=none Signed-off-by: Yuval Peress <peress@google.com> Change-Id: I27bcc31e5ee474aff2be050b8ef8289a1512b6cc Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3288905 Reviewed-by: Jeremy Bettis <jbettis@chromium.org>
* zephyr: gitlab-ci: Build by project name, not directoryJack Rosenthal2021-11-171-14/+5
| | | | | | | | | | | | | | | Switch the GitLab CI runner to use project name, instead of manually specifying the directory. This is so that projects can specify more than one project per directory. BUG=b:193815337 BRANCH=none TEST=https://gitlab.com/zephyr-ec/ec/-/pipelines/410231302 Signed-off-by: Jack Rosenthal <jrosenth@chromium.org> Change-Id: I7a32f3be069b388741ef65af2374a5dfae22e86b Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3286371 Reviewed-by: Jeremy Bettis <jbettis@chromium.org>
* zephyr: Drop support for kohakuJack Rosenthal2021-11-101-5/+0
| | | | | | | | | | | | | | | | | | | | | | For context: this build was created so that we had a device that could be publicly purchased to play with Zephyr on in January 2021. With a little passage of time, we now have lazor, limozeen, and delbin as well. This build supports nothing other than power sequence to S0 (no keyboard, battery, charging, etc.) so sadly it's hardly usable for anything at the moment. Delete it so it does not create confusing directory structure for how we want variants to be created. BUG=b:193814903 BRANCH=none TEST=zmake testall Signed-off-by: Jack Rosenthal <jrosenth@chromium.org> Change-Id: Ic0fa3099c19a484513b23c7826376604cf8d2f22 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3271872 Commit-Queue: Jeremy Bettis <jbettis@chromium.org> Reviewed-by: Jeremy Bettis <jbettis@chromium.org>
* gitlab: Add the pyyaml packageJeremy Bettis2021-11-041-0/+1
| | | | | | | | | | | | | | | | | | | Install the pyyaml package, it was required by zmake, and installed by pip when you installed zmake. Now it is still needed, but not discovered by pip, so it needs to be installed explicitly. See https://gitlab.com/zephyr-ec/ec/-/jobs/1737467792 BRANCH=None BUG=b:193815337 TEST=Build locally in docker Change-Id: Ie467b3f1ddc338b387c6ccae1f202c52734e55e2 Signed-off-by: Jeremy Bettis <jbettis@google.com> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3257867 Tested-by: Jeremy Bettis <jbettis@chromium.org> Auto-Submit: Jeremy Bettis <jbettis@chromium.org> Commit-Queue: Yuval Peress <peress@google.com> Reviewed-by: Yuval Peress <peress@google.com>
* gitlab: Use cache to only get source code onceJeremy Bettis2021-10-051-13/+31
| | | | | | | | | | | | | | | | | | | | | | | | | | | | There was a recent breakage where one job failed because of a git clone timeout. But more importantly, we should make sure all the jobs are using the same commit. Change CI jobs to use the gitlab cache to keep the non-ec git repos so only the first job (seed_cache) will do the git clone, and the others will just pull the files from the cache. The cache key is the ec commit sha that is being built. The total build time after this is 40m, and the builds before this were 37-39m, so it doesn't seem to be a change. BUG=None BRANCH=None TEST=Pushed to coverage branch on gitlab: https://gitlab.com/zephyr-ec/ec/-/pipelines/382237078 Change-Id: Ic596464fbf90c2964075b4f8f3e6bdc77bde531b Signed-off-by: Jeremy Bettis <jbettis@google.com> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3205632 Tested-by: Jeremy Bettis <jbettis@chromium.org> Auto-Submit: Jeremy Bettis <jbettis@chromium.org> Reviewed-by: Jack Rosenthal <jrosenth@chromium.org> Commit-Queue: Jeremy Bettis <jbettis@chromium.org>
* gitlab: Move board coverage to a templateJeremy Bettis2021-10-011-2/+26
| | | | | | | | | | | | | | | | | | | This will allow us to build coverage reports for multiple boards. Also add the `coverage` keyword, so the coverage of each step will appear on the jobs page. I.e. https://gitlab.com/zephyr-ec/ec/-/pipelines/380049325/builds BRANCH=None BUG=None TEST=None Change-Id: I892653406f471b3c98ad6dbd7cb91c086614e264 Signed-off-by: Jeremy Bettis <jbettis@google.com> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3197731 Commit-Queue: Jeremy Bettis <jbettis@chromium.org> Tested-by: Jeremy Bettis <jbettis@chromium.org> Reviewed-by: Yuval Peress <peress@google.com>
* gitlab: Exclude the correct directoriesJeremy Bettis2021-10-011-1/+1
| | | | | | | | | | | | | | | | | | | I moved the zephyr directory, and didn't update the exclusion in merged_coverage. BRANCH=None BUG=None TEST=None Change-Id: I23532af4c95d547343aa25aa6fd39174fe58ee68 Signed-off-by: Jeremy Bettis <jbettis@google.com> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3197730 Tested-by: Jeremy Bettis <jbettis@chromium.org> Auto-Submit: Jeremy Bettis <jbettis@chromium.org> Reviewed-by: Aaron Massey <aaronmassey@google.com> Reviewed-by: Jack Rosenthal <jrosenth@chromium.org> Commit-Queue: Jeremy Bettis <jbettis@chromium.org> Commit-Queue: Jack Rosenthal <jrosenth@chromium.org>
* ec: Pass zephyr root dir to zmake instead of baseJeremy Bettis2021-09-301-14/+8
| | | | | | | | | | | | | | | | | | | Checkout all zephyr versions on gitlab, and pass the root directory to zmake instead of just 1 version. BUG=None TEST=sudo emerge zephyr-build-tools && \ ./zephyr/firmware_builder.py --metrics /tmp/tmpwhi95jy2 build && \ ./zephyr/zmake/run_tests.sh BRANCH=None Signed-off-by: Jeremy Bettis <jbettis@google.com> Change-Id: I6016495aeff847b2cba081e1fa8731526de11f8d Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3194982 Commit-Queue: Jeremy Bettis <jbettis@chromium.org> Tested-by: Jeremy Bettis <jbettis@chromium.org> Auto-Submit: Jeremy Bettis <jbettis@chromium.org> Reviewed-by: Jack Rosenthal <jrosenth@chromium.org>
* gitlab: Many changes to get coverage build workingJeremy Bettis2021-09-291-15/+35
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Switch to updated docker container. Make shallow git clones for speed. Don't install anytree or pyelftools, since they are in the docker container now. Set explicit `needs` attributes on each job. Split coverage build into ec_coverage, zephyr_coverage, and merged_coverage. Run make -j8 instead of make -j. Run make test-coverage instead of make coverage. For this situation we don't need the base board coverage, nor the report. Stop using flock to prevent parallel calls to lcov. I don't know if it was ever unsafe, but it seems safe today. BUG=None BRANCH=None TEST=Pushed to gitlab coverage branch: https://gitlab.com/zephyr-ec/ec/-/pipelines/379672379 Change-Id: I90ed7bb947d96062042959aee957bc6728c22ea7 Signed-off-by: Jeremy Bettis <jbettis@google.com> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3194977 Tested-by: Jeremy Bettis <jbettis@chromium.org> Auto-Submit: Jeremy Bettis <jbettis@chromium.org> Commit-Queue: Fabio Baltieri <fabiobaltieri@google.com> Reviewed-by: Fabio Baltieri <fabiobaltieri@google.com>
* gitlab: Fix yaml errorJeremy Bettis2021-09-281-1/+1
| | | | | | | | | | | | | | | | | crrev/c/3173097 broke the yaml file. Quote the "SF:" text to avoid yaml parser issues. BUG=None TEST=Used the CI lint tool: https://gitlab.com/zephyr-ec/ec/-/ci/lint BRANCH=None Signed-off-by: Jeremy Bettis <jbettis@google.com> Change-Id: I53e1cbee7bb73f31f205e55718367ee3bebe2bc8 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3188642 Tested-by: Jeremy Bettis <jbettis@chromium.org> Auto-Submit: Jeremy Bettis <jbettis@chromium.org> Commit-Queue: Jack Rosenthal <jrosenth@chromium.org> Reviewed-by: Jack Rosenthal <jrosenth@chromium.org>
* gitlab: Generate coverage report for herobrineJeremy Bettis2021-09-271-1/+5
| | | | | | | | | | | | | | | | As part of the coverage artifacts, build a report for herobrine w/o zephyr code. BUG=None BRANCH=None TEST=Ran cmds in docker Signed-off-by: Jeremy Bettis <jbettis@google.com> Change-Id: I7b1291d4d447769487870fc701a8452aeaffa649 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3173097 Commit-Queue: Jeremy Bettis <jbettis@chromium.org> Tested-by: Jeremy Bettis <jbettis@chromium.org> Reviewed-by: Jack Rosenthal <jrosenth@chromium.org>
* gitlab: Also build cros-ec coverage reportJeremy Bettis2021-09-271-4/+11
| | | | | | | | | | | | | | | | Build both the zephyr and the cros-ec coverage reports, and merge the info files. BRANCH=None BUG=None TEST=Ran cmds in docker. Change-Id: I22e8c1e6192ba4b917fc5a5ee434dfb4edcb866d Signed-off-by: Jeremy Bettis <jbettis@google.com> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3173096 Commit-Queue: Jeremy Bettis <jbettis@chromium.org> Tested-by: Jeremy Bettis <jbettis@chromium.org> Reviewed-by: Yuval Peress <peress@google.com>
* gitlab: Build herobrine_npcx9 on gitlabJeremy Bettis2021-09-151-0/+7
| | | | | | | | | | | | | | | Add herobrine_npcx9 to gitlab CI script. BUG=None TEST=None BRANCH=None Signed-off-by: Jeremy Bettis <jbettis@google.com> Change-Id: Id02bd7dc5a64b94c973636db1869bc9e2588dfc8 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3163116 Commit-Queue: Jeremy Bettis <jbettis@chromium.org> Tested-by: Jeremy Bettis <jbettis@chromium.org> Reviewed-by: Keith Short <keithshort@chromium.org>
* gitlab: Clone nanopb to fix buildJeremy Bettis2021-09-151-0/+1
| | | | | | | | | | | | | | | crrev/c/3149344 made nanopb required, so fetch it before building. BRANCH=none BUG=none TEST=none Signed-off-by: Jeremy Bettis <jbettis@google.com> Change-Id: I1d38e2d4e1208bfbccdd04a32d9c11ba0841d5b9 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3163117 Reviewed-by: Yuval Peress <peress@google.com> Commit-Queue: Jeremy Bettis <jbettis@chromium.org> Tested-by: Jeremy Bettis <jbettis@chromium.org>
* gitlab: Generate ram/rom reports for each buildJeremy Bettis2021-09-141-0/+10
| | | | | | | | | | | | | | | | There is some garbage ninja messages at the top of the txt versions of the reports, but the json reports are good. BUG=None TEST=Ran cmds in docker BRANCH=None Signed-off-by: Jeremy Bettis <jbettis@google.com> Change-Id: Iac287da55beef7e0896d37416fd9ae943c48eaeb Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3160502 Commit-Queue: Jeremy Bettis <jbettis@chromium.org> Tested-by: Jeremy Bettis <jbettis@chromium.org> Reviewed-by: Keith Short <keithshort@chromium.org>
* gitlab: Run a zmake testall on gitlabJeremy Bettis2021-09-031-0/+6
| | | | | | | | | | | | | | | | We should run all tests on gitlab, that could have caught the breakage of accel_cal much sooner. BUG=None TEST=Pushed to gitlab coverage branch BRANCH=None Signed-off-by: Jeremy Bettis <jbettis@google.com> Change-Id: I72ba56361b9c796df770ceee7965bd674d9378a7 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3139096 Reviewed-by: Jack Rosenthal <jrosenth@chromium.org> Commit-Queue: Jeremy Bettis <jbettis@chromium.org> Tested-by: Jeremy Bettis <jbettis@chromium.org>
* gitlab: Build coverage report in gitlabJeremy Bettis2021-09-031-1/+14
| | | | | | | | | | | | | | | | Added new coverage job to gitlab. BUG=None TEST=Pushed to gitlab coverage branch BRANCH=None Signed-off-by: Jeremy Bettis <jbettis@google.com> Change-Id: I2dd20ee94934b71426e00e8d45b2670f106048ae Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3119210 Reviewed-by: Jack Rosenthal <jrosenth@chromium.org> Tested-by: Jeremy Bettis <jbettis@chromium.org> Auto-Submit: Jeremy Bettis <jbettis@chromium.org> Commit-Queue: Jeremy Bettis <jbettis@chromium.org>
* zephyr: update gitlab external CI to use v2.6 on all buildsJack Rosenthal2021-08-111-8/+7
| | | | | | | | | | | | | | | 2.5 support is going away. Drop any builds which use 2.5 still. BUG=b:195571108 BRANCH=none TEST=gitlab pipeline results UI Signed-off-by: Jack Rosenthal <jrosenth@chromium.org> Change-Id: I9f18f934db9267e3f074c82fa6f64c603c62b842 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3086364 Commit-Queue: Keith Short <keithshort@chromium.org> Reviewed-by: Keith Short <keithshort@chromium.org> Reviewed-by: Simon Glass <sjg@chromium.org>
* gitlab: Update to support Zepyr v2.6Simon Glass2021-08-041-4/+14
| | | | | | | | | | | | | | | Two of the boards are failing because they were updated to kernel v2.6 which is not supported. Add support for this. BUG=b:178731498 BRANCH=none TEST=try on gitlab https://gitlab.com/zephyr-ec/ec/-/pipelines/345813203 Change-Id: Ica00cde7a7ad73ed603efbd4706bc4bdfbe4f55f Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3065158 Reviewed-by: Yuval Peress <peress@chromium.org>
* giblab: Add hayato and it8xxx2_evbSimon Glass2021-05-071-1/+12
| | | | | | | | | | | | | | | | These two boards were missed from gitlab config. Add them. BUG=b:178731498 BRANCH=none TEST=try on gitlab https://gitlab.com/zephyr-ec/ec/-/pipelines/299402335 Signed-off-by: Simon Glass <sjg@chromium.org> Change-Id: If8994aec61ab93969fca2b1e132e2eb64a90c177 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2880420 Commit-Queue: Keith Short <keithshort@chromium.org> Reviewed-by: Keith Short <keithshort@chromium.org> Reviewed-by: Jeremy Bettis <jbettis@chromium.org>
* gitlab: Add posix-ecSimon Glass2021-05-071-2/+8
| | | | | | | | | | | | | | Add this board so we get coverage on gitlab. BUG=b:178731498 BRANCH=none TEST=try on gitlab https://gitlab.com/zephyr-ec/ec/-/pipelines/299319312 Change-Id: I27dab970650d5e705d0f04f5b0e9096b0ae25cec Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2817962 Reviewed-by: Jeremy Bettis <jbettis@chromium.org>
* gitlab: Add kohaku and delbinSimon Glass2021-04-161-0/+11
| | | | | | | | | | | | | | Add these two boards so we get coverage on gitlab. BUG=b:178731498 BRANCH=none TEST=try on gitlab Signed-off-by: Simon Glass <sjg@chromium.org> Change-Id: Ia0d46554c93ffb9eeb5697a4c84d4e93864b928d Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2817961 Reviewed-by: Denis Brockus <dbrockus@chromium.org> Reviewed-by: Jack Rosenthal <jrosenth@chromium.org>
* gitlab: Use a template to make it easier to add more boardsSimon Glass2021-04-161-14/+19
| | | | | | | | | | | | | | It is a pain to repeat the build steps, so use a template instead. BUG=b:178731498 BRANCH=none TEST=try on gitlab Signed-off-by: Simon Glass <sjg@chromium.org> Change-Id: I2515627af230182e0e663f5d2ab6d7b3a77d3d2c Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2817960 Reviewed-by: Denis Brockus <dbrockus@chromium.org> Reviewed-by: Jack Rosenthal <jrosenth@chromium.org>
* gitlab: Add lazor buildstabilize-13895.B-mainSimon Glass2021-04-051-7/+14
| | | | | | | | | | | | | | We currently have only volteer building on gitlab. Since trogdor is under active development, add a build for that as well. BUG=b:178731498 BRANCH=none TEST=pass at https://gitlab.com/zephyr-ec/ec/-/pipelines/281073991 Signed-off-by: Simon Glass <sjg@chromium.org> Change-Id: I0526a83596825e8859ea74fad555c37bddf2fcc2 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2803996 Reviewed-by: Jack Rosenthal <jrosenth@chromium.org>
* gitlab: Update build name for zephyrSimon Glass2021-04-051-1/+2
| | | | | | | | | | | | | | The directory has changed. Update this in the gitlab file so that builds can succeed. BUG=b:178731498 BRANCH=none TEST=pass at https://gitlab.com/zephyr-ec/ec/-/pipelines/281069048 Signed-off-by: Simon Glass <sjg@chromium.org> Change-Id: If4924a221f33b3ad17c97a20ead1c35fc760291d Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2803995 Reviewed-by: Jack Rosenthal <jrosenth@chromium.org>
* gitlab: Finish the script so it builds volteerSimon Glass2021-02-231-6/+21
| | | | | | | | | | | | | | Add a few more pieces to the script so that it checks out the required code and builds for volteer, using the zephyr toolchain. BRANCH=none BUG=b:178731498 TEST=simon, can you test and mark V+1? I have no idea how to run this Change-Id: I31de106a7c8d208c71e9e49378eeb85030ecc7fb Signed-off-by: Simon Glass <sjg@chromium.org> Signed-off-by: Jack Rosenthal <jrosenth@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2697126
* Add basic gitlab integrationSimon Glass2021-02-021-0/+41
Add a configuration file so that new commits can be tested by gitlab. Also add a basic README for the Zephyr EC. BUG=b:178731498 BRANCH=none TEST=follow instructions in README.md Change-Id: Ibc3b4c5859e0b2e45ecd1c1518e096bc8272d155 Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2657103 Reviewed-by: Yuval Peress <peress@chromium.org> Reviewed-by: Jack Rosenthal <jrosenth@chromium.org>