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

Add, improve, rewrite and automatically render and deploy documentation #551

Merged
merged 13 commits into from
Sep 15, 2022

Conversation

LukasKalbertodt
Copy link
Member

@LukasKalbertodt LukasKalbertodt commented Sep 14, 2022

I wanted to do that for a while already. This PR renders our documentation with Docusaurus. For that, I had to rewrite lots of it and bring it into a slightly different structure. I also added a few pages of documentation. Finally, it is automatically deployed via GitHub pages from the master branch.

I think it's a really nice improvement and reading the docs in this new format feels a lot better.

image

Future improvement

Potentially still in this PR, but not necessary (i.e. feel free to merge before):

  • Add logo + favicon
  • Add "Update Tobira" docs
  • Add release docs
  • Add Ansible docs

After this PR, or more precisely once we release a new release:

  • Setup versioned docs

Docusaurus supports versioned docs, showing a version selector in the header. This is super useful. But since until now, our docs were not in a state where we can render them with Docusaurus, it's not possible to add previous versions, i.e. we would only have one version. So we need to wait to actually have multiple versions.

But for the record, we already talked about how we would do it. And in short: the documentation build action would basically check out a list of tags (previous releases) and copy their docs into versioned_docs. We don't want to keep all doc versions on our main branch.

This does the basic Docusaurus setup and moves all our existing docs
roughly in the correct place. Most of the documentation was not adjusted
yet to better fit this new form of presenting it. This is only the first
step.
This also adds quite a bit of documentation, e.g. the auth example of
using your own login page and session management.

I deliberately included two documents that only have a "TODO" in them.
Then it looks cleaner and people are not frightened away by "so much
to read".
@github-actions
Copy link

🚀 This PR was deployed at https://pr551.tobira.opencast.org. The deployment will be updated whenever someone pushes onto this PR's branch.

@JulianKniephoff JulianKniephoff added changelog:admin Changes primarily for admins changelog:dev Changes primarily for developers labels Sep 15, 2022
docs/.gitignore Outdated Show resolved Hide resolved
docs/.gitignore Outdated Show resolved Hide resolved
docs/docs/intro.md Show resolved Hide resolved
docs/docs/overview.md Show resolved Hide resolved
docs/docs/setup/index.md Show resolved Hide resolved
docs/docs/setup/jwt.md Show resolved Hide resolved
docs/docs/dev/contribute.md Outdated Show resolved Hide resolved
docs/docusaurus.config.js Outdated Show resolved Hide resolved
docs/docs/setup/ansible-example.md Outdated Show resolved Hide resolved
docs/docs/setup/ansible-example.md Outdated Show resolved Hide resolved
@LukasKalbertodt LukasKalbertodt force-pushed the docusaurus-docs branch 2 times, most recently from 8554e45 to 80c9813 Compare September 15, 2022 14:57
@LukasKalbertodt LukasKalbertodt merged commit bae9c05 into elan-ev:master Sep 15, 2022
@LukasKalbertodt LukasKalbertodt deleted the docusaurus-docs branch September 15, 2022 15:11
@JulianKniephoff JulianKniephoff mentioned this pull request Sep 20, 2022
LukasKalbertodt added a commit that referenced this pull request Oct 4, 2022
Some follow up improvements to #551.
JulianKniephoff added a commit that referenced this pull request Nov 29, 2022
As already mentioned in #551, we wanted to set up versioned docs,
allowing users to switch to docs of a different version. We decided
against storing old docs on our main branch. So instead, we
automatically retrieve the old docs from git history. The main part of
this PR is the script that does exactly that and sets everything up as
expected by docusaurus. The CI makes use of that and deploys the
versioned docs.


![image](https://user-images.githubusercontent.com/7419664/204327904-3f3ae953-6d34-426e-b843-a19c9eb0473f.png)

The latest released version is the default docs that are shown to
people. Everything on `master` is shown as "Next".

Docusaurus has some hints on how to properly do versioned docs. Most
importantly "don't have too many versions". Luckily, `versions.txt` lets
us easily select what versions we want (that's the reason for the manual
file). I would think that for each major version, we only keep the
latest minor one. Except for the latest major version where we keep all
minor ones? We will see.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
changelog:admin Changes primarily for admins changelog:dev Changes primarily for developers
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants