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

document pipeline from the perspective of ocaml.org #48

Draft
wants to merge 1 commit into
base: main
Choose a base branch
from

Conversation

sabine
Copy link
Collaborator

@sabine sabine commented Jan 24, 2023

In order to make the process of deploying new voodoo versions more transparent and deliberate, we are changing the pipeline to listen to the live branch of this repository here: ocurrent/ocaml-docs-ci#91.

This patch adds documentation about the pipeline aimed at https://github.com/ocaml/ocaml.org/ developers.

@TheLortex since you provided the original instructions in ocurrent/ocaml-docs-ci#89 (comment), please review when you find the time, and, if possible, clarify step 2 in "How to safely and seamlessly upgrade ocaml.org on breaking changes". (Or if step 2 happens automatically, we just remove it from these instructions.)

@sabine sabine force-pushed the document_pipeline_upgrade_process branch from 12de7e9 to 79d2813 Compare January 24, 2023 13:23
@sabine sabine force-pushed the document_pipeline_upgrade_process branch from 79d2813 to f8703da Compare January 24, 2023 18:20
@cuihtlauac
Copy link
Contributor

PR: #51 probably needs to be merged and this one rebased afterwards to run smoothly

@sabine
Copy link
Collaborator Author

sabine commented Jan 25, 2023

@cuihtlauac Thank you. That is very helpful!

@cuihtlauac
Copy link
Contributor

@sabine I'm not so sure #51 actually helps. It isn't building either :-(

@sabine sabine marked this pull request as draft January 26, 2023 09:18
@sabine sabine marked this pull request as draft January 26, 2023 09:18
@sabine sabine marked this pull request as draft January 26, 2023 09:18
1. live: `https://docs-data.ocaml.org/live/p/{PACKAGE_NAME}/{PACKAGE_VERSION}/` (manually-promoted live version), and
2. current: `https://docs-data.ocaml.org/current/p/{PACKAGE_NAME}/{PACKAGE_VERSION}/` (always follows the `live` branch of `voodoo`).

The pipeline checks daily for updates to the `live` branch of this repository. When it finds new commits, the pipeline starts to build the package documentation using the new commits. It takes around 24-48h to complete the build. The resulting data appears in the `current` folder.
Copy link
Collaborator

Choose a reason for hiding this comment

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

The pipeline checks daily for updates to the live branch of this repository

Why does the pipeline need to re-build for git changes to voodoo?

Copy link
Collaborator Author

Choose a reason for hiding this comment

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

The pipeline caches the build artifacts (package documentation data) for the different voodoo "tools" (prep, do, gen) based on the respective folder's most recent commit id.

When the commit id of prep, do, or gen changes, the pipeline starts a fresh build of all packages in the current folder.

(Also: what I wrote here refers to a live branch that doesn't exist yet, and we also don't have the ability to build documentation using "two versions of voodoo" in parallel.)

Copy link
Collaborator

@TheLortex TheLortex left a comment

Choose a reason for hiding this comment

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

Looks good, but maybe you can also mention that it watches ocaml/opam-repository and updates the docs site automatically.

The live location needs to be promoted once, when voodoo is updated.

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.

4 participants