Azure Pipelines 2 copies - Stuck "Expected — Waiting for status to be reported"

I am having in issue with Azure pipelines not completing in my project.   Whenever a pull request starts it triggers two copies of “Azure Pipelines” in the check.

https://github.com/jpype-project/jpype/pull/738/checks?check_run_id=659100814

image.png

One of the checks contains a single task.  It isn’t the first task in the pipeline.  It doesn’t appear to be special in any way.  I have looked over the project integerations and there are no settings that appear to influence this behavior.

Both complete checks, but Azure-pipelines is only producing one result so the required CI never registers as completed.  Thus the checks are stuck forever on “Expected - Waiting for status to be reported”.

I looked over other solution posts, but they were simply disabling tests.  

This is requiring all PR to be merged as administrator.

Is this an issue with Github or Azure?

Hi @thrameos,

Take a look at your required checks setting: https://help.github.com/en/github/administering-a-repository/enabling-required-status-checks

I’m guessing that the output name of one of your checks changed. So the pull request is expecting one that is set as “required”, but never gets a matching result, so the pull request is waiting for it. 

Thanks,  Though that was the first thing that I tried.  

The status checks list for the project show each of the individual tasks.   The one that is supposed to trigger if everything passes is jpype-project.jpype.  (There is no second entry with a different name nor anything which appears out of place.)

It shows a passed properly on the checks page, but never appears in the PR page.

https://github.com/jpype-project/jpype/pull/734

https://github.com/jpype-project/jpype/pull/734/checks?check_run_id=659899666   

image.png

Instead one of the random tasks (sometimes documentation, sometimes tracing, sometimes one of the platform tests) shows up as complete.   When the push first starts all of them show up there, but as they complete they disappear leaving just one of them.   This doesn’t happen every time.   About 10% of the time the correct jpype-project.jpype shows up as complete allowing the PR to go through.   It usually works for the first commit of the PR, but as more commits are pushed through it starts “slipping”.   My only working hypothesis is that something I have done in my pipeline has caused an indexing error in the Github check scripts.

Here is an example of what happens on the “first” run to a fresh PR.

Nothing changed in the project settings, but this time jpype-project/jpype is marked success (the codecov failed but that is another issue.)   Notice the all of the individual checks show up on the first commit.   If any additional commits are added, the check system breaks down and random checks appear in the list (even through all of them appear to run on the check page).   After that it is impossible to get the PR to clear.

@thrameos

I understood your issue, the jpype-project/jpype job didn’t has an Azure Pipeline icon , but it is from Azure Pipeline. And the related build could not be recognized by PR check. 

Could you please share the pipeline setting of jpype-project/jpype in your Azure DevOps? 

Also would you mind trying to delete or edit the branch protection rule ? Let’s see whether the Required tag could be removed from jpype-project/jpype job. 

Sure. I worked on it a lot of the weekend as we are trying to get everything tied up for a release. I disabled the “required” for a day and pushed in to see if anything changed on the checks, renamed the pipeline jpype.build to try to get it to recognize properly, and added a second release pipeline on manual trigger. The new jpype.build check shows up but thus far I haven’t gotten around to testing it the same behavior shows up. The first PR worked properly (as it often does), but I would have to add commits to see if something goes wrong. Shall I add “jpype.build” to the requirements and give it a check? The settings on azure a vanilla as I haven’t updated them since I started the pipeline.

The old configuration yaml file is here… https://github.com/jpype-project/jpype/blob/master/azure-pipelines.yml The triggers are just PR. I added some filters to cut down the number of builds but those rules do not apply to the problem as it is failing even when it hits the filter rules on each PR. The problem happens when the filters are enabled or disabled. Also of note the pipeline is a fairly large multijob PR as it tests coverage, documentation, compile options (tracing) and then the test suite. Is there any other information you require?

Hi @thrameos , 

I could reproduce your issue in my side. There maybe something wrong in “Azure Pipeline App”.

In the “Branch protection rule” > require status checks section, there are seperate jobs name also the whole pipeline name for one Azure pipeline. 

And when the pipeline be triggered , not all the required checks are recognized. This prevent the PR to be merged. 

I will create an issue in our internal channel reporting this issue. 

Current workaround is to remove the status check for this Azure pipeline .   

1 Like