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

Build wrappers on Github Actions #2267

Merged
merged 96 commits into from
Apr 9, 2021

Conversation

LaPeste
Copy link
Contributor

@LaPeste LaPeste commented Feb 25, 2021

Description

Build macOS wrappers on every PR push and while at it create actions for code reuse.


To run tests: from relative folder realm-dotnet/.github/actions/build_wrappers run $npm test.
To build: it depends on where the changes were made

  1. If changes were only made to the action, just open the workspace with VSCode and hit build (or Ctrl+shift+b) and select the "distribute" option.
  2. If changes were made also made to the package, run npm run build from that project plus point 1

To lint: npm run lint from the project you want to lint
To lint and auto fix: npm run lint-fix
To debug: in VSCode go under the debug tab and select

  • "Launch Program" to debug a normal ts file as long as the break point is put in the transpiled js file
  • "mocha tests" to debug test cases where the breakpoint is put in the ts file

A discussion should be held to agree on when and where (locally or remotely) to automatically trigger a test run.


Fixes #2294
Fixes #2280
Fixes #2281
Fixes #2282
Fixes #2283
Fixes #2253

TODO

  • Changelog entry

@LaPeste LaPeste marked this pull request as ready for review March 22, 2021 14:26
@LaPeste LaPeste requested review from nirinchev and papafe March 22, 2021 14:26
LaPeste and others added 5 commits March 23, 2021 10:45
* Add typescript to dependencies
* Add some basic eslint rules (will extend later)
* Add typings to package.json
* Add __tests__ to tsc includes
* Disable the unused var warnings for tests
* Indent code with 4 spaces

* Increase print-width
Copy link
Member

@nirinchev nirinchev left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Did a very cursory review of the public API of ga_packages/build_cache_executor and think we should simplify it. We shouldn't try and provide too much flexibility in the first iteration because we don't know if people will actually need it. Let's go with the absolute simplest solution and build on top of that rather than the other way around. Happy to pair on some of that so that we align faster.

@LaPeste LaPeste requested a review from nirinchev March 26, 2021 09:29
LaPeste and others added 4 commits March 26, 2021 11:59
* wip

* Supply input and output paths to the action

* Add ncc

* Fix the action metadata

* Tweak the build wrappers command

* Try to simplify configuration passing to bash builds

* Bump down ubuntu version for android

* Try and use ytt for templates

* Remove the `null` from PR

* Try #3

* Try #4

* Try 5

* Try 6

* Try to use pure workflow

* Remove extra brace

* Yet another brace

* cacheKey -> key

* Add the cache condition to any intermediate steps

* Revert files that are unrelated to the workflow change

* More tweaks to the template

* Test building iOS wrappers

* Try to build iOS #2

* Bring back the cmake configuration check in ios and android build scripts

* Try building linux on bare metal

* Use correct ubuntu image

* Try to add Android

* Put matrix under strategy

* Setup NDK env variables

* Add $

* Don't download the ndk

* Added windows to templates

* Try to cache vcpkg

* Trigger uncached build

* Trigger another uncached build

* Another build

* Another uncached run

* Revert dummy changes

* Added UWP to template

* Fixed small detail

* Added saving output

* Always output cacheKey from building wrappers

* Removed TODO comment

* Ac/retrieve multiple caches ga (#2325)

* Added fetching multiple bins

* Store binaries as artifacts

* Store binaries as artifacts - 2

* Store binaries as artifacts - 3

* Store binaries as artifacts - 4

* Store binaries as artifacts - 5

* PR ready for review

Co-authored-by: Andrea Catalini <[email protected]>
@nirinchev nirinchev changed the title Build macOS wrappers on Github Actions Build wrappers on Github Actions Apr 9, 2021
@nirinchev nirinchev merged commit b42cebc into master Apr 9, 2021
@nirinchev nirinchev deleted the ac/build-macos-wrappers-github-actions branch April 9, 2021 23:10
@github-actions github-actions bot locked as resolved and limited conversation to collaborators Mar 15, 2024
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
3 participants