# Copyright 2021 Collate # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # http://www.apache.org/licenses/LICENSE-2.0 # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. name: Sync publish docs on: push: branches: - main paths: - openmetadata-docs/** workflow_dispatch: jobs: sync-docs: runs-on: ubuntu-latest steps: - name: Checkout uses: actions/checkout@v4 - name: Push content id: push_content continue-on-error: true uses: cpina/github-action-push-to-another-repository@main env: SSH_DEPLOY_KEY: ${{ secrets.DOCS_V1_SSH_DEPLOY_KEY }} with: source-directory: openmetadata-docs/content/ target-directory: content/ destination-github-username: 'open-metadata' destination-repository-name: 'docs-v1' user-email: openmetadata@getcollate.io commit-message: See ORIGIN_COMMIT from $GITHUB_REF target-branch: main - name: Push images id: push_images continue-on-error: true uses: cpina/github-action-push-to-another-repository@main env: SSH_DEPLOY_KEY: ${{ secrets.DOCS_V1_SSH_DEPLOY_KEY }} with: source-directory: openmetadata-docs/images/ target-directory: public/images/ destination-github-username: 'open-metadata' destination-repository-name: 'docs-v1' user-email: openmetadata@getcollate.io commit-message: See ORIGIN_COMMIT from $GITHUB_REF target-branch: main - name: Prepare Collate content and partials id: prepare_collate continue-on-error: true run: cp -R openmetadata-docs/content/partials/ openmetadata-docs/content/v1.8.x/partials - name: Push content Collate id: push_content_collate continue-on-error: true uses: cpina/github-action-push-to-another-repository@main env: SSH_DEPLOY_KEY: ${{ secrets.DOCS_COLLATE_SSH_DEPLOY_KEY }} with: source-directory: openmetadata-docs/content/v1.8.x target-directory: content/ destination-github-username: 'open-metadata' destination-repository-name: 'docs-collate' user-email: collate@getcollate.io commit-message: See ORIGIN_COMMIT from $GITHUB_REF target-branch: main - name: Push images Collate id: push_images_collate continue-on-error: true uses: cpina/github-action-push-to-another-repository@main env: SSH_DEPLOY_KEY: ${{ secrets.DOCS_COLLATE_SSH_DEPLOY_KEY }} with: source-directory: openmetadata-docs/images/ target-directory: public/images/ destination-github-username: 'open-metadata' destination-repository-name: 'docs-collate' user-email: collate@getcollate.io commit-message: See ORIGIN_COMMIT from $GITHUB_REF target-branch: main - name: Slack on Failure if: ${{ steps.push_content.outcome != 'success' || steps.push_content_collate.outcome != 'success' || steps.prepare_collate.outcome != 'success' }} uses: slackapi/slack-github-action@v1.23.0 with: payload: | { "text": "🔥 Docs sync failed! 🔥" } env: SLACK_WEBHOOK_URL: ${{ secrets.SLACK_MONITOR_SLACK_WEBHOOK }} SLACK_WEBHOOK_TYPE: INCOMING_WEBHOOK - name: Force failure if: steps.push_content.outcome != 'success' run: | exit 1