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

Move build workflow from CircleCI to GitHub Actions #1974

Merged
merged 9 commits into from
May 2, 2022

Conversation

rochdev
Copy link
Member

@rochdev rochdev commented Apr 4, 2022

What does this PR do?

Move build workflow from CircleCI to GitHub Actions.

Motivation

There are several advantages of switching to GitHub Actions for this type of project:

  • Built-in action to easily and quickly switch Node version within a job. This means we can significantly reduce the parallelism of the jobs and use larger machines which are less likely to fail. It also means that we are back under the Codecov quota of 100 reports per commit, so we no longer need to merge reports manually.
  • Built-in action to test ARM with Qemu. This is difficult in CircleCI since the type of runner for ARM is completely different.
  • Reusable actions that can be pulled from other repositories. CircleCI orbs have to be published to a registry.
  • Reusable workflows and JavaScript actions, both of which don't have an equivalent in CircleCI.
  • Integrated directly in GitHub.
  • Much larger ecosystem at this point.
  • Windows and Mac machines start a lot faster.
  • To my knowledge everyone on the team wants this change.

This PR focused only on the build workflow which is now split into separate workflows:

  • Project: This is for any jobs for the entire projects, for example static analysis or integration tests.
  • Tracing: This is for any jobs related only to tracing. Right now it was translated directly from CircleCI so it also includes profiling which we should move out later.
  • Plugins: This is for our integrations. We could also move the jobs under Tracing but for now I felt like it was easier to use to group them in a single workflow.
  • Core: This is for tests for common components that can be used by any product.

Upstream tests and benchmarks will be done in separate PRs.

Additional Notes

  • Cucumber is also failing on master as there was a new version released which breaks.
  • I had to bump pg minimum version to make it pass, but this shouldn't be an issue since older versions only support up to Node 4 which we don't support .

@rochdev rochdev force-pushed the github-actions-plugins branch from 8cc5e48 to 0ef0b44 Compare April 7, 2022 00:21
@codecov
Copy link

codecov bot commented Apr 7, 2022

Codecov Report

Merging #1974 (7ab565e) into master (a178d84) will increase coverage by 12.21%.
The diff coverage is 100.00%.

@@             Coverage Diff             @@
##           master    #1974       +/-   ##
===========================================
+ Coverage   80.92%   93.13%   +12.21%     
===========================================
  Files         200      195        -5     
  Lines        8195     8044      -151     
===========================================
+ Hits         6632     7492      +860     
+ Misses       1563      552     -1011     
Impacted Files Coverage Δ
packages/datadog-instrumentations/src/pg.js 87.80% <100.00%> (+68.29%) ⬆️
packages/datadog-plugin-winston/src/index.js
...kages/datadog-instrumentations/src/helpers/hook.js
packages/datadog-instrumentations/src/winston.js
...es/datadog-instrumentations/src/helpers/promise.js
packages/dd-trace/src/profiling/index.js
...datadog-instrumentations/src/helpers/instrument.js
packages/datadog-plugin-kafkajs/src/index.js
packages/datadog-plugin-limitd-client/src/index.js 100.00% <0.00%> (ø)
packages/datadog-plugin-pino/src/index.js 100.00% <0.00%> (ø)
... and 24 more

📣 Codecov can now indicate which changes are the most critical in Pull Requests. Learn more

@rochdev rochdev changed the title trying github actions for tests Move build workflow from CircleCI to GitHub Actions Apr 7, 2022
@rochdev rochdev force-pushed the github-actions-plugins branch from a412a53 to 67de4fa Compare April 7, 2022 01:09
@rochdev rochdev marked this pull request as ready for review April 7, 2022 01:10
@rochdev rochdev requested a review from a team as a code owner April 7, 2022 01:10
@rochdev rochdev merged commit 3d884c8 into master May 2, 2022
@rochdev rochdev deleted the github-actions-plugins branch May 2, 2022 17:55
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.

3 participants