-
Notifications
You must be signed in to change notification settings - Fork 1.3k
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
SFTP protocol support #1667
Comments
Thanks for making this issue! You've hit a lot of nails on the head - we basically want to do most of the things you propose! 🎉 There is a lot of work to be done before that though, which can be roughly split like this:
As I said, we plan to have |
Thanks for the detailed response! It sounds really great. It's really great you moved away from Go plugins. They are just terrible for a lot of reasons. 😞 |
Probably worth mentioning that we've since released https://github.com/k6io/xk6 and you can use it for pretty much any protocol you want. Here's a short tutorial on how to write a k6 extension: https://k6.io/blog/extending-k6-with-xk6 I'll leave this issue open to gauge interest in an sftp support in the k6 core, though at this point such a thing doesn't seem very likely. |
As the previous comment mentions, a solution for creating protocol extensions is available. However, considering the low amount of reactions, the k6 team doesn't plan to implement it directly. If anyone is interested in adding SFTP as a new supported protocol should start creating an extension. From there, we may reconsider our plans based on the impact. |
Feature Description
This is probably a very long shot, but I thought I would get my use case out there anyway, maybe it's interesting for someone.
I'm building a custom SFTP server that stores files in S3 that I need to load test somehow.
The subject of the test is to asses the upload performance (with local and S3 filesystems), identify and potential improvements and monitor the performance over time (with automated tests).
k6 is obviously not capable of doing that at the moment (or is it?), but after looking at loads of load testing tools (pun not intended), k6 is the one that I would preferably use for all my needs. Most of the other tools are not extensible at all, usually supporting only HTTP (sadly 1.0/1.1 for most of the time). "Use the best tool for the job" is the saying, but I usually prefer if it's one tool and not a dozen for the different load testing scenarios.
So ideally, I'd implement the "sftp" protocol myself (and probably contribute it back too), except it seems to be a lot of work which I can't invest in k6 at the moment. 😞
So my suggestion would be: make it easier to implement new protocols in k6 (if at all possible). Some documentation, dummy examples would probably help a lot. Whether the core should have support for protocols like sftp or they should be some sort of extensions is an entirely different question.
As I mentioned at the beginning, this might not be valuable at all for the majority of users, so it's a long shot, I don't really expect any positive answer for adding support to the core, but some pointers to adding a new protocol would be nice, maybe I can find some time to implement sftp.
Thanks!
The text was updated successfully, but these errors were encountered: