| name: Docs Deployment |
| |
| on: |
| push: |
| paths: |
| - "docs/**" |
| - "README.md" |
| branches: |
| - "master" |
| |
| workflow_dispatch: {} |
| |
| jobs: |
| config: |
| runs-on: ubuntu-24.04 |
| outputs: |
| has-secrets: ${{ steps.check.outputs.has-secrets }} |
| steps: |
| - name: "Check for secrets" |
| id: check |
| shell: bash |
| run: | |
| if [ -n "${{ (secrets.SUPERSET_SITE_BUILD != '' && secrets.SUPERSET_SITE_BUILD != '') || '' }}" ]; then |
| echo "has-secrets=1" >> "$GITHUB_OUTPUT" |
| fi |
| |
| build-deploy: |
| needs: config |
| if: needs.config.outputs.has-secrets |
| name: Build & Deploy |
| runs-on: ubuntu-24.04 |
| steps: |
| - name: "Checkout ${{ github.ref }} ( ${{ github.sha }} )" |
| uses: actions/checkout@v6 |
| with: |
| persist-credentials: false |
| submodules: recursive |
| - name: Set up Node.js |
| uses: actions/setup-node@v6 |
| with: |
| node-version-file: './docs/.nvmrc' |
| - name: Setup Python |
| uses: ./.github/actions/setup-backend/ |
| - uses: actions/setup-java@v5 |
| with: |
| distribution: 'zulu' |
| java-version: '21' |
| - name: Install Graphviz |
| run: sudo apt-get install -y graphviz |
| - name: Compute Entity Relationship diagram (ERD) |
| env: |
| SUPERSET_SECRET_KEY: not-a-secret |
| run: | |
| python scripts/erd/erd.py |
| curl -L http://sourceforge.net/projects/plantuml/files/1.2023.7/plantuml.1.2023.7.jar/download > ~/plantuml.jar |
| java -jar ~/plantuml.jar -v -tsvg -r -o "${{ github.workspace }}/docs/static/img/" "${{ github.workspace }}/scripts/erd/erd.puml" |
| - name: yarn install |
| working-directory: docs |
| run: | |
| yarn install --check-cache |
| - name: yarn build |
| working-directory: docs |
| run: | |
| yarn build |
| - name: deploy docs |
| uses: ./.github/actions/github-action-push-to-another-repository |
| env: |
| API_TOKEN_GITHUB: ${{ secrets.SUPERSET_SITE_BUILD }} |
| with: |
| source-directory: "./docs/build" |
| destination-github-username: "apache" |
| destination-repository-name: "superset-site" |
| target-branch: "asf-site" |
| commit-message: "deploying docs: ${{ github.event.head_commit.message }} (apache/superset@${{ github.sha }})" |
| user-email: dev@superset.apache.org |