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

feature/sc-100324/ci-build-cross-platform #2418

Merged
merged 3 commits into from Apr 11, 2022

Conversation

busticated
Copy link
Contributor

@busticated busticated commented Mar 31, 2022

Problem

Device OS' build system drives local compilation of user firmware in a number of Particle's user-facing and internal developer tools - most notably Particle Workbench. Currently prior to releasing, the build system is tested on Linux / Ubuntu which means bugs and regressions are much harder to proactively catch on other supported platforms (Windows and macOS).

Solution

Add a series of checks to the CI/CD system such that key local compilation tasks are regularly tested to ensure they work across all supported environments (Windows, Linux / Ubuntu, and macOS)

Steps to Test

  1. Using macOS, run the test script included in this PR: ./scripts/test-build-tasks.sh ~/path/to/device-os
  2. ...do the same thing using a compatible Ubuntu environment
  3. Using Windows, run the test script: .\scripts/test-build-tasks.ps1 $home\project
  4. Review the updated CI/CD pipeline
  5. Observe the latest CI run in CircleCI

outcome

Scripts should run properly - exiting on error and otherwise reporting success. CI configuration changes should make sense and do what you expect.

References

https://app.shortcut.com/particle/story/100324/add-ci-job-s-to-validate-device-os-builds-on-all-supported-oses-windows-linux-ubuntu-and-macos


Completeness

  • User is totes amazing for contributing!
  • Contributor has signed CLA (Info here)
  • Problem and Solution clearly stated
  • Run unit/integration/application tests on device
  • Added documentation
  • Added to CHANGELOG.md after merging (add links to docs and issues)

@busticated busticated marked this pull request as draft April 1, 2022 00:28
@busticated busticated force-pushed the feature/sc-100324/ci-build-cross-platform branch 13 times, most recently from 81cdb54 to 15286d4 Compare April 5, 2022 19:09
@monkbroc monkbroc force-pushed the feature/sc-100324/ci-build-cross-platform branch 9 times, most recently from 157fea0 to 56b0f15 Compare April 8, 2022 02:51
@busticated busticated force-pushed the feature/sc-100324/ci-build-cross-platform branch 2 times, most recently from 9914e7c to 7700150 Compare April 8, 2022 17:30
@busticated busticated marked this pull request as ready for review April 8, 2022 19:00
.circleci/config.yml Outdated Show resolved Hide resolved
@busticated busticated force-pushed the feature/sc-100324/ci-build-cross-platform branch from 7979adb to 9cb91a5 Compare April 9, 2022 19:07
@busticated busticated force-pushed the feature/sc-100324/ci-build-cross-platform branch 17 times, most recently from fd6f3bc to 8405492 Compare April 11, 2022 19:43
@busticated busticated force-pushed the feature/sc-100324/ci-build-cross-platform branch from 8405492 to 8962200 Compare April 11, 2022 20:44
@busticated
Copy link
Contributor Author

busticated commented Apr 11, 2022

i've run this pipeline now an absolutely ungodly number of times and of course just as i'm about to merge i hit some weirdness 😅🤦. over in an ubuntu job, i just saw an error during the prtcl install step:

Could not connect to prtcl.s3-website-us-east-1.amazonaws.com:80 (52.216.177.162), connection timed out

(log)

i just re-ran the step and it worked as expected so it's almost certainly just a blip. let's keep an eye on it though - if we see more failures, we can dig in more 👍

@busticated busticated merged commit e3935ad into develop Apr 11, 2022
@busticated busticated deleted the feature/sc-100324/ci-build-cross-platform branch April 11, 2022 21:15
@technobly technobly added this to the 4.0.0 milestone May 18, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
3 participants