Way of Working
This page explains how to contribute content to the PCP Improvement Program Documentation Portal, where to find the CI/CD pipeline, and how to troubleshoot build errors.
π TL;DR β How to add or edit a pageβ
- Go to the repo: PCP-Improvement-Program-Documentation in ADO
- Navigate to
portal/pcp-improvement-program-docs/docs/ - Edit an existing file or create a new
.mdfile - Commit and push to
main - Wait ~3 minutes β the portal rebuilds and deploys automatically
Check the pipeline status. Green = changes are live at https://docs.polaris.automation.abb.com
- Keep all files only in
portal/pcp-improvement-program-docs/docs/β files elsewhere won't appear on the portal - The filename becomes the URL, e.g.
My-Page.mdβ/pcp-improvement-program/My-Page - Links to other portal pages must use relative paths:
[text](./Page-Name)β , not/Page-Nameβ - If you add an image β put it in
portal/pcp-improvement-program-docs/static/.attachments/, otherwise the build will fail
Repositoryβ
All documentation content lives in the ADO repository:
PCP-Improvement-Program-Documentation
The main branch (main) is the source of truth. Changes pushed to main automatically trigger a build and deployment.
Where to Edit Contentβ
All documentation pages are located in:
portal/pcp-improvement-program-docs/docs/
- Each page is a
.mdor.mdxfile - The filename becomes the URL slug (e.g.
my-page.mdβ/pcp-improvement-program/my-page) index.mdis the landing page at/pcp-improvement-program/
Adding a new pageβ
- Create a new
.mdfile inportal/pcp-improvement-program-docs/docs/ - Optionally add front matter to control order and title:
---
sidebar_position: 2
title: My Page Title
---
# My Page Title
Content goes here.
- Push to
mainβ the portal rebuilds automatically.
Adding imagesβ
- Place image files in
portal/pcp-improvement-program-docs/static/.attachments/ - Reference them in Markdown:

If you reference an image that is not in the repository, the build will fail.
CI/CD Pipelineβ
The pipeline runs automatically on every push to main.
View pipeline runs: π PCP-Improvement-Program-CICD
Steps performed:
- Build β
docusaurus buildcompiles the portal - Deploy β pushes the static output to Azure Static Web Apps
Build takes approximately 2β3 minutes. After a successful run, changes are live at:
π https://docs.polaris.automation.abb.com
Common Build Errorsβ
β Image not foundβ
Error: Image static/.attachments/my-image.png used in ../docs/index.md not found.
Fix: Add the image file to portal/pcp-improvement-program-docs/static/.attachments/ or remove the reference from the Markdown file.
β MDX compilation failedβ
Error: MDX compilation failed for file "..."
Fix: Check the file for invalid syntax β unclosed JSX tags, special characters (<, >) not escaped, or invalid front matter.
β Glossary validation errorsβ
[glossary-plugin] Glossary file has validation errors: "terms" array missing
This is a warning only β the build continues. The glossary at portal/glossary/glossary.json needs a terms array to work correctly, but this does not block the deployment.
β Broken links (Page Not Found)β
If clicking a link on the portal returns Page Not Found, the link is using an absolute path.
Fix: Use relative paths in Markdown links:
[My Page](./My-Page) β
[My Page](/My-Page) β
Adding Videosβ
Do not commit video files larger than 30 MB to the repository. Deployment will fail.
Small videos (< 30 MB)β
- Place the video file in
portal/pcp-improvement-program-docs/static/videos/ - Reference it in Markdown:
<video width="640" height="360" controls>
<source src="/videos/my-video.mp4" type="video/mp4"/>
Your browser does not support the video tag.
</video>
Large videos (> 30 MB)β
Upload to SharePoint / Microsoft Stream and embed using an <iframe>:
<iframe width="640" height="360"
src="https://your-sharepoint-embed-url"
frameborder="0" allowfullscreen>
</iframe>
Need Help?β
For portal infrastructure issues, register a service request: