Skip to content

Commit 45a05e5

Browse files
[docs] Fix docs.opencue.io redirect and broken asset paths and docs improvements (AcademySoftwareFoundation#1818)
The documentation site failed after redirecting from academysoftwarefoundation.github.io/OpenCue to docs.opencue.io due to hardcoded `/OpenCue/` paths. Updates include: - Changed Jekyll `baseurl` from "/OpenCue" to "" for root domain hosting - Replaced hardcoded `/OpenCue/` paths with Jekyll’s `relative_url` filter - Updated GitHub Actions to support both docs.opencue.io and GitHub Pages deployments - Fixed asset references in CSS, JavaScript, and markdown - Updated documentation links in README files - Modified build.sh to auto-detect baseurl configuration The site now loads correctly on: - docs.opencue.io (production) - GitHub Pages forks (auto `/OpenCue` baseurl) Resolves formatting and navigation issues reported by the Linux Foundation. Other changes: - Merge master latest changes: [docs] Add Previous/Next navigation buttons and Docs link to documentation - Fix monospace font rendering for code blocks in documentation - Fixed "Get Started" button on homepage: Updated link from /docs/quick-starts/ to /docs/getting-started/ - Added active development notice to docs `index` and `getting-started` pages with links to master branch, sandbox guide, and upcoming release info. **Link the Issue(s) this Pull Request is related to.** - AcademySoftwareFoundation#1800
1 parent add2cc9 commit 45a05e5

File tree

11 files changed

+104
-45
lines changed

11 files changed

+104
-45
lines changed

.github/workflows/docs.yml

Lines changed: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -121,10 +121,17 @@ jobs:
121121
echo "build_date: ${{ steps.version.outputs.build_date }}" >> _config.yml
122122
echo "opencue_version: ${{ steps.version.outputs.opencue_version }}" >> _config.yml
123123
124-
if [ "${{ github.event_name }}" = "pull_request" ]; then
124+
# Determine baseurl based on deployment target
125+
# For docs.opencue.io deployment, use empty baseurl
126+
# For GitHub Pages in forks, use /OpenCue
127+
if [ "${{ github.repository }}" = "AcademySoftwareFoundation/OpenCue" ]; then
128+
# Main repository - deploying to docs.opencue.io
129+
bundle exec jekyll build --baseurl ""
130+
elif [ "${{ github.event_name }}" = "pull_request" ]; then
131+
# Pull request - use GitHub Pages path
125132
bundle exec jekyll build --baseurl "/OpenCue"
126133
else
127-
# For versioned builds, add version to path
134+
# Fork or other deployment - use GitHub Pages path
128135
if [ "${{ steps.version.outputs.version }}" != "main" ]; then
129136
bundle exec jekyll build --baseurl "${{ steps.pages.outputs.base_path }}/${{ steps.version.outputs.version }}"
130137
else

README.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -95,9 +95,9 @@ If you make changes to `OpenCue/docs`, please build and test the documentation b
9595

9696
For detailed documentation setup instructions, testing procedures, and contribution guidelines, see [docs/README.md](https://github.com/AcademySoftwareFoundation/OpenCue/blob/master/docs/README.md).
9797

98-
**Note:** Once your pull request is merged into master, the documentation will be automatically deployed via GitHub Actions ([.github/workflows/docs.yml](https://github.com/AcademySoftwareFoundation/OpenCue/blob/master/.github/workflows/docs.yml)). The updated documentation will be available at https://academysoftwarefoundation.github.io/OpenCue/.
98+
**Note:** Once your pull request is merged into master, the documentation will be automatically deployed via GitHub Actions ([.github/workflows/docs.yml](https://github.com/AcademySoftwareFoundation/OpenCue/blob/master/.github/workflows/docs.yml)). The updated documentation will be available at https://docs.opencue.io/.
9999

100-
The new OpenCue documentation will soon replace the current version at https://www.opencue.io.
100+
The OpenCue documentation is now available at https://docs.opencue.io/.
101101

102102
# Meeting notes
103103

docs/README.md

Lines changed: 7 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@ This directory contains the official documentation for OpenCue, built with Jekyl
3232
bundle exec jekyll serve --livereload
3333
```
3434

35-
5. **Open in browser:** http://localhost:4000/OpenCue
35+
5. **Open in browser:** http://localhost:4000/
3636

3737
## Documentation Structure
3838

@@ -106,7 +106,7 @@ The documentation supports advanced Markdown features:
106106
1. **Place images** in `assets/images/`
107107
2. **Reference with proper baseurl:**
108108
```markdown
109-
![Alt text](/OpenCue/assets/images/your-image.png)
109+
![Alt text]({{ '/assets/images/your-image.png' | relative_url }})
110110
```
111111
3. **Use descriptive alt text** for accessibility
112112

@@ -249,7 +249,7 @@ Documentation is automatically deployed via GitHub Actions:
249249
2. **Workflow:** `.github/workflows/docs.yml`
250250
3. **Build environment:** Ubuntu with Ruby 3.x
251251
4. **Deployment target:** GitHub Pages
252-
5. **URL:** `https://academysoftwarefoundation.github.io/OpenCue` (will be changed to `https://opencue.io` in the future)
252+
5. **URL:** `https://docs.opencue.io` (redirected from `https://academysoftwarefoundation.github.io/OpenCue`)
253253

254254
### Deploying Documentation in Your Fork
255255

@@ -268,6 +268,7 @@ For developers contributing to the OpenCue project who want to validate the Open
268268
- Go to the Actions tab
269269
- Find the "Deploy Documentation" workflow and either re-run it or manually trigger it to publish your docs
270270
- Your documentation will be available at `https://[your-username].github.io/OpenCue`
271+
- Note: In your fork, you may need to update `baseurl` in `_config.yml` to `/OpenCue` for GitHub Pages
271272

272273
### Build Process
273274

@@ -282,8 +283,8 @@ For developers contributing to the OpenCue project who want to validate the Open
282283
Key configuration for deployment:
283284
```yaml
284285
# _config.yml
285-
baseurl: "/OpenCue" # GitHub Pages path
286-
url: "https://academysoftwarefoundation.github.io" # Base domain
286+
baseurl: "" # Empty for root domain hosting
287+
url: "https://docs.opencue.io" # Production domain
287288
```
288289
289290
## Contributing
@@ -332,7 +333,7 @@ bundle install
332333

333334

334335
**Images not displaying:**
335-
- Ensure proper baseurl (`/OpenCue/assets/images/`)
336+
- Ensure proper baseurl usage (`{{ '/assets/images/' | relative_url }}`)
336337
- Check file paths and case sensitivity
337338
- Verify images exist in `assets/images/`
338339

docs/_config.yml

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
# OpenCue Documentation Configuration
22
title: OpenCue Documentation
33
description: OpenCue is an open source render management system for visual effects and animation.
4-
baseurl: "/OpenCue" # the subpath of your site, e.g. /blog
5-
url: "https://academysoftwarefoundation.github.io" # the base hostname & protocol for your site
4+
baseurl: "" # the subpath of your site, e.g. /blog
5+
url: "https://docs.opencue.io" # the base hostname & protocol for your site
66

77
# Build settings
88
theme: just-the-docs
@@ -37,8 +37,8 @@ doc_version: "0.0.1"
3737

3838
# Just the Docs theme configuration
3939
color_scheme: nil
40-
logo: "/assets/images/opencue_logo_with_text.png"
41-
favicon_ico: "/assets/images/favicon.ico"
40+
logo: "assets/images/opencue_logo_with_text.png"
41+
favicon_ico: "assets/images/favicon.ico"
4242

4343

4444

@@ -72,7 +72,7 @@ aux_links_new_tab: true
7272
footer_content: |
7373
<div style="display: flex; align-items: center; justify-content: center; gap: 2rem; flex-wrap: wrap; margin: 1rem 0;">
7474
<a href="https://www.aswf.io" target="_blank">
75-
<img src="/OpenCue/assets/images/aswf_aqua.png" alt="Academy Software Foundation logo" style="height: 60px; width: auto;">
75+
<img src="{{ '/assets/images/aswf_aqua.png' | relative_url }}" alt="Academy Software Foundation logo" style="height: 60px; width: auto;">
7676
</a>
7777
<div style="text-align: center;">
7878
<p style="margin: 0; font-size: 0.9rem;">© Contributors to the OpenCue Project. Licensed under <a href="https://github.com/AcademySoftwareFoundation/OpenCue/blob/master/LICENSE">Apache 2.0</a>.</p>

docs/_docs/getting-started/index.md

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,3 +9,12 @@ permalink: /docs/getting-started
99
# OpenCue getting started guide
1010

1111
Guides for system admins deploying OpenCue components and installing dependencies
12+
13+
## All OpenCue documentation
14+
15+
---
16+
17+
🚧 **Note:** Documentation is currently under active development.
18+
19+
- Please use the latest version from the [Opencue master branch](https://github.com/AcademySoftwareFoundation/OpenCue) for the moment. We are working to release a new version of OpenCue soon.
20+
- For quick start on Linux or macOS, follow the guide [Using the OpenCue Sandbox for Testing](developer-guide/sandbox-testing/)

docs/_docs/index.md

Lines changed: 13 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ permalink: /docs/
88

99
<div class="mx-auto text-center">
1010
<div style="display: flex; align-items: center; justify-content: center; gap: 20px;">
11-
<img src="/OpenCue/assets/images/opencue-icon-black.svg" alt="OpenCue" style="height: 140px; background-color: white; padding: 10px; border-radius: 8px;">
11+
<img src="{{ '/assets/images/opencue-icon-black.svg' | relative_url }}" alt="OpenCue" style="height: 140px; background-color: white; padding: 10px; border-radius: 8px;">
1212
<div style="text-align: center;">
1313
<h1 class="display-4" style="margin: 0;">OpenCue</h1>
1414
<h3 class="lead" style="margin: 0;">An open source render management system</h3>
@@ -21,16 +21,25 @@ permalink: /docs/
2121
<a class="btn btn-lg btn-black" style="margin: 5px;" href="https://lf-aswf.atlassian.net/wiki/spaces/OPENCUE/overview">
2222
<i class="fab fa-slack"></i>&nbsp;Participate
2323
</a>
24-
<a class="btn btn-lg btn-dark" style="margin: 5px;" href="/OpenCue/docs/">
24+
<a class="btn btn-lg btn-dark" style="margin: 5px;" href="{{ '/docs/' | relative_url }}">
2525
<i class="fas fa-book"></i>&nbsp;Documentation
2626
</a>
27-
<a class="btn btn-lg btn-black" style="margin: 5px;" href="/OpenCue/news/">
27+
<a class="btn btn-lg btn-black" style="margin: 5px;" href="{{ '/news/' | relative_url }}">
2828
<i class="fas fa-newspaper"></i>&nbsp;News
2929
</a>
3030
</div>
3131
</div>
3232

33-
All OpenCue documentation
33+
## All OpenCue documentation
34+
35+
---
36+
37+
🚧 **Note:** Documentation is currently under active development.
38+
39+
- Please use the latest version from the [Opencue master branch](https://github.com/AcademySoftwareFoundation/OpenCue) for the moment. We are working to release a new version of OpenCue soon.
40+
- For quick start on Linux or macOS, follow the guide [Using the OpenCue Sandbox for Testing](developer-guide/sandbox-testing/)
41+
42+
---
3443

3544
### [Quick starts](quick-starts/)
3645

docs/_includes/header_custom.html

Lines changed: 28 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1261,7 +1261,7 @@
12611261
<style>
12621262
/* Fix logo size and visibility */
12631263
.site-logo {
1264-
background-image: url('/OpenCue/assets/images/opencue_logo_with_text.png');
1264+
background-image: url('{{ "/assets/images/opencue_logo_with_text.png" | relative_url }}');
12651265
background-size: contain;
12661266
background-repeat: no-repeat;
12671267
background-position: center;
@@ -1337,6 +1337,30 @@
13371337
color: #24292e !important;
13381338
}
13391339

1340+
/* Code blocks - ensure monospace font for all modes */
1341+
code {
1342+
font-family: 'JetBrains Mono', 'Fira Code', 'Consolas', 'Monaco', 'Courier New', monospace !important;
1343+
font-size: 0.875em;
1344+
}
1345+
1346+
pre {
1347+
font-family: 'JetBrains Mono', 'Fira Code', 'Consolas', 'Monaco', 'Courier New', monospace !important;
1348+
}
1349+
1350+
pre code {
1351+
font-family: inherit !important;
1352+
}
1353+
1354+
/* Ensure proper formatting for ASCII art and aligned text */
1355+
.highlight pre,
1356+
.highlighter-rouge pre,
1357+
.language-plaintext {
1358+
font-family: 'JetBrains Mono', 'Fira Code', 'Consolas', 'Monaco', 'Courier New', monospace !important;
1359+
white-space: pre !important;
1360+
word-wrap: normal !important;
1361+
overflow-x: auto !important;
1362+
}
1363+
13401364
/* Buttons - use dark gray theme */
13411365
.btn-primary {
13421366
background-color: #374151 !important;
@@ -1825,21 +1849,23 @@
18251849
border: 1px solid #6b7280 !important;
18261850
border-radius: 4px;
18271851
padding: 2px 6px;
1828-
font-family: 'JetBrains Mono', 'Fira Code', monospace;
1852+
font-family: 'JetBrains Mono', 'Fira Code', 'Consolas', 'Monaco', 'Courier New', monospace !important;
18291853
}
18301854

18311855
body.dark-mode pre {
18321856
background: #1f2937 !important;
18331857
color: #e5e7eb !important;
18341858
border: 1px solid #4b5563 !important;
18351859
border-radius: 8px;
1860+
font-family: 'JetBrains Mono', 'Fira Code', 'Consolas', 'Monaco', 'Courier New', monospace !important;
18361861
}
18371862

18381863
body.dark-mode pre code {
18391864
color: #e5e7eb !important;
18401865
border: none !important;
18411866
background: transparent !important;
18421867
padding: 0;
1868+
font-family: inherit !important;
18431869
}
18441870

18451871
/* Professional table design */

docs/assets/js/search.js

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,8 @@
2727
// Load search data
2828
function loadSearchData() {
2929
var xhr = new XMLHttpRequest();
30-
xhr.open('GET', '/OpenCue/search-data.json');
30+
var baseUrl = document.querySelector('base') ? document.querySelector('base').getAttribute('href') : '';
31+
xhr.open('GET', (baseUrl || '') + '/search-data.json');
3132
xhr.onload = function() {
3233
if (xhr.status === 200) {
3334
searchData = JSON.parse(xhr.responseText);

docs/build.sh

Lines changed: 11 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -116,11 +116,11 @@ else
116116
print_warning "Theme toggle functionality not found in index.html"
117117
fi
118118

119-
# Check for proper image paths
120-
if grep -q "/OpenCue/assets/images/" _site/**/*.html 2>/dev/null; then
121-
print_success "Proper image paths with baseurl found"
119+
# Check for proper image paths - now checking for relative_url filter usage
120+
if grep -q "assets/images/" _site/**/*.html 2>/dev/null; then
121+
print_success "Image paths found in build output"
122122
else
123-
print_warning "Image paths may not include proper baseurl"
123+
print_warning "No image paths found in build output"
124124
fi
125125

126126
# Build size information
@@ -136,7 +136,13 @@ echo -e "Build output: ${BLUE}$(pwd)/_site${NC}"
136136
echo ""
137137
print_status "Testing options:"
138138
echo "- Serve locally: bundle exec jekyll serve"
139-
echo "- Local URL: http://localhost:4000/OpenCue/"
139+
# Determine the local URL based on baseurl setting
140+
if grep -q 'baseurl: ""' _config.yml; then
141+
echo "- Local URL: http://localhost:4000/"
142+
else
143+
baseurl=$(grep 'baseurl:' _config.yml | sed 's/.*baseurl: "\(.*\)"/\1/')
144+
echo "- Local URL: http://localhost:4000${baseurl}/"
145+
fi
140146
echo "- Validate HTML: bundle exec htmlproofer _site --disable-external"
141147
echo "- Test dark mode: Open site and click sun/moon icon in top-right"
142148

docs/docs.md

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -11,26 +11,26 @@ Comprehensive documentation for OpenCue, including installation guides, tutorial
1111

1212
## Documentation Sections
1313

14-
### [Quick Starts](/OpenCue/docs/quick-starts/)
14+
### [Quick Starts]({{ '/docs/quick-starts/' | relative_url }})
1515
Get OpenCue running quickly with our sandbox environments for Linux, macOS, and Windows.
1616

17-
### [Concepts](/OpenCue/docs/concepts/)
17+
### [Concepts]({{ '/docs/concepts/' | relative_url }})
1818
Learn about OpenCue's architecture, components, and core principles.
1919

20-
### [Getting Started](/OpenCue/docs/getting-started/)
20+
### [Getting Started]({{ '/docs/getting-started/' | relative_url }})
2121
Production deployment guides for system administrators and DevOps teams.
2222

23-
### [User Guides](/OpenCue/docs/user-guides/)
23+
### [User Guides]({{ '/docs/user-guides/' | relative_url }})
2424
Day-to-day workflows for artists, supervisors, and production staff.
2525

26-
### [Other Guides](/OpenCue/docs/other-guides/)
26+
### [Other Guides]({{ '/docs/other-guides/' | relative_url }})
2727
Advanced configuration, troubleshooting, and administrative guides.
2828

29-
### [Developer Guide](/OpenCue/docs/developer-guide/)
29+
### [Developer Guide]({{ '/docs/developer-guide/' | relative_url }})
3030
Resources for developers contributing to OpenCue or building integrations.
3131

32-
### [Reference](/OpenCue/docs/reference/)
32+
### [Reference]({{ '/docs/reference/' | relative_url }})
3333
Complete reference documentation for all OpenCue tools, APIs, and interfaces.
3434

35-
### [Tutorials](/OpenCue/docs/tutorials/)
35+
### [Tutorials]({{ '/docs/tutorials/' | relative_url }})
3636
Step-by-step tutorials for learning OpenCue workflows and best practices.

0 commit comments

Comments
 (0)