-
Notifications
You must be signed in to change notification settings - Fork 93
feat: add jobs #688
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
base: main
Are you sure you want to change the base?
feat: add jobs #688
Conversation
@atrauzzi This runs a linter (for now) as part of the build pipeline and failures will stop the build. Would you mind fixing the lint errors locally and pushing a commit with those changes as well so we can run the checks? |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Excellent start - still a bit to go, but it's a good foundation.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Coming along - note about the regexps though
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
More thoughts
- Addresses - dapr#688 (comment) - dapr#688 (comment) Signed-off-by: Alexander Trauzzi <[email protected]>
|
What's this in reference to? |
@WhitWaldo This is the failure from the test run of the previous commit. However, I don't think it sheds much light. I think the interesting failure is in the scheduler's (Testcontainer) log:
I suspect this |
Alright, so a small bit of progress on connectivity between the dapr daemon and the scheduler, but sadly not quite there with things yet. I'm now running into a timeout scenario where it seems like any attempt to use the client. dapr-js-sdk testcontainers jest timeout.txt The code seems to hang when I try to create the job. @WhitWaldo, maybe you can spot something? |
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## main #688 +/- ##
=========================================
Coverage 100.00% 100.00%
=========================================
Files 1 1
Lines 6 6
Branches 1 1
=========================================
Hits 6 6 ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
Signed-off-by: Alexander Trauzzi <[email protected]>
Signed-off-by: Alexander Trauzzi <[email protected]>
Signed-off-by: Alexander Trauzzi <[email protected]>
Signed-off-by: Alexander Trauzzi <[email protected]>
Signed-off-by: Alexander Trauzzi <[email protected]>
Signed-off-by: Alexander Trauzzi <[email protected]>
Removes stale bot + adds me to repo owners for bot actions Signed-off-by: Whit Waldo <[email protected]> Signed-off-by: Alexander Trauzzi <[email protected]>
Signed-off-by: Alexander Trauzzi <[email protected]>
Signed-off-by: Alexander Trauzzi <[email protected]>
Signed-off-by: Alexander Trauzzi <[email protected]>
Signed-off-by: Alexander Trauzzi <[email protected]>
Signed-off-by: Joe Bowbeer <[email protected]> Signed-off-by: Alexander Trauzzi <[email protected]>
Signed-off-by: Alexander Trauzzi <[email protected]>
Signed-off-by: Alexander Trauzzi <[email protected]>
Signed-off-by: Alexander Trauzzi <[email protected]>
Signed-off-by: Alexander Trauzzi <[email protected]>
Signed-off-by: Alexander Trauzzi <[email protected]> # Conflicts: # package-lock.json
Signed-off-by: Alexander Trauzzi <[email protected]>
Signed-off-by: Alexander Trauzzi <[email protected]>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Just want to make sure we've got strong test coverage - reviewed on GitHub, so I can't run a check myself, but if it looks good to you, I'm satisifed.
Also, please remove the gRPC implementations of the Jobs bits. The way I see it, the SDK need only implement one or the other and it's up to the runtime to ensure that there's parity in the APIs. We have no need to expose both and have the developer pick one as that would just be confusing. Rather, you've already got HTTP in place, so let's delete the gRPC side.
I flipped these. I'd prefer to keep gRPC and drop HTTP.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Frankly, I think the SDK should just pick one or the other - if we've got this implemented via HTTP, I don't know we need to have a stub for gRPC (that itself doesn't work) just because as that can lead to developer confusion.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
As before - if this is implemented using HTTP, no need to add a gRPC implementation just because.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think the shape of this has changed in the latest protos - I believe there's an override property now.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'd just generally like to see much better test coverage to prove there are no typos in each of the helper extension implementations.
test/unit/jobs/cron.test.ts
Outdated
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
When putting together each of the regex variations, just do a quick pass to make sure any seemingly edge cases are covered.
@atrauzzi Do you have any interest in getting this over the finish line? |
@WhitWaldo - Yepyep. Sorry, been tight on time in the evenings. |
Signed-off-by: Alexander Trauzzi <[email protected]>
Alright, further to our discussion this evening, let me know what's happening with the protos and which direction you think we should go with the http and grpc stuff. I've fixed up the one thing for producing the sorted list of days of the week based on enum or ints and of course added two tests for it 🙂 If you have some specifics for the other details, let me know, but I think once the grpc stuff is resolved, we're in pretty good shape! |
I'm good with just implementing the HTTP bits (already done) and just leaving gRPC unimplemented. We can call this out in the documentation that this API is currently only supported when using it in an HTTP context and throw an exception that reflects the same. Protos should be updated per the recently merged conversation API, so if you can merge with that, I think this should generally be good to go, right? |
Description
Added initial support for jobs.
Issue reference
Closes: #667
Checklist
Please make sure you've completed the relevant tasks for this PR, out of the following list: