Skip to content

Build docs

Build docs #66

Workflow file for this run

name: Build docs
on:
# Specify to run a workflow manually from the Actions tab on GitHub.
workflow_dispatch:
# Gives the workflow permissions to clone the repo and create a page deployment
permissions:
id-token: write
pages: write
env:
PRODUCT: StardustDocs/d
ARTIFACT: webHelpD2-all.zip
ALGOLIA_ARTIFACT: algolia-indexes-D.zip
ALGOLIA_APP_NAME: JWPLKSKZVF
ALGOLIA_INDEX_NAME: prod_DATAFRAME_HELP
ALGOLIA_KEY: ${{ secrets.ALGOLIA_KEY }}
CONFIG_JSON_PRODUCT: Dataframe
CONFIG_JSON_VERSION: '0.14'
jobs:
build-job:
runs-on: ubuntu-24.04 [Beta]
container: registry.jetbrains.team/p/writerside/builder/writerside-builder:2.1.1481-p3872-df
outputs:
artifact: ${{ steps.generate-artifact.outputs.artifact }}
steps:
- name: Checkout repository
uses: actions/checkout@v4
- name: Prepare for build
run: |
apt-get update
apt-get install -y zip
mkdir -p artifacts
- name: Build docs # and include sitemap.xml TODO: uncomment when sitemap.xml is available
run: |
export DISPLAY=:99
Xvfb :99 &
/opt/builder/bin/idea.sh helpbuilderinspect -source-dir . -product $PRODUCT --runner github -output-dir artifacts/ || true
test -e artifacts/$ARTIFACT && echo $ARTIFACT exists
# cp docs/StardustDocs/sitemap.xml artifacts/sitemap.xml
# cd artifacts
# zip -r $ARTIFACT sitemap.xml
working-directory: ${{ github.workspace }}
- name: Upload modified documentation artifact
uses: actions/upload-artifact@v4
with:
name: help
path: artifacts/${{ env.ARTIFACT }}
retention-days: 7
- name: Upload algolia-indexes
uses: actions/upload-artifact@v4
with:
name: algolia-indexes
path: artifacts/${{ env.ALGOLIA_ARTIFACT }}
retention-days: 7
deploy:
environment:
name: github-pages
url: ${{ steps.deployment.outputs.page_url }}
# Requires the build-job results
needs: build-job
runs-on: ubuntu-24.04 [Beta]
steps:
- name: Download artifact
uses: actions/download-artifact@v4
with:
name: help
- name: Unzip artifact
uses: montudor/action-zip@v1
with:
args: unzip -qq ${{ env.ARTIFACT }} -d dir
- name: Setup Pages
uses: actions/configure-pages@v5
- name: Upload artifact
uses: actions/upload-pages-artifact@v3
with:
path: dir
- name: Deploy to GitHub Pages
id: deployment
uses: actions/deploy-pages@v4
publish-indexes:
# Requires the build-job results
needs: build-job
runs-on: ubuntu-24.04 [Beta]
container:
image: registry.jetbrains.team/p/writerside/builder/algolia-publisher:2.0.32-2
steps:
- uses: actions/checkout@v4
- uses: actions/download-artifact@v4
with:
name: algolia-indexes
- uses: montudor/action-zip@v1
with:
args: unzip -qq algolia-indexes-D.zip -d algolia-indexes
- run: |
env "algolia-key=${{env.ALGOLIA_KEY}}" java -jar /opt/builder/help-publication-agent.jar \
update-index \
--application-name ${{env.ALGOLIA_APP_NAME}} \
--index-name ${{env.ALGOLIA_INDEX_NAME}} \
--product ${{env.CONFIG_JSON_PRODUCT}} \
--version ${{env.CONFIG_JSON_VERSION}} \
--index-directory algolia-indexes/ \
2>&1 | tee algolia-update-index-log.txt