Skip to content

Deploy Documentation #22

Deploy Documentation

Deploy Documentation #22

name: Deploy Documentation
on:
workflow_dispatch:
permissions:
contents: read
pages: write
id-token: write
concurrency:
group: "pages"
cancel-in-progress: true
env:
DEVELOPER_DIR: /Applications/Xcode_15.2.app/Contents/Developer
jobs:
build:
runs-on: macos-14
steps:
- name: Checkout
uses: actions/checkout@v4
with:
submodules: recursive
- name: Setup Pages
uses: actions/configure-pages@v4
- name: Build Documentation
run: |
xcodebuild docbuild\
-scheme Runestone\
-destination 'generic/platform=iOS'\
-derivedDataPath ../DerivedData
- name: Process Archive
run: |
mkdir _site
$(xcrun --find docc) process-archive \
transform-for-static-hosting ../DerivedData/Build/Products/Debug-iphoneos/Runestone.doccarchive \
--output-path _site \
--hosting-base-path /
- name: Create Custom index.html
run: |
rm _site/index.html
cat > _site/index.html <<- EOM
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="refresh" content="0; url='https://docs.runestone.app/documentation/runestone/'" />
</head>
<body>
<p>Please follow <a href="https://docs.runestone.app/documentation/runestone/">this link</a>.</p>
</body>
</html>
EOM
- name: Upload Artifact
uses: actions/upload-pages-artifact@v3
deploy:
environment:
name: github-pages
url: ${{ steps.deployment.outputs.page_url }}
runs-on: ubuntu-latest
needs: build
steps:
- name: Deploy to GitHub Pages
id: deployment
uses: actions/deploy-pages@v4