Publish Backstage TechDocs #359
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
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 | |
permissions: | |
contents: 'read' | |
id-token: 'write' | |
steps: | |
- name: Checkout Backstage | |
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4 | |
with: | |
repository: backstage/backstage | |
fetch-depth: 1 | |
- name: Setup Node 20.x | |
uses: actions/setup-node@39370e3970a6d050c480ffad4ff0ed4d3fdee5af # v4 | |
with: | |
node-version: 20.x | |
registry-url: https://registry.npmjs.org/ # Needed for auth | |
- name: Setup Python 3.9 | |
uses: actions/setup-python@0b93645e9fea7318ecaed2b359559ac225c90a2b # v5 | |
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: Clean Up Readmes | |
run: | | |
for i in README*.md; do | |
sed -i 's|docs/assets|assets|g' $i | |
sed -i 's|README.md|index.md|g' $i | |
done | |
- name: Copy Translated Readmes | |
run: | | |
mv README-*.md docs | |
- name: Generate TechDocs | |
run: techdocs-cli generate --no-docker --legacyCopyReadmeMdToIndexMd --verbose | |
- name: Login to Google Cloud Services | |
uses: 'google-github-actions/auth@6fc4af4b145ae7821d527454aa9bd537d1f2dc5f' # v2 | |
with: | |
credentials_json: ${{ secrets.TECHDOCS_GCS_CREDENTIALS_JSON }} | |
- name: Publish TechDocs | |
run: techdocs-cli publish --publisher-type googleGcs --storage-name ${{ secrets.TECHDOCS_GCS_BUCKET }} --entity default/component/backstage |