-
Notifications
You must be signed in to change notification settings - Fork 1.1k
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
Spike: Move documentation to monorepo #843
Comments
I think the important (and possibly difficult) requirement is that we want a single place aggregating documentation for all major versions of LoopBack (2.x, 3.x, 4.x and beyond). If we keep the docs in the monorepo, then we need a solution that can fetch markdown files from different monorepo branches ( |
There is preliminary support to pull in markdown files from git/npm into One thing missing is to relink markdown files if they reference each other. |
Problem Description
Current Approach OverviewAggregated documentation for LoopBack 2.x, 3.x, and 4.x lives in Assumptions/considerations
Proposal
Spike Questions
|
I would prefer to host our documentation files in EDIT: |
The proposal looks mostly good to me. I am missing one answer though: how are we going to trigger propagation of docs updates from loopback-next to loopback.io repository? I understand |
A possibility would be setting up a script to poll for changes against loopback-next@master and then run the script to refresh the documentation. If jekyll is running in incremental mode, it can refresh the changes without having to take the site down! The downside to this would be that there is no staging area for the documentation, but I think it would be preferable to knocking the site down (I'm not saying that those are the only two choices, but fixing that problem separately would require additional effort) |
We can use github webhooks to watch https://developer.github.com/v3/activity/events/types/#releaseevent. Another option is to pull versions of |
@bajtos @kjdelisle @raymondfeng thank you for your valuable feedback. I went back and revisited my proposal. I've talked to @rmg as well and we have good support for automating doc updates from other repositories (aligns with @kjdelisle's suggestion) . However, it cannot make the PR for us with the doc updates automatically. It would commit the doc changes whenever there are open PRs against
@bajtos to answer your question:
Propagation of docs would have to be triggered via the |
@kjdelisle @raymondfeng @virkt25 @bajtos @dhmlau We held a meeting with @jannyHou and @shimks where I went over my proposal in detail. @jannyHou had another proposal which aims to see if Jekyll/Liquid/GitHub pages support sourcing content from remote locations instead of on disk files. This would essentially eliminate the need to sync between loopback-next and loopback.io. I did not take that into account when I was doing my spike. How should we move forward in this case? What are your thoughts on the current proposal and do you think we should explore the remote sourcing option? Follow up task if we are to choose the current proposal is at #1114. |
I don't think how to replicate files into |
FYI: https://github.com/strongloop-internal/apidocs.strongloop.com/tree/master/lib We can mimic how
|
As for @jannyHou's proposal, Jekyll does not have the ability to source its content from remote locations according to its configuration page. @raymondfeng how would the versioning work for |
The versioning scheme for I expect that we create a script to pull the latest version(s) from npm |
I'm a +1 for ensuring AFAIK, Travis can check master on Creating a package for
|
IMO, it's fine to have |
From the users' perspective,
|
See #1122. It allows @dhmlau We'll start with latest version from I'm not sure why you are concerned that |
I agree that ideally, it makes sense to server multiple versions of docs, when the code had changed significantly (like what we have for LB2 vs LB3). So, my next question is whether the plan is to have
My bad! I thought |
+1 For versioning, I would (again) like to propose NOT using independent mode so all versions are locked and users have less ambiguity between version compatibility of modules. Plus a version of the |
@raymondfeng I was just talking to @kjdelisle and he raised some concerns about top level docs folder being published as an npm module. Are we going to keep using the |
There are a few scripts in loopback.io repo:
Those two scripts are independent. BTW, what are @kjdelisle's concerns? |
Yeah that's true. The README copy script wouldn't get https://github.com/strongloop/loopback-next/tree/master/packages/example-getting-started/docs though would it? But if we decide to move them to the top level |
oh his concerns are basically what I asked :). |
Thank you all for chiming in. After all the discussion and the discoveries made from loopbackio/loopback.io#643, my proposal is as follows: Assumptions/considerations
Proposal
Spike Questions
If we all agree, then I can close this spike, and put any outstanding work in #1114. |
Closing as done. Follow up work in #1114. |
It would be great to have the documentation for loopback-next in the monorepo, so that we can keep documentation changes together with all other changes (runtime, CLI templates, API docs, etc.).
Spike Goals
Assuming the monorepo has a
docs
package:The text was updated successfully, but these errors were encountered: