Skip to content

feat: Prototype calling Python UDFs from rust #1136

feat: Prototype calling Python UDFs from rust

feat: Prototype calling Python UDFs from rust #1136

on:
pull_request:
branches: [main]
merge_group:
branches: [main]
push:
branches: [main]
# Allow manual triggering of this workflow
workflow_dispatch:
# In cases of concurrent workflows running (consecutive pushes to PR)
# leave the latest workflow and cancel the other (older) workflows
# See https://docs.github.com/en/actions/using-jobs/using-concurrency
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
permissions:
actions: write
contents: read
name: Antora Docs
jobs:
docs_skip:
name: Docs Skip Duplicates
continue-on-error: true # Uncomment once integration is finished
runs-on: ubuntu-latest
# Map a step output to a job output
outputs:
should_skip: ${{ steps.skip_check.outputs.should_skip }}
run_id: ${{ fromJSON(steps.skip_check.outputs.skipped_by).id }}
steps:
- id: skip_check
uses: fkirc/skip-duplicate-actions@v5
with:
concurrent_skipping: "never"
skip_after_successful_duplicate: "false"
paths: '["docs-src/**", ".github/workflows/publish-antora-docs.yml"]'
do_not_skip: '["workflow_dispatch", "schedule"]'
run_antora_build:
name: Run Antora build and upload artifacts
needs: [docs_skip]
runs-on: ubuntu-latest
if: needs.docs_skip.outputs.should_skip != 'true' && github.event_name == 'pull_request'
steps:
- name: Checkout code
uses: actions/checkout@v3
- name: Checkout docs-site code
uses: actions/checkout@v3
with:
repository: kaskada-ai/docs-site
path: docs-site
- name: Update paths in antora-playbook.yml
uses: mikefarah/yq@master
with:
cmd: yq -i 'with(.content.sources[]; .url = "../" | del(.branches))' 'docs-site/antora-playbook.yml'
- name: Install Node.js
uses: actions/setup-node@v3
with:
node-version: "16"
- name: Install Antora
run: npm i antora
working-directory: docs-site
- name: Install npm dependencies
run: npm i
working-directory: docs-site
- name: Generate Site
run: npx antora --log-failure-level=warn antora-playbook.yml --stacktrace
working-directory: docs-site
- name: Upload artifacts
uses: actions/upload-artifact@v3
with:
name: docs-site
path: |
docs-site/build/site
run_antora_publish:
name: Run Publish Workflow at kaskada-ai/docs-site
needs: [docs_skip]
runs-on: ubuntu-latest
if: needs.docs_skip.outputs.should_skip != 'true' && github.ref == 'refs/heads/main'
steps:
- name: Call PR workflow in kaskada-ai/docs-site
uses: convictional/trigger-workflow-and-wait@v1.6.5
with:
owner: kaskada-ai
repo: docs-site
github_token: ${{ secrets.DOCS_TOKEN }}
workflow_file_name: publish.yml
ref: main
wait_interval: 10
propagate_failure: true
trigger_workflow: true
wait_workflow: true