<\/span><\/span><\/p>\nJupyter books can be shared widely with low-end user friction through two methods, remote books, and Jupyter book extensions. The former requires specifically formatted GitHub releases and the latter requires packaging an extension containing the Jupyter book. We will further explore remote Jupyter books, including leveraging a GitHub action to facilitate creating remote Jupyter books.<\/p>\n
Accessing Remote Jupyter Books<\/h2>\n Remote Jupyter books load a Jupyter book from a public repository into Azure Data Studio, either in the currently open folder or a temporary location. Adding a remote Jupyter book to Azure Data Studio starts through the action menu in the notebooks pane.<\/p>\n
<\/span><\/p>\nThe resulting dialog has a text input for the repository URL where a remote Jupyter book is hosted. Once the repository URL is input, you are presented with the Jupyter book releases hosted in that repository. A single repository can host multiple releases and multiple Jupyter books, whether they are variations for different SQL engines, use cases, or documentation language.<\/p>\n
<\/span><\/p>\nCreating a Remote Jupyter Book<\/h2>\n The remote Jupyter books feature in Azure Data Studio is an integration with GitHub releases, and it follows that creating a remote Jupyter book is a variation of creating a GitHub release. The remote book release on GitHub requires the Jupyter book to be attached as both a .zip archive and a .tar.gz archive for full cross-platform compatibility. The Azure Data Studio fields for book name, version number, and language are populated from the GitHub release title and the name of the uploaded compressed Jupyter book.<\/p>\n
<\/span><\/p>\nThis release can be created through the GitHub release interface and after manually creating the Jupyter book .zip and .tar.gz archives. The naming scheme for the archive files is a crucial step, where hyphens separate the book, version, and language parameters. Once the release is published in GitHub, it is available in Azure Data Studio as a remote book.<\/p>\n
Sharing this Jupyter book with users is now as straightforward as giving them the repository URL, such as \u201crepos\/Microsoft\/tigertoolbox\u201d. While the process of creating a remote Jupyter book might seem daunting, it is possible to streamline this with the use of GitHub actions.<\/p>\n
Automating a Remote Jupyter Book Release<\/h2>\n GitHub actions are hosted workflow runners that are capable of automating software development processes right from a repository on GitHub. Prepackaged actions are available on the GitHub marketplace and can be combined to create custom workflows. To expedite the creation of a GitHub release for a remote Jupyter book, a GitHub action is available that takes inputs similar to those in the Azure Data Studio interface and creates the corresponding GitHub release to publish a remote Jupyter book.<\/p>\n
The \u201cRemote Jupyter Book Publish\u201d action pairs nicely with a manual trigger, also known as workflow_dispatch, which creates a form in GitHub with inputs for each of the remote book variables. GitHub actions are managed with YAML file definitions that are stored within the \/.github\/workflows<\/i> directory in the repository. <\/b>By leveraging the workflow_dispatch trigger, inputs can be defined and made available to repository maintainers through a familiar-looking form in GitHub. By entering the required inputs and clicking \u201crun workflow\u201d, a release for a remote Jupyter book will be created on the repository.<\/p>\n
<\/span><\/p>\nThis complete sample is available in the documentation on the GitHub marketplace<\/a> where the action \u201cRemote Jupyter Book Publish\u201d is now available in preview. Check out the GitHub action in use on this sample repository<\/a>. To learn more about GitHub actions, check out the quickstart documentation.<\/a><\/p>\n\u200b<\/span><\/p>\n","protected":false},"excerpt":{"rendered":"The notebook experience in Azure Data Studio allows users to create and share documents containing live code, execution results, and narrative text. Potential usage includes data cleaning and transformation, statistical modeling, troubleshooting guides, data visualization, and machine learning. Jupyter books compile a collection of notebooks into a richer experience with more structure and a table<\/p>\n","protected":false},"author":5913,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"ep_exclude_from_search":false,"_classifai_error":"","footnotes":""},"post_tag":[],"product":[5226,2542],"content-type":[2424],"topic":[2466],"coauthors":[3546],"class_list":["post-32993","post","type-post","status-publish","format-standard","hentry","product-azure","product-azure-data-studio","content-type-best-practices","topic-developer","review-flag-1593580427-503","review-flag-lever-1593580264-545"],"yoast_head":"\n
Building and sharing Jupyter Books in Azure Data Studio - Microsoft SQL Server Blog<\/title>\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n\t \n\t \n\t \n