Skip to content

Merge pull request #23 from sureshg/dependabot/github_actions/actions… #40

Merge pull request #23 from sureshg/dependabot/github_actions/actions…

Merge pull request #23 from sureshg/dependabot/github_actions/actions… #40

Workflow file for this run

name: Build documentation
on:
push:
branches:
- main
tags:
- '*'
paths:
- Writerside/**
- '.github/workflows/**'
workflow_dispatch:
permissions:
id-token: write
pages: write
contents: write
issues: write
packages: write
repository-projects: write
env:
INSTANCE: 'Writerside/notes'
ARTIFACT: 'webHelpNOTES2-all.zip'
DOCKER_VERSION: 'latest'
ALGOLIA_ARTIFACT: 'algolia-indexes-NOTES.zip'
ALGOLIA_APP_NAME: 'QD1IR5ST5F'
ALGOLIA_INDEX_NAME: 'suresh.dev.index'
ALGOLIA_KEY: '${{ secrets.ALGOLIA_KEY }}'
CONFIG_JSON_PRODUCT: 'NOTES'
CONFIG_JSON_VERSION: '1.0'
jobs:
build:
runs-on: ubuntu-latest
steps:
- name: 🛎️ Checkout repository
uses: actions/checkout@v6
with:
fetch-depth: 0
- name: 🏗️ Build Writerside docs using Docker
uses: JetBrains/writerside-github-action@v4
with:
instance: ${{ env.INSTANCE }}
artifact: ${{ env.ARTIFACT }}
docker-version: ${{ env.DOCKER_VERSION }}
- name: 📤 Upload Docs and Search Index artifacts
uses: actions/upload-artifact@v5
with:
name: docs
path: |
artifacts/${{ env.ARTIFACT }}
artifacts/report.json
artifacts/${{ env.ALGOLIA_ARTIFACT }}
retention-days: 7
test:
needs: build
if: false
runs-on: ubuntu-latest
steps:
- name: ⏬ Download artifacts
uses: actions/download-artifact@v6
with:
name: docs
path: artifacts
- name: 🧪️ Test documentation
uses: JetBrains/writerside-checker-action@v1
with:
instance: ${{ env.INSTANCE }}
deploy:
needs: [ build ]
runs-on: ubuntu-latest
steps:
- name: 🛎️ Check out the source code
uses: actions/checkout@v6
with:
fetch-depth: 0
submodules: recursive
- name: ⏬ Download artifacts
uses: actions/download-artifact@v6
with:
name: docs
- name: 🗜️ Unzip artifact
run: unzip -O UTF-8 -qq '${{ env.ARTIFACT }}' -d notesDir
- name: 🚀 Deploy notes
uses: JamesIves/github-pages-deploy-action@v4.7.4
with:
branch: main
folder: notesDir
target-folder: notes
clean: true
commit-message: '✨Deployed notes!'
# - name: Setup Pages
# uses: actions/configure-pages@v4
#
# - name: Package and upload Pages artifact
# uses: actions/upload-pages-artifact@v3
# with:
# path: notesDir
#
# - name: Deploy to GitHub Pages
# id: deployment
# uses: actions/deploy-pages@v4
publish-indexes:
needs: [ build, deploy ]
runs-on: ubuntu-latest
container:
image: registry.jetbrains.team/p/writerside/builder/algolia-publisher:2.0.32-3
steps:
- name: Download artifact
uses: actions/download-artifact@v6
with:
name: docs
- name: 🔍 Publish Search Index
run: |
unzip -O UTF-8 -qq '${{ env.ALGOLIA_ARTIFACT }}' -d algolia-indexes
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