Pulumi.FSharp.Extensions icon indicating copy to clipboard operation
Pulumi.FSharp.Extensions copied to clipboard

The future of this project

Open mvsmal opened this issue 1 year ago • 7 comments

Hi there,

First of all I would like to thank you so much for this amazing project. We have been using the libraries quite heavily in our projects. I'd say that we strongly depend on them nowadays.

Unfortunately, looking at the commits history and the open issues it is obvious the you don't have much time for maintenance. I was wondering what is the future of this project? Are you planning to put effort into it or you are going to abandon it completely?

If my team offers support on maintenance, how should we better do that? Would you have time to review our PRs?

Or maybe you can add me/us as collaborators so we can continue keeping the project up to date? In this case I would highly appreciate if you find time for an introduction call, just to go over the project structure and code style conventions. We don't want to spoil all the hard work you've done. We don't want to fork the project and create duplicates in the Nuget repository, we'd rather contribute to the original version.

Please let me know your thoughts. I'd be happy to discuss any details.

mvsmal avatar Oct 23 '23 15:10 mvsmal

Hi,

thank you, I appreciate my project was helpful. Indeed I have had no time to work on any of my hobby projects, hence this was left few versions behind the Pulumi schema. I'd welcome any PR to keep the project up-to-date.

Maintenance should be fairly easy to keep the version in line with Pulumi as it may just need to bump up the version and kick another build, this could also be automated so no human intervention is required unless there are errors (rare). Happy to jump on a call to show you around the project.

Thank you.

UnoSD avatar Oct 27 '23 14:10 UnoSD

Hi, thanks for the answer. As you have noticed, I've submitted a few PRs already and I am planning to submit more.

As for automation of version upgrades, do you think we can do it with GH Actions? Or do you have some other CI/CD tool in mind? I would be happy to contribute to that as well. But I guess you might also need to spend some time on it. I can't fully implement it myself, obviously.

mvsmal avatar Nov 02 '23 21:11 mvsmal

Hi @mvsmal,

there is already an Azure DevOps pipeline: https://github.com/UnoSD/Pulumi.FSharp.Extensions/blob/master/FAKE.yml

But you will notice that the pipeline is pretty thin as it merely invokes the FAKE script, I wanted to make it as portable as possible and as much F# as possible everywhere; this means that, if you want to create a GH Actions pipeline, it should be a few minutes' work. Happy to merge the PR for GH Actions, however, if you want to add Docker, you just need to create a new pipeline that exposes the PROVIDER env variable "Docker" and that would just work, see here:

https://github.com/UnoSD/Pulumi.FSharp.Extensions/blob/master/build.fsx

let getProvider args =
    match Map.tryFind "PROVIDER" args |>
          Option.bind (function | Argument p -> Some p | _ -> None) |>
          Option.orElse (Environment.environVarOrNone "PROVIDER") |>
          Option.orElse (Environment.environVarOrNone "BUILD_DEFINITIONNAME") with
    | Some "All" -> "*"
    | Some p     -> p
    | _          -> failwith "Missing provider"

UnoSD avatar Nov 03 '23 08:11 UnoSD