tvm icon indicating copy to clipboard operation
tvm copied to clipboard

[ci][tvm-bot] Re-running an in-progress github action workflow fails

Open driazati opened this issue 3 years ago • 0 comments
trafficstars

See https://github.com/apache/tvm/pull/12785#issuecomment-1252588590 on https://github.com/apache/tvm/pull/12785:

This happened while one job was failed (MacOS) and 2 were still running (Android and Windows). The rerun request went to workflow 3091384727 which was the stopped MacOS build, but it might have errored out since the MacOS is a failed job within a workflow that contains other running jobs (Windows / MacOS). The fix here might be to break up main.yml in .github/workflows to macos.yml / windows.yml / android.yml (though the rerun-failed-jobs endpoint sounds like it should work fine with this case). We could also try cancelling the whole workflow, waiting a bit, then issuing the rerun.

Traceback (most recent call last):
  File "/home/runner/work/tvm/tvm/ci/scripts/git_utils.py", line 121, in _request
    with request.urlopen(req, data) as response:
  File "/usr/lib/python3.8/urllib/request.py", line 222, in urlopen
    return opener.open(url, data, timeout)
  File "/usr/lib/python3.8/urllib/request.py", line 531, in open
    response = meth(req, response)
  File "/usr/lib/python3.8/urllib/request.py", line 640, in http_response
    response = self.parent.error(
  File "/usr/lib/python3.8/urllib/request.py", line 569, in error
    return self._call_chain(*args)
  File "/usr/lib/python3.8/urllib/request.py", line 502, in _call_chain
    result = func(*args)
  File "/usr/lib/python3.8/urllib/request.py", line 649, in http_error_default
    raise HTTPError(req.full_url, code, msg, hdrs, fp)
urllib.error.HTTPError: HTTP Error 403: Forbidden

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "ci/scripts/github_tvmbot.py", line 574, in comment_failure
    raise item
  File "ci/scripts/github_tvmbot.py", line 685, in run
    pr.rerun_github_actions()
  File "ci/scripts/github_tvmbot.py", line 563, in rerun_github_actions
    raise e
  File "ci/scripts/github_tvmbot.py", line 555, in rerun_github_actions
    actions_github.post(f"actions/runs/{workflow_id}/rerun-failed-jobs", data={})
  File "/home/runner/work/tvm/tvm/ci/scripts/git_utils.py", line 143, in post
    return self._request(self.base + url, data, method="POST")
  File "/home/runner/work/tvm/tvm/ci/scripts/git_utils.py", line 126, in _request
    raise RuntimeError(f"Error response: {msg}\n{error_data}")
RuntimeError: Error response: HTTP Error 403: Forbidden
{"message":"This workflow is already running","documentation_url":"https://docs.github.com/rest/reference/actions#re-run-workflow-failed-jobs"}

cc @Mousius @areusch @gigiblender

driazati avatar Sep 20 '22 16:09 driazati