Comments (11)
@ruflin Hard to say. It has happened before, but it's not that often. Your solution could work. I guess I just have to get comfortable with potentially broken code sneaking into master, but in many cases I'm able to know exactly when instrumented modules need to be tested. Maybe we could even narrow it down to say only test the pg
module or something.
from apm-agent-nodejs.
Change how often the dependency tests are run or prioritize them lower somehow
I'd love input on how to do this better. The reason why we just do it every time right now is because a change in the agent can break support for an old version of one of the modules we instrument. And since we don't control which versions of say mysql that users are running, we can't just only test against the latest version. Instead we have to also test that we still work as expected with old versions. But there might be a smarter way to run the tests, so I'm open to suggestions 😃
from apm-agent-nodejs.
@watson How often did you break these in the past and how likely are they to break? Reason I'm asking because my suggestion would be to run them only after a merge into master if breaking it is pretty rare but allow a command like jenkins, test dependencies
when you want to check it also on a PR directly. We do this in beats for the packaging for example. Like this the PR's get green much faster as breaking packaging is unlikely but still can happen. In case we change code that we know is critical for pacakging, we comment jenkins, package it
to see if the packaging still works before merged into master. If we don't do it and a pacakging is broken after merging into master, we get a notification later on that we did.
from apm-agent-nodejs.
Sounds like we could try this and see where it breaks? :-)
from apm-agent-nodejs.
@ruflin let's do that
from apm-agent-nodejs.
@simitt would you be able to take this on?
from apm-agent-nodejs.
I first have to figure out the current issues with the webhooks. As soon as the general setup is fixed I can take this over.
from apm-agent-nodejs.
Just thought I'd do a quick status update on our progress with the Jenkins integration:
These tasks are all implemented:
- Run basic test suite on all new PR's and when merging to master
- Email Notifications on failure
- Only run dependency tests once a day and not as part of PR tests
These tasks are still not implemented:
- Add GitHub comment command to trigger dependency tests in a PR (just as with
jenkins test this please
) - Slack notifications on every build
from apm-agent-nodejs.
thanks @watson.
There are discussions going on about how to provide the possibility to trigger jenkins.
The slack notification is simply not implemented yet.
from apm-agent-nodejs.
I'd say the slack notifications are pretty low priority anyway, so I'm fine with that 👍
from apm-agent-nodejs.
Since we got the ability to trigger jenkins builds for tav tests, I'll go ahead and close this issue
from apm-agent-nodejs.
Related Issues (20)
- ESM instrumentation/hooking fails with Node.js v18.19.0 HOT 3
- update-tav-versions.js needs update for tav@5 syntax
- update Lambda guide to point out ELASTIC_APM_API_KEY for Elastic serverless usage
- Elastic APM Node package 3.50.0 and above causing issues with file upload HOT 1
- Agent environment not set correctly from NODE_ENV in 4.3.0 HOT 3
- avoid instrumenting some Node.js apps when `NODE_OPTIONS=-r elastic-apm-node/start` is being used
- "pg/knex.test.js" fails with Node.js v18.19.0 HOT 2
- Failed to start typescript app with APM agent. HOT 1
- elastic-apm-node not working for mongoose 8.0.3 and mongodb 6.2.0 HOT 1
- support `node --enable-source-maps` usage with our custom `Error.prepareStackTrace` usage
- fix <database>.$cmd.getMore span on mongodb
- Memory usage reported incorrectly in k8s pod HOT 3
- Support of Next js ^14 HOT 2
- `_signalLambdaEnd` request to Lambda extension should set `Content-Type`
- Questions re ESM support for MikroOrm / knex, Node v20, & OIDC HOT 3
- Unhandled ERR_INVALID_URL causing node.js service to exit HOT 1
- question: applying user.id when using opentelemetry api with Elastic HOT 2
- remove opentracing doc
- issue labeler workflow failing HOT 7
- Support mtls connection
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from apm-agent-nodejs.