Releases: typesafegithub/github-workflows-kt
Releases · typesafegithub/github-workflows-kt
0.13.0
⭐ Features
Wrappers
- add ad-m/github-push-action@v0.6.0
- add anmol098/waka-readme-stats@v4
- add anothrNick/github-tag-action@v1.38.0
- add appleboy/scp-action@v0.1.2
- add appleboy/ssh-action@v0.1.4
- add appleboy/telegram-action@v0.1.1
- add aws-actions/amazon-ecr-login@v1
- add aws-actions/amazon-ecs-deploy-task-definition@v1
- add aws-actions/amazon-ecs-render-task-definition@v1
- add aws-actions/configure-aws-credentials@v1
- add bahmutov/npm-install@v1.8.7
- add cachix/install-nix-action@v17
- add calibreapp/image-actions@v1.1.0
- add codecov/codecov-action@v3
- add actions/cache@v3, deprecate v2
- add actions/download-artifact@v3, deprecate v2
- add actions/setup-java@v3, deprecate v2
- add actions/setup-node@v3, deprecate v2
- add actions/setup-python@v3, deprecate v2
- add actions/upload-artifact@v3, deprecate v2
- add EndBug/add-and-commit@v9, deprecate v8
- add 'force' input for JamesIves/github-pages-deploy-action@v4 (195cfbb)
- add 'export_environment_variables' input for google-github-actions/auth@v0 (33a5085)
Docs
- add a list of supported actions (462abd1, 03ff12e) (together with @jmfayard). You can see it here: https://krzema12.github.io/github-actions-kotlin-dsl/supported-actions/
Wrapper generator
🛠️ Fixes
Wrapper generator
💣 Breaking changes
Full Changelog: v0.12.0...v0.13.0
0.12.0
⭐ Features
- [#159] add script generator (thanks @jmfayard!)
- [#145] make step name optional
- add all remaining triggers (thanks @jmfayard!)
- [#135] configure nightly builds (jitpack) (thanks @NikkyAI!)
🛠️ Fixes
- [#153] docs: fix formatting of 'Getting started' (thanks @polarene!)
- [#152] use Job.name as ID and add Job.name (thanks @NikkyAI!)
💣 Breaking changes
- [#152] use Job.name as ID and add Job.name (1fbf7fb) - your scripts will stop compiling. All you need to do is rename
nametoidfor jobs
Full Changelog: v0.11.0...v0.12.0
0.11.0
⭐ Features
- Publish documentation, available at https://krzema12.github.io/github-actions-kotlin-dsl/
- Allow setting arbitrary workflow/job/step attribute (89047e7) (thanks @jmfayard!)
- Add
CustomActionfor adding untyped wrapper (e050db4) (thanks @jmfayard!) - Add Job.timeoutMinutes (c2c6f38) (thanks @NikkyAI!)
- Don't install Kotlin for consistency check (afdb0b9)
New/changed wrappers:
- add google-github-actions/auth@v0 (thanks @NikkyAI!)
- add google-github-actions/setup-gcloud@v0 (thanks @NikkyAI!)
- update docker/build-push-action@v2
Wrapper generator:
- Add
@Deprecatedto wrappers for actions of older versions (e312b6c) (thanks @jmfayard!) - Allow passing custom inputs (a2fc180) (thanks @jmfayard!)
- Allow passing custom versions (3a8f2c4)
🛠️ Fixes
- validate job name when creating Job (ef5022e)
💣 Breaking changes
None.
Full Changelog: v0.10.0...v0.11.0
0.10.0
⭐ Features
- Add git-based consistency check for writeToFile() (59c92a5) (thanks @NikkyAI!)
- Use actions/checkout@v3 in consistency check (8c98710)
New wrappers:
- actions/checkout@v3
- 10up/action-wordpress-plugin-deploy@v2.0.0 (thanks @jmfayard!)
- 8398a7/action-slack@v3 (thanks @jmfayard!)
- Azure/docker-login@v1 (thanks @jmfayard!)
- Azure/login@v1 (thanks @jmfayard!)
- Azure/webapps-deploy@v2 (thanks @jmfayard!)
- Borales/actions-yarn@v2.3.0 (thanks @jmfayard!)
- GoogleCloudPlatform/github-actions@v0 (thanks @jmfayard!)
- JamesIves/github-pages-deploy-action@v4 (thanks @jmfayard!)
- JasonEtco/create-an-issue@v2 (thanks @jmfayard!)
- SamKirkland/FTP-Deploy-Action@v4.3.0 (thanks @jmfayard!)
- actions/create-release@v1 (thanks @jmfayard!)
- actions/first-interaction@v1 (thanks @jmfayard!)
- actions/github-script@v6 (thanks @jmfayard!)
- actions/labeler@v4 (thanks @jmfayard!)
- actions/setup-dotnet@v2 (thanks @jmfayard!)
- actions/setup-go@v3 (thanks @jmfayard!)
- actions/stale@v5 (thanks @jmfayard!)
- actions-rs/audit-check@v1 (thanks @jmfayard!)
- actions-rs/cargo@v1 (thanks @jmfayard!)
- actions-rs/clippy-check@v1 (thanks @jmfayard!)
- actions-rs/toolchain@v1 (thanks @jmfayard!)
Wrapper generator:
- Make list typing work with more than strings + allow customizing enum names (ffd8e30) (thanks @jmfayard!)
🛠️ Fixes
None.
💣 Breaking changes
- regarding "Add git-based consistency check for writeToFile() (59c92a5)", it will now produce the consistency check for
writeToFile(). Depending on your file layout, you may need to adjust your workflows, either by making use of the new git-based consistency check, or opting out of the consistency check by passingaddConsistencyCheck = false
Full Changelog: v0.9.0...v0.10.0
0.9.0
⭐ Features
- [#56] Add unique step ID
- [#56] Add API to use step outputs (see usage in 0009280)
- [#56] Add a helper for defining GitHub expressions (4648000)
- Add
@Deprecatedannotations for deprecated action inputs (f9c43c1) (thanks @jmfayard!) - Add PullRequest.types (0908f39) (thanks @jmfayard!)
- [#1] Fail if no jobs, triggers or steps are defined
- [#1] Fail if duplicate job names are used
- [#1] Fail if mutually exclusive properties are defined in Push, PullRequest, PullRequestTarget
- Add wrappers for actions:
- actions/cache@v2
- docker/login-action@v1
- docker/setup-buildx-action@v1
- docker/build-push-action@v2
- nobrayner/discord-webhook@v1
🛠️ Fixes
- Unify order of arguments in Push trigger (2cb4318)
💣 Breaking changes
- Unify order of arguments in Push trigger (2cb4318) - it's a breaking change only if you use positional arguments, not named arguments. It's generally recommended to use named arguments for the sake of better readability
0.8.0
⭐ Features
- Add to triggers: paths paths_ignore pull_request_target (b3c28a5) (thanks @jmfayard!)
- [#64] Implement WorkflowDispatch inputs (thanks @jmfayard!)
- Validate job name against illegal characters (5b51ff8) (thanks @jmfayard!)
- Generate wrapper for AkhileshNS/heroku-deploy@v3 (840ef9e) (thanks @jmfayard!)
- Generate wrapper for actions/setup-python@v2 (3e172ea) (thanks @jmfayard!)
🛠️ Fixes
- Allow specifying any string for "push" input in EndBug/add-and-commit@v2 (6e6f9a1) (thanks @jmfayard!)
💣 Breaking changes
- the bugfix for "Allow specifying any string for "push" input in EndBug/add-and-commit@v2", the type of
pushfield is nowString
0.7.0
⭐ Features
- #71: Generate action wrappers code
From now on, you won't find hand-crafted action wrappers in the library - they are now generated based on action metadata file (action.yml). It makes adding new wrappers much simpler and boilerplate-free. From users' perspective, it provides KDoc documentation for all inputs, as provided by actions' authors. It also unlocks great possibilities, as e.g. changes to actions API will be easy to apply in batch to all wrappers (e. g. action outputs handling). Kudos to @jmfayard for supporting this effort, especially for preparing a PoC and showing me how to use kotlinpoet (Kotlin generation library) :) - Add wrapper for actions/setup-node@v2
🛠️ Fixes
- #70: Incorrect YAML when value starts with
*,[or!
💣 Breaking changes
- #71: Because the code is now generated, several breaking changes occurred. From what I remember when working on code generation:
CreateBranchV2is nowActionCreateBranchV2- the name is inferred straight from the action name (4a2f2ea)- in
CheckoutV2,FetchDepth's concrete value is now passed withValueclass instead ofQuantity(a8bcdf1) - minor inconvenience: the order of arguments rendered to YAML for various actions may be different (e.g. for actions/setup-java@v2: 9e4b554)
0.6.1
0.6.0
⭐ Features
- #53: Implement filters (branches, tags) for
pushandpull_requesttriggers - #55: Implement environment variables for workflows, jobs and steps
- #57: Allow conditions for jobs
- 594ce16: Add type-safe Cron() declaration (thanks @jmfayard!)
🛠️ Fixes
- #52: Fix rendering of multiline action arguments
💣 Breaking changes
- #53:
PullRequest,PushandWorkflowDispatchare now classes, not objects. It means that using them as triggers requires syntax e.g.PullRequest(). It's done to be able to add parameters to them, e.g. filters, like mentioned in the features section. The triggers are now also intriggerspackage, not an inner class ofTrigger(change e.g....Trigger.Pushto...triggers.Pushin your imports)
0.5.0
⭐ Features
- #43: Add wrappers for madhead/* actions. Thanks for contributing @madhead!
- #37: Add wrapper for actions/setup-java
- #40: Add wrapper for gradle-update/update-gradle-wrapper-action
- #39: Add wrapper for gradle/wrapper-validation-action
- #38: Add wrapper for gradle/gradle-build-action
- #42: Add pull request trigger
- #41: Add schedule trigger
🛠️ Fixes
- #36: Fix multiline commands with leading pipes
- #50: Don't overwrite job dependencies with consistency job
- #47: Add missing parameters for actions/CheckoutV2
💣 Breaking changes
- #48: Custom actions API: change constructor to accept owner, name and version as separate strings
- actions/UploadArtifactV2 and actions/DownloadArtifactV2: rename
artifactparameter toname(b23f671, 8f12c7f) - actions/CheckoutV2: Put FetchDepth type inside the wrapper class (b152a2b). It's enough to adjust the import