Skip to content
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

Add action typing #160

Open
krzema12 opened this issue Feb 12, 2023 · 0 comments
Open

Add action typing #160

krzema12 opened this issue Feb 12, 2023 · 0 comments

Comments

@krzema12
Copy link

Hi @domenkozar!

I'd like to ask you to add a piece of documentation. However, it won't be yet another piece of Markdown. When working with various actions, I discovered that it's challenging to know what type of data is needed for the inputs of an action, the same for outputs. Every action has its own custom way of documenting it, if it documents it at all, which makes it challenging for humans and automation to work with various actions. I figured there must be a way to address it.

I looked for an inspiration in other ecosystems where types were added later, like TypeScript adding types for JavaScript, or type hints in the Python world. I decided to create github-actions-typing which aspires to be the standardized way of typing your action's API. Onboarding is as easy as adding an extra action-types.yml file to your repository root, and (optionally, although highly recommended) adding a simple GitHub workflow that validates this new file. It has no negative effects on current action consumers, they continue to use the action as if the file wasn't there. An example project that uses the typings in its automation is a DSL for defining GitHub workflows in Kotlin in a type-safe way: github-workflows-kt.

In this feature request, I would like to ask you if you're open to introducing such typings in your action. You wouldn't be first - there're already other actions using it, like e.g.: microsoft/setup-msbuild, Vampire/setup-wsl, ReactiveCircus/android-emulator-runner (full list of actions using the validation workflow is here).
If your answer is "yes", feel free to either add it yourself, or let me know - me or some of the other contributors would be happy to post a PR. We're also open to any kind of questions and feedback.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant