swagger-api / swagger-api/swagger-codegen
[All] Build commands for all supported langs
Nobody has claimed this yet.
- Dominant language
- Mustache
- Stars
- 17.8k
- Forks
- 6k
- PR merge metrics
- No merged PRs in 30d
Description
Description
I'm attempting to improve the user experience with building the packages for all langs that swagger-codegen supports. At the moment, each user of the generated code would be left with the task to figure out how to build the package, multiply this with the number of swagger-codegen users, this becomes a repeated effort that can be simplified.
I have a node.js CLI tool that contains the commands (currently only on few languages) needed to build the packages, e.g. https://github.com/cliffano/swaggy-c/blob/master/conf/tasks.yml#L496
In order to complete the commands list, I need to find out the commands to perform the following tasks for each of the generated langs?
- resolve dependencies
- run unit tests
- build the package
- install the package locally
- generate code documentation
- publish the package to an artifact repository
Is there a documentation or build script that lists the commands? If not, should I be asking the maintainers of each template/lang?
Also, what do you think about adding a Makefile that contains the targets to perform the above tasks? for each language. At least that could be self contained within the generated code.
I understand that a Makefile might not be OS-neutral enough, or perhaps it's not necessary within a given language. Please let me know what you think.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start with the existing commands in conf/tasks.yml and compare them with the generated language templates supported by swagger-codegen. Determine whether each language has documented commands for dependency resolution, tests, builds, local installation, documentation, and publishing. Done means a decided, maintainable approach for covering those tasks, including whether a generated Makefile is appropriate.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- node.js
- Domain
- build-system
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100