Skip to content

Implement JSON output for external consumers and update workflow#2079

Open
marco-s wants to merge 2 commits into
pytorch:sitefrom
marco-s:patch-4
Open

Implement JSON output for external consumers and update workflow#2079
marco-s wants to merge 2 commits into
pytorch:sitefrom
marco-s:patch-4

Conversation

@marco-s

@marco-s marco-s commented Jun 9, 2026

Copy link
Copy Markdown
Contributor

Description

This pull request enhances the gen_additional_platforms.py script to generate a new JSON bundle for external consumers. And, it updates the workflow to install required Python dependencies, adds automated error reporting and pull request creation.

Motivation

Make it easier for external consumers to get the additional platforms matrix information. This PR adds to #2072.

marco-s added 2 commits June 8, 2026 18:12
Added functionality to write a JSON bundle for external consumers, including schema version and generation timestamp.
@netlify

netlify Bot commented Jun 9, 2026

Copy link
Copy Markdown

Deploy Preview for pytorch-dot-org-preview ready!

Name Link
🔨 Latest commit 34913cf
🔍 Latest deploy log https://app.netlify.com/projects/pytorch-dot-org-preview/deploys/6a27729d373e8f000841b10b
😎 Deploy Preview https://deploy-preview-2079--pytorch-dot-org-preview.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.

To edit notification comments on pull requests, go to your Netlify project configuration.

write_output(js_content)

# Also write the JSON file for the external consumer
write_platforms_json(platform_data, markdown_content, str(BASE_DIR / JSON_OUT_PATH))

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hi @marco-s, would you mind saving this file to the Asset directory instead? I believe the correct path should be ASSETS_DIR/JSON_OUT_PATH, right? :D

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hi @fffrog! I initially thought about putting this in the assets folder. Since that's mostly for JS/CSS, etc., I ended up grouping it in the base dir with the other JSON files instead so they all stay together.

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Got it, SGTM, thank you.

@fffrog

fffrog commented Jun 9, 2026

Copy link
Copy Markdown

Hi @marco-s , thank you for updats, it look good to me.

Parsing a Json is very easy compared to parsing a js file :D

@fffrog

fffrog commented Jun 9, 2026

Copy link
Copy Markdown

Hi @albanD, would you mind helping to review this PR, thank you in advance.

Why we need those changes

The JSON is easier to parse than JS file from WP side, so we need to save the output into JSON and release it in the master branch for website.

@can-gaa-hou

Copy link
Copy Markdown
Contributor

Thanks for fixing the CI error @marco-s

@albanD albanD left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Outputting json sounds fair. But the workflow update needs to be inspected a lot closer.

set -ex
python3 ./scripts/gen_additional_platforms.py
- name: Create Issue if failed
uses: dacbd/create-issue-action@main

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We should pin to specific sha

labels: bug
body: Updating additional platforms failed, please fix gen_additional_platforms.py
- name: Create Pull Request
uses: peter-evans/create-pull-request@v3

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Here as well, we can pin to specific sha

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

+1 lets pin sha for all third party actions

assignees: ${{github.actor}}
labels: bug
body: Updating additional platforms failed, please fix gen_additional_platforms.py
- name: Create Pull Request

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is this new that we're opening PRs here? Why and How?

run: |
set -ex
python3 ./scripts/gen_additional_platforms.py
- name: Create Issue if failed

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Lets actually remove this step. This repo is in maintenance mode currently, we don't need to create issues.

set -ex
python3 ./scripts/gen_additional_platforms.py
- name: Create Issue if failed
uses: dacbd/create-issue-action@main

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This has not been updated in 2+ years, and I bet we have different examples of creating issues. Should we still be using this actions?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants