Repository navigation
[CI] Integrate automated deployment strategy for docs site - #5142
Merged
Merged
Conversation
huashi-st
pushed a commit
to huashi-st/delta
that referenced
this pull request
Apr 24, 2026
…5142) <!-- Thanks for sending a pull request! Here are some tips for you: 1. If this is your first time, please read our contributor guidelines: https://github.com/delta-io/delta/blob/master/CONTRIBUTING.md 2. If the PR is unfinished, add '[WIP]' in your PR title, e.g., '[WIP] Your PR title ...'. 3. Be sure to keep the PR description updated to reflect all changes. 4. Please write your PR title to summarize what this PR proposes. 5. If possible, provide a concise example to reproduce the issue for a faster review. 6. If applicable, include the corresponding issue number in the PR title and link it in the body. --> #### Which Delta project/connector is this regarding? <!-- Please add the component selected below to the beginning of the pull request title For example: [Spark] Title of my pull request --> - [ ] Spark - [ ] Standalone - [ ] Flink - [ ] Kernel - [x] Other (Docs) ## Description This PR introduces a new Github Actions workflow which will automatically build and deploy the docs site and any desired version(s) of API docs. This workflow runs only under one of the following conditions: 1. Whenever a PR is merged into `master` which includes changes the `/docs` directory (most common case). 2. If there is a new [release](https://github.com/delta-io/delta/releases) (less common — mainly used for API doc updates). 3. Manually (useful for debugging purposes; only users with the `collaborators` permission to this repo can run it). Here's an example of a working deployment: - [Github Actions log](https://github.com/jakebellacera/delta/actions/runs/17314645500) - [Test deployment](https://vocal-bonbon-3bb61a.netlify.app/) ### How it works 1. When one of the conditions above is met, the `publish_docs` workflow is kicked off. 2. Builds one or more version(s) of the Delta Lake API docs. 3. Builds the docs site with the specified Delta Lake API docs. 5. Uploads the site to Netlify. ### Specifying API docs versions This workflow can build multiple versions of Delta Lake APIs. To do so, just specify the version(s) in the `publish_docs` workflow. Here's what's currently defined: https://github.com/delta-io/delta/blob/89d77c7a94f274ece59a9a95c56edf5a95df6bfa/.github/workflows/publish_docs.yaml#L14-L29 The workflow will check out the `ref` of this repo and use it to generate the API docs. The `name` is used to specify the human-readable folder to the API docs. For example, "latest" is using the ref [v4.0.0](https://github.com/delta-io/delta/tree/v4.0.0), while "3.3.2" is using the ref [v3.3.2](https://github.com/delta-io/delta/tree/v3.3.2). This allows for more flexibility. ### Additional changes required before merging Add the following [variables](https://docs.github.com/en/actions/how-tos/write-workflows/choose-what-workflows-do/use-variables) to this Github repo: - `NETLIFY_SITE_ID` - [Netlify Site ID](https://docs.netlify.com/api-and-cli-guides/cli-guides/get-started-with-cli/) we want to deploy to Add the following [secrets](https://docs.github.com/en/actions/how-tos/write-workflows/choose-what-workflows-do/use-secrets) to this Github repo: - `NETLIFY_AUTH_TOKEN` - [Netlify user PAT](https://docs.netlify.com/api-and-cli-guides/cli-guides/get-started-with-cli/#obtain-a-token-in-the-netlify-ui) to authenticate Netlify CLI with ### Other changes - Updated the v3 API docs to v3.3.2 - Upgraded Node.js dependencies - Updated the scala version for building v4 API docs (note: due to our automation building an older ref of Delta Lake v4, this won't apply until the next v4 release). --------- Co-authored-by: Robert Pack <42610831+roeap@users.noreply.github.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Which Delta project/connector is this regarding?
Description
This PR introduces a new Github Actions workflow which will automatically build and deploy the docs site and any desired version(s) of API docs. This workflow runs only under one of the following conditions:
masterwhich includes changes the/docsdirectory (most common case).collaboratorspermission to this repo can run it).Here's an example of a working deployment:
How it works
publish_docsworkflow is kicked off.Specifying API docs versions
This workflow can build multiple versions of Delta Lake APIs. To do so, just specify the version(s) in the
publish_docsworkflow. Here's what's currently defined:delta/.github/workflows/publish_docs.yaml
Lines 14 to 29 in 89d77c7
The workflow will check out the
refof this repo and use it to generate the API docs. Thenameis used to specify the human-readable folder to the API docs. For example, "latest" is using the ref v4.0.0, while "3.3.2" is using the ref v3.3.2. This allows for more flexibility.Additional changes required before merging
Add the following variables to this Github repo:
NETLIFY_SITE_ID- Netlify Site ID we want to deploy toAdd the following secrets to this Github repo:
NETLIFY_AUTH_TOKEN- Netlify user PAT to authenticate Netlify CLI withOther changes