Actions not triggered on release

Hi folks, I’d appreciate any hints on what I’m missing.

I have a workflow that is triggered by three events:

on:
  pull_request:
  push:
    branches:
      - master
  release:
    types:
      - created

Pull request simply checks that PR is passing tests.

Any push to master creates and uploads nightly builds.

The release creates and uploads stable builds.

I tested all the actions separately and they worked. I can also confirm that the PR + master works great.

However, the release builds are not triggered at the moment.

So the questions are:

 - what I’m missing with the setup?

 - how do I debug such issues?

Here is one of the workflows, in case it helps:

https://github.com/mull-project/mull/blob/master/.github/workflows/ci-ubuntu-18.yml

Hi @alexdenisov ,

Thank you for being here! I forked your sample repo and create a new release, release event is successfully triggered.

Releasetrigger.png

Could you please confirm if it still reproduces for you? Please also notice below points:

1. The release event is not triggered for draft releases, make sure you click the ‘publish release’ button for release.

  1. If ‘release’ event is defined on ‘dev’ branch yaml. When you create the release, please notice to select the target branch manually.

Thanks.

1 Like

Hi, thanks for the response.

I did another try and it didn’t help: the actions are still not running.

I think I’ll just try to move to the on-push-tags as a release trigger instead of relying on the release event. I hope that’ll work.

Cheers,

Alex.

Hi @alexdenisov ,

Thanks for your reply! It’s strange that release event is not working for you. As you can trigger them seperately, could you please remove ‘push’ and ‘pull_request’, only leave release event for a double check? If it works then, you can add back the other events to identify which code caused the problem. If it still doesn’t work, please double check in another repo for release event, share a sample repo will be quite helpful for further investigation.

Of course you can use on-push-tags to monitor the tags instead of release. 

Note: Please notice you create the release on ‘target’ branch which contains the release event in the yaml file.(fixed in my first post)

Please let me know if you have any progress, thanks!

>  Note: Please notice you create the release on ‘target’ branch which contains the release event in the yaml file.(fixed in my first post)

Could you please elaborate? I do not set any branches there, so I do expect it just to pick up the release event.

Hi @alexdenisov ,

If your ‘release’ event workflow yaml file exists on ‘prod’ branch, when you create/publish the release, please select ‘prod’ branch manually. Screenshot as below, otherwise the event won’t be triggered.

releasebranc.png

Besides, what about removing all other events than release event? Can it be triggered then?

Thanks.

hmm running into a similar problem
with this workflow https://github.com/ZerataX/yacx/blob/master/.github/workflows/release.yml

this used to work just 20 days ago, but I’ve just created a new release but nothing is being triggered?

https://github.com/ZerataX/yacx/actions?query=workflow%3Arelease

the tag appears to be on master where also my workflow is:

https://github.com/ZerataX/yacx/commit/1c7d3102f43fc03b39aec276dfaf8a75c2171ca6

Using my own GitHub personal access token to publish instead of the default GITHUB_TOKEN that’s on GitHub Actions solved this for me. See related solved post.

1 Like

I’ve encountered a similar issue today, in my case it was because I was force pushing to the master branch[0]. So I’ve had a prerelease created on master branch, force pushed a workflow that triggered on released, released the previous prerelease and the workflow didn’t trigger.

Maybe this peculiar scenario will be of help to others.

[0] Don’t panic! I was testing workflows out in a private repository

I am seeing a similar behavior for this workflow, where creating and publishing a release does not trigger the action.

is there a general way of checking which signals are emitted or triggering actions manually.

I am also unable to get a workflow to trigger on a new release. I have tried each of the following:

on:
  release:
    types: [created]
on:
  release:
    types: [published]
on:
  release:
    types: [released]

I suspect that this may be somehow caused by the fact that the releases are created with auto in another workflow rather than through the web interface.

From the documentation:

When you use the repository’s GITHUB_TOKEN to perform tasks on behalf of the GitHub Actions app, events triggered by the GITHUB_TOKEN will not create a new workflow run. This prevents you from accidentally creating recursive workflow runs.

See Triggering new workflows using a personal access token

1 Like

Use PAT (admin) token to have it triggered.

This is a bit old but…

What (I believe) @weide-zhou is trying to say is: The target branch ( github.ref ) of your release should contain the workflow file on it’s branch. :slight_smile:

To elaborate. If your main branch contains the workflow file to run

on:
    release:
        types: [ published ]

then your target branch, releases/** must also contain the workflow file.

If it does not, your action will not run. So, just commit your workflow file changes into your release branch if your release branch (github.ref) is a branch other than main.

Some images to for a visual:

Screenshot 2021-05-12 130524

Both Above and Below should contain the workflow file

Screenshot 2021-05-12 130603

Hope this helps.

Enjoy some :taco:s