-
Notifications
You must be signed in to change notification settings - Fork 1.2k
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
[Recorder] Unified recorder prototyping with storage-queue/data-tables SDKs #15826
[Recorder] Unified recorder prototyping with storage-queue/data-tables SDKs #15826
Conversation
…to harshan/recorder/unified
…to harshan/recorder/unified
…to harshan/recorder/unified
This pull request is protected by Check Enforcer. What is Check Enforcer?Check Enforcer helps ensure all pull requests are covered by at least one check-run (typically an Azure Pipeline). When all check-runs associated with this pull request pass then Check Enforcer itself will pass. Why am I getting this message?You are getting this message because Check Enforcer did not detect any check-runs being associated with this pull request within five minutes. This may indicate that your pull request is not covered by any pipelines and so Check Enforcer is correctly blocking the pull request being merged. What should I do now?If the check-enforcer check-run is not passing and all other check-runs associated with this PR are passing (excluding license-cla) then you could try telling Check Enforcer to evaluate your pull request again. You can do this by adding a comment to this pull request as follows: What if I am onboarding a new service?Often, new services do not have validation pipelines associated with them, in order to bootstrap pipelines for a new service, you can issue the following command as a pull request comment: |
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.
A lot of stuff you're probably already aware of on a first review, mostly nitpicks, couple of things to take a look at. Super excited for this!
const client = BlobServiceClient.fromConnectionString(connString, options); | ||
|
||
// await client.createContainer("harshan-" + `${Math.ceil(Math.random() * 1000) + 1000}`); | ||
await client.createContainer("harshan-1043"); |
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.
Question.
5f4726c
to
62e7e54
Compare
… harshan/recorder/unified
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 added some comments that I think are valuable. Nonetheless, I think this PR is good! Make sure CI passes and do a final re-read, then take a victory lap 👏 🏏
I think we should provide azure-sdk-for-js/sdk/test-utils/perfstress/src/tests.ts Lines 62 to 93 in f931704
@HarshaNalluru: Is this what you mean by "Adopt the design that I added for perf framework with proxy-tool"? |
Yes, @mikeharder. But I also want to provide the users with the recorder object to be able to start and stop or do other operations, I thought I would figure out the design later on. |
… harshan/recorder/unified
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 some minor comments
"prettier": "^1.16.4", | ||
"rimraf": "^3.0.0", | ||
"rollup": "^1.16.3", | ||
"rollup-plugin-shim": "^1.0.0", |
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.
maybe in a follow-up PR, rollup plugins can be removed from dep list when shared config is used.
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.
Adding it to the other list
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.
}); | ||
}; | ||
await client.start(); | ||
expect(client.recordingId).to.eql(recordingId); |
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.
TIL: eql
is also valid
options.httpClient = recorder; | ||
const client = new QueueServiceClient(env.STORAGE_SAS_URL, undefined, options); | ||
await recorder.start(); | ||
await client.createQueue((isNode ? "node-" : "browser-") + "1320"); |
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.
would creating queue with the same name fail if running in Live mode multiple times?
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.
No. Succeeds, doesn't matter.
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.
And the different names here is just to distinguish during the development.
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 meant running node tests in Live mode multiple times, it would not fail even node-1320 queue exists?
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 got the question, it "succeeds" was the answer for that question. 🙂
(Shouldn't have provided unnecessary details. 🤦♂️)
/check-enforcer override |
Issue #15829
Leveraging Proxy Tool
Running the proxy server
Run this command
docker run -p 5000:5000 azsdkengsys.azurecr.io/engsys/ubuntu_testproxy_server:latest
Reference: https://github.com/Azure/azure-sdk-tools/tree/main/tools/test-proxy/Azure.Sdk.Tools.TestProxy#via-docker-image
To use the proxy-tool in your test, pass this option in cli
--test-proxy http://localhost:5000
(Make sure the port is same as what you have used to run thedocker run
command).Running the tests at
test-utils/testing-recorder-new
test-utils/testing-recorder-new
folderrush update && rush build -t .
rushx test:node
rushx test:browser
Very Next Steps