https://github.com/elegantchaos/actionbuilderplugin
Swift Package Manager plugin which runs ActionBuilder to create a Github Actions workflow for a swift package.
https://github.com/elegantchaos/actionbuilderplugin
ci githubactions swift swift-package-manager
Last synced: 11 months ago
JSON representation
Swift Package Manager plugin which runs ActionBuilder to create a Github Actions workflow for a swift package.
- Host: GitHub
- URL: https://github.com/elegantchaos/actionbuilderplugin
- Owner: elegantchaos
- License: mit
- Created: 2022-07-04T16:53:43.000Z (over 3 years ago)
- Default Branch: main
- Last Pushed: 2024-09-02T14:25:15.000Z (over 1 year ago)
- Last Synced: 2025-04-13T07:56:45.972Z (11 months ago)
- Topics: ci, githubactions, swift, swift-package-manager
- Language: Swift
- Homepage:
- Size: 27.3 KB
- Stars: 4
- Watchers: 1
- Forks: 0
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE.md
Awesome Lists containing this project
README
[comment]: <> (Header Generated by ActionStatus 2.0.6 - 494)
[![Test results][tests shield]][actions] [![Latest release][release shield]][releases] [![swift 5.6 shield]][swift] ![Platforms: macOS][platforms shield]
[release shield]: https://img.shields.io/github/v/release/elegantchaos/ActionBuilderPlugin
[platforms shield]: https://img.shields.io/badge/platforms-macOS-lightgrey.svg?style=flat "macOS"
[tests shield]: https://github.com/elegantchaos/ActionBuilderPlugin/workflows/Tests/badge.svg
[swift 5.6 shield]: https://img.shields.io/badge/swift-5.6-F05138.svg "Swift 5.6"
[swift]: https://swift.org
[releases]: https://github.com/elegantchaos/ActionBuilderPlugin/releases
[actions]: https://github.com/elegantchaos/ActionBuilderPlugin/actions
[comment]: <> (End of ActionStatus Header)
# ActionBuilderPlugin
A Swift Package Manager command which builds a Github Actions workflow for the current package.
By default the workflow file will be generated at `.github/workflows/Tests.yml`, and be based on details obtained by examining the `Package.swift` file -- although this
can be configured.
See [ActionBuilderCore](https://github.com/elegantchaos/ActionBuilderCore) for full details on what the workflow contains and how to alter it.
## Usage
Add this repo to your package dependencies:
```Swift
dependencies: [
.package(url: "https://github.com/elegantchaos/ActionBuilderPlugin.git", from: "1.0.2"),
/* other dependencies here... */
],
```
Invoke the tool from the command line:
`swift package plugin --allow-writing-to-package-directory generate-workflow`
## Configuration
By default, the plugin attempts to guess exactly what the workflow should do, based on the contents of the `Package.swift` file.
If you want more control though, you can add a `.actionbuilder.json` file at the root of the package. This lets you specify a number of options when generating the workflow file.
See [ActionBuilderCore](https://github.com/elegantchaos/ActionBuilderCore#configuration) for full details.
If you pass the `--create-config` flag to the plugin itself, it will make a new empty config file for you.