Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Can GitHub Actions take a fork of this repository? #13

Open
ethomson opened this issue Nov 3, 2019 · 8 comments
Open

Can GitHub Actions take a fork of this repository? #13

ethomson opened this issue Nov 3, 2019 · 8 comments
Labels
question Further information is requested

Comments

@ethomson
Copy link

ethomson commented Nov 3, 2019

Hi @mihails-strasuns! The GitHub Actions team is really excited about this action, and it's a great example of well-made action that adds tools to the runners to help support the ecosystem.

Someone's created a new starter workflow for DLang - actions/starter-workflows#74. When someone starts creating a new workflow, and we detect that the language in their repository is DLang, we'd like to suggest this workflow, which uses this action.

However we don't want to reference actions in starter workflows that aren't living in https://github.com/actions. (This is to ensure that we reduce the risk on users.)

So what we'd like to do is take a fork of this repository as https://github.com/actions/setup-dlang. This will let us reference this action in the DLang starter workflow.

I wanted to check in before we did this to make sure that you were okay with this plan. We think that this will help DLang users with GitHub Actions.

Thanks!

@mihails-strasuns
Copy link
Collaborator

Hello! I actually wouldn't mind transferring the main repo to the actions organization if you are interested in it (assuming you provide access for me and @WebFreak001 as maintainers). But forking is of course also fine.

@WebFreak001
Copy link
Member

WebFreak001 commented Nov 3, 2019

I think both options would be good.

There just came up an issue at #6 though that ldc-master might randomly break so we should probably fix this asap. I'm looking into it right now but otherwise I think forking the current status would be stable enough too. (edit: still trying to reproduce it but it seems either very rare or only happening on special ocassions like possibly on new commits?)

@mihails-strasuns
Copy link
Collaborator

@ethomson have you made a decision about this?

@ethomson
Copy link
Author

Sorry for the delay, things are a bit hectic getting ready for GitHub Universe.

This is the first time we've done something like this (but I hope not the last), so we don't really have a smooth process quite yet.

So here's the wrinkle: for various security reasons, we lock down the people that can contribute to repos within the GitHub Actions organization. Only a very few people - all GitHub employees - can act within the repository directly. So we couldn't move setup-dlang and make you owners, to comply with the GitHub security rules.

It seems like it would be really unfortunate for you to have to work that way, sending pull requests to the actions/setup-dlang repo and waiting for one of us to review them and merge them.

My proposal would be that we:

  1. Fork this repo into actions/setup-dlang.
  2. You continue working here in this repo like you normally do
  3. Whenever you want to do a release, send a pull request to the actions/setup-dlang org with the updates and we'll merge that and update the tags, etc.

This means that users will generally point to actions/setup-dlang@v1 (or whatever version) for stable releases. But they could opt-in to mihails-strasuns/setup-dlang@master for the bleeding edge.

Does this seem like a reasonable plan? Again this is the first time we've done this so I'm very happy to take feedback and / or iterate on a process. I want to make sure that this is low-friction for you and for the end-users, while ensuring that we keep the actions ecosystem as secure as possible.

@mihails-strasuns
Copy link
Collaborator

Pretty much only concern I have is about delays in publishing bug fix releases. Between finding time to implement the fix and waiting for it to be reviewed and merged by Github developers it can end up being a long period of CI not working for projects using this action (using master is an option of course, but naturally less appealing).

I don't have a hard opinion about it but maybe it will be more robust to maintain your fork as simply a mirror? So that stuff gets released here first and if everything looks ok, you pull the tag and re-release it under your fork (I can create issues to notify about new releases). That way whoever prefers "blessed" source can use actions/setup-dlang and for quicker updates use mihails-stasuns/setup-dlang.

@mihails-strasuns mihails-strasuns added the question Further information is requested label Nov 14, 2019
@Geod24
Copy link
Member

Geod24 commented Feb 11, 2020

Ping @ethomson , just curious if Github is still interested in this, and if you happen to have experienced with similar actions on other repositories in the meantime.
We've been using this action since mid-October and it has been very reliable for stable release.

@ethomson
Copy link
Author

Thanks for the ping. I’m working on changing the way that we handle starter workflows - I hope to have more information for you 🔜

@Geod24
Copy link
Member

Geod24 commented Apr 16, 2020

@ethomson : I know things are crazy right now and you probably have a lot on your plate, but wanted to know if there was any news regarding this issue ? We would really appreciate any support to make Dlang user's life easier.

Note that the D language foundation is already using this action as part of its CI pipeline on all three platforms (here and here), and so are my projects, and I haven't had a single issue related to this actions this year.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
question Further information is requested
Projects
None yet
Development

No branches or pull requests

4 participants