Open Toltar opened 4 years ago
I think that's a great idea! If you're able to submit a PR, I'd be happy to review it.
@JamesMessinger Great! I might have some questions along the way. So I will ping you here if I have any if that is alright.
That sounds good. Looking forward to it!
@Toltar In your PR please, try to do one more thing.
Run swagger for a folder and validate all swagger files in that folder. I know there is a pre-commit tool for that but I want this feature in swagger-cli. I will be happy to help.
@JamesMessinger If my requirement is a completely different feature from what @Toltar is asking for. I would love to make one different PR that completes my requirements
@rahulbreezo - I like your idea as well. And if @Toltar feels like adding that feature to the PR as well, then I'm all for it. Or it could be done as a separate PR. Either way.
@Toltar Please let me know, are you going to add that feature in your PR or I need to create a different PR for that?
@rahulbreezo I like your suggestion. Might need to analyze how the code works first. I'm sure we both can work something out. So far, I see that we need to possibly do something on this line where we can get an array of file paths instead of a single file: https://github.com/APIDevTools/swagger-cli/blob/master/bin/swagger-cli.js#L14
And also creating a function that loops through the files and call this: https://github.com/APIDevTools/swagger-cli/blob/master/bin/swagger-cli.js#L162
Or simply modify the bundle file to accept an array of filenames/paths.
For a directory, we would have to somehow figure that out for it to know that it is a directory and that it needs to recursively look through said directory for the files. But with my feature request, I will have to do the same except, the specific file paths are known in this case. But good that you brought this up @rahulbreezo so I can think about your feature as well.
I suggest we focus on building the thing where it will loop through a set of files. I can already foresee creating an isolated function that is given an array of file paths, which is agnostic to where they come from.
If @rahulbreezo, you could build the part where it can get me an array of filepaths/files from a directory so that we can hook into this one function I am imagining that would be great. We can possibly do this in around ~3ish small PRs.
@Toltar Hi, that rahulbreezo is my work account created from work email.
ok, I agree with you using a path array of files is a good idea.
Getting file paths from a directory should be easy using fs
module, but folder can contain other than swagger files as well.
So I think we can do the same as pre-commit
tool does (https://www.npmjs.com/package/swagger-cli). Only the files matching a certain pattern should go through the validator like this pattern .*swagger.*\.(json|yaml|yml)
.
is it okay? if yes then I will start writing function for this and then create a small PR for this.
Hi, currently the validate command can only validate one file. I currently work on a project that has multiple files I want to validate all of them. I could create a bash script that runs this command multiple times, but I think something like this would be awesome:
Not sure if this is feasible for the project, so feel free to give me feedback. I am willing to make a pull request to implement this.