Skip to content

Gutenberg PR Preview: Broken check for the build artifact availability #1568

@WunderBart

Description

@WunderBart

The endpoint for checking the zipped build availability returns a different payload depending on the artifact availability, but it's always a 200:

Request Artifact unavailable Artifact available
Code 200 200
Payload JSON: { "error": "Request failed" } zip file

The code that validates the artifact availability checks only whether it's a 200 or not, meaning it always passes that check. The consequence is that a wrong error is thrown, which can be misleading:

JavaScript Error: Error when executing the blueprint step #2 ({"step":"writeFile","path":"/wordpress/pr/pr.zip","data":{"resource":"url","url":"/plugin-proxy.php?org=WordPress&repo=gutenberg&workflow=Build%20Gutenberg%20Plugin%20Zip&artifact=gutenberg-plugin&pr=59242","caption":"Downloading Gutenberg PR 59242"},"progress":{"weight":2,"caption":"Applying Gutenberg PR 59242"}}) : Could not download "/plugin-proxy.php?org=WordPress&repo=gutenberg&workflow=Build%20Gutenberg%20Plugin%20Zip&artifact=gutenberg-plugin&pr=59242".
Check if the URL is correct and the server is reachable.
If it is reachable, the server might be blocking the request.

The correct error thrown should be:

The PR 12345 does not exist or GitHub CI did not finish building it yet.

Metadata

Metadata

Assignees

Type

No type

Projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions