Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update our workflows to the new latest docker builds as well fix nRF builds #4657

Merged
merged 23 commits into from
Feb 4, 2021

Conversation

woody-apple
Copy link
Contributor

Problem

Our docker builds are... a few builds back, and when I went to update things - some stuff seems to not be working.

Summary of Changes

  • Updated the nRF paths, Fixes: nRF Docker image doesn't build #4655
  • Updated the docker builds to latest (for now, working on proper Docker build image CI)
  • Rebuilt all docker images based with no changes (except nRF paths) - packages would be updated, but nothing else

Help needed

  • For some reason some DNS tests are failing, though all accessory builds work just fine, including QEMU
  • Main builds fail (same as above) - weird, we seem to be running the same jobs twice...
  • Cirque tests fail (possible same as above)

@woody-apple

This comment has been minimized.

@woody-apple woody-apple changed the title Docker build update our workflows as well fix nRF builds Update our workflows to the new latest docker builds as well fix nRF builds Feb 4, 2021
@woody-apple

This comment has been minimized.

@woody-apple
Copy link
Contributor Author

@andy31415 @jelderton @saurabhst @bzbarsky-apple

Ready for review (Note, will be following up about the "latest" tag in: #3411)

Also filed:
#4658
#4659

@github-actions
Copy link

github-actions bot commented Feb 4, 2021

Size increase report for "esp32-example-build" from 26061f6

File Section File VM
chip-all-clusters-app.elf .iram0.text 1068 1068
chip-all-clusters-app.elf .dram0.data -96 -96
chip-all-clusters-app.elf .dram0.bss 0 -2064
chip-all-clusters-app.elf .flash.text -2804 -2804
chip-all-clusters-app.elf .flash.rodata -5856 -5856
Full report output
BLOAT REPORT

Files found only in the build output:
    report.csv

Comparing ./master_artifact/chip-all-clusters-app.elf and ./pull_artifact/chip-all-clusters-app.elf:

sections,vmsize,filesize
.debug_info,0,40586
.debug_str,0,4310
.debug_line,0,2334
.debug_abbrev,0,1516
.debug_ranges,0,1232
.strtab,0,1078
.iram0.text,1068,1068
.debug_frame,0,1000
[Unmapped],0,788
.symtab,0,672
.debug_aranges,0,328
.shstrtab,0,-34
.xt.prop._ZN14NVSHandleEntryD2Ev,0,-76
.dram0.data,-96,-96
.debug_loc,0,-1946
.dram0.bss,-2064,0
.flash.text,-2804,-2804
.flash.rodata,-5856,-5856


@andy31415
Copy link
Contributor

One worry in using ':latest' is that it will couple docker releases with builds.

Currently if I build on version A and need a breaking change to build with B (e.g. a SDK update that requires code changes for compatibility), currently I can have:

  • PR to update docker to B. Code uses A still.
  • upload new docker (now both A and B are in docker)
  • PR to update code to B and use image B.

Throughout I would have no CI breakages because code specifies with what image it is compatible.

If code uses ":latest" I am unsure how the label should be updated since as soon as I change the label, all code would use the updated image.

@woody-apple - thoughts? Are the benefits of not needing to keep updating versions better than the downside of not being able to push incompatible SDK versions (and some non-reproducible builds, since checking out old commits may still use new SDKs) ?

@woody-apple
Copy link
Contributor Author

woody-apple commented Feb 4, 2021

One worry in using ':latest' is that it will couple docker releases with builds.

Currently if I build on version A and need a breaking change to build with B (e.g. a SDK update that requires code changes for compatibility), currently I can have:

  • PR to update docker to B. Code uses A still.
  • upload new docker (now both A and B are in docker)
  • PR to update code to B and use image B.

Throughout I would have no CI breakages because code specifies with what image it is compatible.

If code uses ":latest" I am unsure how the label should be updated since as soon as I change the label, all code would use the updated image.

@woody-apple - thoughts? Are the benefits of not needing to keep updating versions better than the downside of not being able to push incompatible SDK versions (and some non-reproducible builds, since checking out old commits may still use new SDKs) ?

As mentioned above, this is temporary - I'm working on our proper docker CI, and this will at least keep our builds more up to date (some of the old workflows were vastly out of date).

For the mean time, I'll keep an eye on docker images, and plan on getting our CI up either this week or weekend. I also have a pipeline I'm testing to rev all the version numbers in source when we push.

@woody-apple woody-apple requested a review from andy31415 February 4, 2021 17:25
@woody-apple woody-apple added hotfix urgent fix needed, can bypass review build issue labels Feb 4, 2021
@boring-cyborg boring-cyborg bot added the inet label Feb 4, 2021
@woody-apple
Copy link
Contributor Author

I hate to pile on, but this is resolved here too:
#4670

@woody-apple
Copy link
Contributor Author

@saurabhst ?

@woody-apple woody-apple merged commit ac5ec98 into project-chip:master Feb 4, 2021
@woody-apple
Copy link
Contributor Author

Merging due to hot-fix, due to broken build

pan- pushed a commit to ARMmbed/connectedhomeip that referenced this pull request Feb 9, 2021
pan- pushed a commit to pan-/connectedhomeip that referenced this pull request Mar 4, 2021
fkjagodzinski pushed a commit to ARMmbed/connectedhomeip that referenced this pull request Mar 25, 2021
@woody-apple woody-apple deleted the docker-build-fix branch June 4, 2021 02:11
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

nRF Docker image doesn't build
3 participants