name: Publish Docs on: push: branches: - main jobs: run: runs-on: ubuntu-latest env: NEXT_PUBLIC_STACK_URL: http://localhost:8102 NEXT_PUBLIC_STACK_PROJECT_ID: internal NEXT_PUBLIC_STACK_PUBLISHABLE_CLIENT_KEY: internal-project-publishable-client-key STACK_SECRET_SERVER_KEY: internal-project-secret-server-key STACK_SERVER_SECRET: 23-wuNpik0gIW4mruTz25rbIvhuuvZFrLOLtL7J4tyo STACK_EMAIL_HOST: 127.0.0.1 STACK_EMAIL_PORT: 2500 STACK_EMAIL_USERNAME: test STACK_EMAIL_PASSWORD: none STACK_EMAIL_SENDER: noreply@test.com STACK_DATABASE_CONNECTION_STRING: postgres://postgres:password@localhost:5432/stackframe STACK_DIRECT_DATABASE_CONNECTION_STRING: postgres://postgres:password@localhost:5432/stackframe permissions: write-all steps: - uses: actions/checkout@v3 - name: Setup Node.js v20 uses: actions/setup-node@v3 with: node-version: 20 - name: Setup pnpm uses: pnpm/action-setup@v3 with: version: 9.1.2 - name: Install dependencies run: pnpm install --frozen-lockfile - name: Create .env.production.local file for apps/backend run: cp apps/backend/.env.development apps/backend/.env.production.local - name: Create .env.production.local file for apps/dashboard run: cp apps/dashboard/.env.development apps/dashboard/.env.production.local - name: Create .env.production.local file for apps/e2e run: cp apps/e2e/.env.development apps/e2e/.env.production.local - name: Create .env.production.local file for examples/cjs-test run: cp examples/cjs-test/.env.development examples/cjs-test/.env.production.local - name: Create .env.production.local file for examples/demo run: cp examples/demo/.env.development examples/demo/.env.production.local - name: Create .env.production.local file for examples/docs-examples run: cp examples/docs-examples/.env.development examples/docs-examples/.env.production.local - name: Create .env.production.local file for examples/e-commerce run: cp examples/e-commerce/.env.development examples/e-commerce/.env.production.local - name: Create .env.production.local file for examples/middleware run: cp examples/middleware/.env.development examples/middleware/.env.production.local - name: Create .env.production.local file for examples/partial-prerendering run: cp examples/partial-prerendering/.env.development examples/partial-prerendering/.env.production.local - name: Create .env.production.local file for examples/supabase run: cp examples/supabase/.env.development examples/supabase/.env.production.local - name: Build run: pnpm build env: QUETZAL_API_KEY: ${{ secrets.QUETZAL_API_KEY }} - name: Check API is valid run: pnpm run fern check - name: Publish Docs env: FERN_TOKEN: ${{ secrets.FERN_TOKEN }} run: pnpm run fern generate --docs --log-level debug