diff --git a/.github/workflows/techdocs.yml b/.github/workflows/techdocs.yml new file mode 100644 index 000000000..d05dce7f8 --- /dev/null +++ b/.github/workflows/techdocs.yml @@ -0,0 +1,44 @@ +name: 'Publish Backstage TechDocs' + +on: + workflow_dispatch: + + # Run Daily at 10:00 UTC time + schedule: + - cron: '0 10 * * *' + +concurrency: + group: ${{ github.workflow }}-${{ github.ref }} + cancel-in-progress: true + +jobs: + publish-techdocs-site: + runs-on: ubuntu-latest + + steps: + - name: Checkout Backstage + uses: actions/checkout@v3 + with: + repository: backstage/backstage + fetch-depth: 1 + + - name: use node.js 18.x + uses: actions/setup-node@v3 + with: + node-version: 18.x + registry-url: https://registry.npmjs.org/ # Needed for auth + - uses: actions/setup-python@v4 + with: + python-version: '3.9' + + - name: Install techdocs-cli + run: sudo npm install -g @techdocs/cli + + - name: Install mkdocs and mkdocs plugins + run: python -m pip install mkdocs-techdocs-core==1.* + + - name: Generate docs site + run: techdocs-cli generate --no-docker --verbose + + - name: Publish docs site + run: techdocs-cli publish --publisher-type googleGcs --storage-name ${{ secrets.TECHDOCS_GCS_BUCKET }} --entity default/component/backstage