Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Deploy core and prover documentation to GH Pages #3185

Closed
popzxc opened this issue Oct 29, 2024 · 1 comment · Fixed by #3275
Closed

Deploy core and prover documentation to GH Pages #3185

popzxc opened this issue Oct 29, 2024 · 1 comment · Fixed by #3275
Assignees

Comments

@popzxc
Copy link
Member

popzxc commented Oct 29, 2024

We want to deploy core and prover documentation to GitHub pages.

Both should be hosted separately, with the following rules:

  • latest version for each is deployed on each merge to main.
  • Whenever core/prover release PR is merged, the documentation for the release is also built and published as corresponding version.
@antonbaliasnikov
Copy link
Contributor

@popzxc , the solution is ready for review at #3202.
I've put all the info including links to tests into the PR description.
I've implemented the version switch as well, it's available on the test website (example).

The last step would be to change Terraform configuration to enable gh-pages deployment for zksync-era repository, but it has to be done after #3202 merge.

github-merge-queue bot pushed a commit that referenced this issue Nov 15, 2024
## What ❔

* [x] Convert `docs` core project documentation to [mdBook
project](https://rust-lang.github.io/mdBook/)
* [x] Convert `prover/docs` prover project documentation to [mdBook
project](https://rust-lang.github.io/mdBook/)
* [x] Add CI workflows to build, test, and deploy versioned
documentation for these projects using
https://github.com/matter-labs/deploy-mdbooks action

<!-- What are the changes this PR brings about? -->
<!-- Example: This PR adds a PR template to the repo. -->
<!-- (For bigger PRs adding more context is appreciated) -->

## Why ❔

Fixes #3185

To improve documentation visibility and usability in ZKsync era
repository.

<!-- Why are these changes done? What goal do they contribute to? What
are the principles behind them? -->
<!-- Example: PR templates ensure PR reviewers, observers, and future
iterators are in context about the evolution of repos. -->

## Tests

Deployed documentation examples are available in the fork:
* For core project:
https://antonbaliasnikov.github.io/zksync-era/core/latest/
* For prover project:
https://antonbaliasnikov.github.io/zksync-era/prover/latest/

## Design decisions

It was chosen to use two different workflow files for documentation
deployments to keep CI reliable and easy to support regardless of a bit
of boilerplate code. [Solution with the unified
workflow](https://github.com/antonbaliasnikov/zksync-era/blob/main/.github/deploy-docs.yml)
for both projects was implemented but rejected as it is overcomplicated
and more difficult to support in the long term.

## Checklist

<!-- Check your PR fulfills the following items. -->
<!-- For draft PRs check the boxes as you complete them. -->

- [x] PR title corresponds to the body of PR (we generate changelog
entries from PRs).
- [x] Tests for the changes have been added / updated.
- [x] Documentation comments have been added / updated.
- [x] Code has been formatted via `zkstack dev fmt` and `zkstack dev
lint`.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
2 participants