Hi everyone,
Almost a year ago, Ernesto Castelloti (@ErnyTech) submitted a PR for Github's "starter-workflow" to add support for D out of the box (https://github.com/actions/starter-workflows/pull/74). It was in a grey area for a while, as Github was trying to come up with a policy for external actions. I ended up picking up the project, after working with actions extensively for my own projects and the dlang org, and my PR was finally merged yesterday (https://github.com/actions/starter-workflows/pull/546).

Starter workflow are suggested to you when you go to the `Actions` tab of a Github repository, or when you first make one. They are templates you can use to easily set-up a CI. Thanks to the work of Mihails Strasuns (@Dicebot) we have an action to install the compiler on all three platforms (https://github.com/dlang-community/setup-dlang), which this workflow use.

This is how it looks:
https://pbs.twimg.com/media/Ef58CrdU0AA2R7W?format=jpg&name=4096x4096

Using actions have several benefits over Travis:
- Very easy to set up cross platform (Linux, Mac, Windows);
- Usually faster machines;
- Better integrated with Github;

One major downside is that you can't re-triggger a single matrix row in a workflow, hence if your CI is flakey, you're going to have a bad time.

Another great thing that is easy to setup with actions is automatically upload documentation. You can see an example here: https://github.com/bpfkorea/agora/blob/08a628ab8e7e38738a88f4c72dc0b42d43da185c/.github/workflows/main.yml#L125-L187 I hope to extract it to an action at some point so anyone can set it up with a single click.

Reply via email to