Spaces:
Running
Running
name: deploy preview docs | |
on: | |
pull_request_target: | |
branches: | |
- main | |
paths: | |
- "fern/**" | |
jobs: | |
preview-docs: | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout repository | |
uses: actions/checkout@v4 | |
with: | |
ref: refs/pull/${{ github.event.pull_request.number }}/merge | |
- name: Setup Node.js | |
uses: actions/setup-node@v4 | |
with: | |
node-version: "18" | |
- name: Install Fern | |
run: npm install -g fern-api | |
- name: Generate Documentation Preview with Fern | |
id: generate_docs | |
env: | |
FERN_TOKEN: ${{ secrets.FERN_TOKEN }} | |
run: | | |
output=$(fern generate --docs --preview --log-level debug) | |
echo "$output" | |
# Extract the URL | |
preview_url=$(echo "$output" | grep -oP '(?<=Published docs to )https://[^\s]*') | |
# Set the output for the step | |
echo "::set-output name=preview_url::$preview_url" | |
- name: Comment PR with URL using github-actions bot | |
uses: actions/github-script@v4 | |
if: ${{ steps.generate_docs.outputs.preview_url }} | |
with: | |
script: | | |
const preview_url = '${{ steps.generate_docs.outputs.preview_url }}'; | |
const issue_number = context.issue.number; | |
github.issues.createComment({ | |
...context.repo, | |
issue_number: issue_number, | |
body: `Published docs preview URL: ${preview_url}` | |
}) | |