Skip to content

Improve Tuist project declaration (#5956) #443

Improve Tuist project declaration (#5956)

Improve Tuist project declaration (#5956) #443

# Build and deploy DocC to GitHub pages. Based off of PointFree's work here:
# https://github.com/pointfreeco/swift-parsing/blob/main/.github/workflows/documentation.yml
name: Deploy Tuist DocC
on:
workflow_dispatch: {}
push:
branches:
- main
concurrency:
group: tuist-docc-${{ github.head_ref }}
cancel-in-progress: true
jobs:
deploy:
name: Deploy Documentation
runs-on: macos-13
steps:
- name: Start deployment
uses: bobheadxi/deployments@v1
id: deployment
with:
env: production
step: start
- name: Checkout Package
uses: actions/checkout@v3
- name: Checkout all tuist versions
uses: actions/checkout@v3
with:
fetch-depth: 0
path: tuist-archive
- name: Select Xcode
run: sudo xcode-select -switch /Applications/Xcode_$(cat .xcode-version).app
- uses: jdx/mise-action@v2
with:
experimental: true
- name: Build documentation
run: bash ./make/tasks/github/build-docc.sh
- name: Fix permissions
run: 'sudo chown -R $USER .build/documentation'
- name: Publish to Cloudflare Pages
uses: cloudflare/pages-action@v1
with:
apiToken: ${{ secrets.CLOUDFLARE_API_TOKEN }}
accountId: cc0237353f2f825680b0463629cd4a86
projectName: tuist-docs
directory: .build/documentation
gitHubToken: ${{ secrets.GITHUB_TOKEN }}
wranglerVersion: '3'
- name: Finish deployment
uses: bobheadxi/deployments@v1
if: always()
with:
env: ${{ steps.deployment.outputs.env }}
step: finish
status: ${{ job.status }}
deployment_id: ${{ steps.deployment.outputs.deployment_id }}
env_url: "https://docs.tuist.io"