GitHub actions currently only supports YAML as configuration for actions. While YAML is great, GitHub Actions supporting high-level programming languages (Example: Typescript) will enable use cases that cannot be accomplished by YAML alone.
- Modularization / Library Support
- All the IDE benefits. Auto completion, syntax checking, looping structures, code generation, etc. (I can see this working really well with VSCode)
- Far far far (I can not emphasize this point enough), reduction in boilerplate code
- Early detection of configuration errors through local validation
- Establish enterprise scale configuration-as-code frameworks tuned for that enterprise
- and more!
This feature has been proven out in other CI/CD tools with great success, such as Atlassian’s Bamboo Specs (CI/CD with high-level programming languages) as well as AWS CDK (high-level programming languages as infrastructure-as-code. See how AWS CDK compares to AWS CloudFormation, which is written in YAML, as a comparison to see what GitHub Actions could look like).
Thank you for reading this suggestion! Curious on what everyone’s thoughts are?