Generaptor
Generaptor copied to clipboard
GitHub Actions configuration generator
```fsharp let testEnv = [ "DOTNET_NOLOGO", "1" "DOTNET_CLI_TELEMETRY_OPTOUT", "1" "NUGET_PACKAGES", "${{ github.workspace }}/.github/nuget-packages" "PACKAGE_VERSION_BASE", "1.8.21" ] |> Seq.map(fun (k, v) -> setEnv k v) ``` This leads to ```yml env:...
```fsharp step( name = "Cache artifacts", uses = "actions/cache@v4", options = Map.ofList [ "path", "artifacts" "key", $"{platform}.{architecture}." + "${{ hashFiles('.github/cache-key.json') }}" ] ) ``` This leads to ```yml - name:...
We should add validation. For example, this job should be impossible to emit: ```fsharp job "licenses" [ checkout step(name = "Check REUSE compliance", uses = "fsfe/reuse-action@v3") ] ```
Generaptor should be able to reverse-engineer changes in a workflow file: having the set of action versions in the actual file, it should be able to update its script. This...
Sometimes it makes sense to leave licensing comments in the files, but currently it's not supported. We should support that: when updating a file, keep the existing comments, if any.
Add a command `verify` that will check that the current workflow files still correspond to what's configured via the tool.