Skip to content

Meshery Integrations Updater #279

Meshery Integrations Updater

Meshery Integrations Updater #279

name: Meshery Integrations Updater
on:
push:
branches:
- "master"
paths:
- ".github/workflows/integrations-updater.yml"
schedule:
- cron: "0 0 * * *" # Run the job every day at midnight
workflow_dispatch:
# This workflow uses the service account: meshery-integrations-sheet@meshery-237716.iam.gserviceaccount.com
# See these instructions for setup - https://theoephraim.github.io/node-google-spreadsheet/#/getting-started/authentication
jobs:
integrations:
if: github.repository == 'meshery/meshery'
runs-on: ubuntu-22.04
# outputs:
# output1: ${{ steps.step1.outputs.test }}
# output2: ${{ steps.step2.outputs.test }}
steps:
- name: Checkout Meshery repo
uses: actions/checkout@master
with:
path: meshery
token: ${{ secrets.GH_ACCESS_TOKEN }}
- name: Checkout Layer5.io repo
uses: actions/checkout@master
with:
repository: layer5io/layer5
token: ${{ secrets.GH_ACCESS_TOKEN }}
path: layer5
- name: Checkout Meshery.io repo
uses: actions/checkout@master
with:
repository: meshery/meshery.io
token: ${{ secrets.GH_ACCESS_TOKEN }}
path: meshery.io
- name: Checkout cloud repo
uses: actions/checkout@master
with:
repository: layer5io/meshery-cloud
token: ${{ secrets.GH_ACCESS_TOKEN }}
path: meshery-cloud
- name: Build mesheryctl
working-directory: ./meshery/mesheryctl
run: make;
- name: Publish to meshery.io site
working-directory: ./meshery/mesheryctl
run: ./mesheryctl registry publish website ${{ secrets.INTEGRATION_SPREADSHEET_CRED }} 1DZHnzxYWOlJ69Oguz4LkRVTFM79kC2tuvdwizOJmeMw ../../meshery.io/integrations ../meshery.io/assets/images/integration -o js
- name: Pull latest changes from Meshery.io repo
working-directory: ./meshery.io
run: git pull origin master
- name: Commit changes to Meshery.io repo
uses: stefanzweifel/git-auto-commit-action@v5
with:
commit_user_name: l5io
repository: ./meshery.io
commit_user_email: [email protected]
commit_author: ${{ github.actor }} <${{ github.actor }}@users.noreply.github.com>
commit_options: "--signoff"
commit_message: "[Docs] Generated documentation for Integration"
branch: master
- name: Publish to Layer5.io site
working-directory: ./meshery/mesheryctl
run: ./mesheryctl registry publish website ${{ secrets.INTEGRATION_SPREADSHEET_CRED }} 1DZHnzxYWOlJ69Oguz4LkRVTFM79kC2tuvdwizOJmeMw ../layer5/src/collections/integrations ../layer5/src/collections/integrations -o mdx
- name: Pull latest changes from Layer5.io repo
working-directory: ./layer5
run: git pull origin master
- name: Commit changes to Layer5.io repo
uses: stefanzweifel/git-auto-commit-action@v5
with:
commit_user_name: l5io
repository: ./layer5
commit_user_email: [email protected]
commit_author: ${{ github.actor }} <${{ github.actor }}@users.noreply.github.com>
commit_options: "--signoff"
commit_message: "[Docs] Generated documentation for Integration"
branch: master
- name: Publish to Meshery docs
working-directory: ./meshery/mesheryctl
run: ./mesheryctl registry publish website ${{ secrets.INTEGRATION_SPREADSHEET_CRED }} 1DZHnzxYWOlJ69Oguz4LkRVTFM79kC2tuvdwizOJmeMw docs/_models docs/assets/img/integrations -o md
- name: Pull latest changes from Meshery repo
working-directory: ./meshery
run: git pull origin master
- name: Commit changes to Meshery repo
uses: stefanzweifel/git-auto-commit-action@v5
with:
commit_user_name: l5io
repository: ./meshery
commit_user_email: [email protected]
commit_author: ${{ github.actor }} <${{ github.actor }}@users.noreply.github.com>
commit_options: "--signoff"
commit_message: "[Docs] Generated documentation for Integration"
branch: master
- name: Publish to Meshery Cloud
working-directory: ./meshery/mesheryctl
run: ./mesheryctl registry publish remote-provider ${{ secrets.INTEGRATION_SPREADSHEET_CRED }} 1DZHnzxYWOlJ69Oguz4LkRVTFM79kC2tuvdwizOJmeMw ../meshery-cloud/meshmodels/models ../meshery-cloud/ui/public/img/meshmodels
- name: Pull latest changes from Meshery Cloud repo
working-directory: ./meshery-cloud
run: git pull origin master
- name: Commit changes to Cloud repo
uses: stefanzweifel/git-auto-commit-action@v5
with:
commit_user_name: l5io
repository: ./meshery-cloud
commit_user_email: [email protected]
commit_author: ${{ github.actor }} <${{ github.actor }}@users.noreply.github.com>
commit_options: "--signoff"
commit_message: "Models Updated"
branch: master
- name: Send Email on Model Publish Failure
if: failure()
uses: dawidd6/[email protected]
with:
server_address: smtp.gmail.com
server_port: 465
username: ${{ secrets.MAIL_USERNAME }}
password: ${{ secrets.MAIL_PASSWORD }}
subject: GitHub Actions - Workflow Failure
from: |
"Model Updater" <[email protected]>
to: [email protected]
body: |
The GitHub Actions workflow in ${{ github.repository }} has failed.
You can find more details in the GitHub Actions log ${{ github.workflow }}.