Skip to content

Merge pull request #252 from maretol/add-capture-images #48

Merge pull request #252 from maretol/add-capture-images

Merge pull request #252 from maretol/add-capture-images #48

Workflow file for this run

name: deploy production
on:
push:
branches:
- main
paths:
- 'pages/**'
- 'ogp-data-fetcher/**'
- 'cms-data-fetcher/**'
- '.github/workflows/deploy_prd.yaml'
env:
NODE_VERSION: 20.16.0
jobs:
changes:
runs-on: ubuntu-latest
environment:
name: prd
outputs:
pages: ${{ steps.filter.outputs.pages }}
ogp-data-fetcher: ${{ steps.filter.outputs.ogp-data-fetcher }}
cms-data-fetcher: ${{ steps.filter.outputs.cms-data-fetcher }}
workflow: ${{ steps.filter.outputs.workflow }}
steps:
- uses: actions/checkout@v4
- name: path filter
id: filter
uses: dorny/paths-filter@v3
with:
filters: |
pages:
- "pages/**"
- "packages/api-types/**"
ogp-data-fetcher:
- "ogp-data-fetcher/**"
- "packages/api-types/src/ogp_types.ts"
cms-data-fetcher:
- "cms-data-fetcher/**"
- "packages/api-types/src/cms_types.ts"
workflow:
- ".github/workflows/**"
deploy-pages:
needs: changes
if: ${{ needs.changes.outputs.pages == 'true' || needs.changes.outputs.workflow == 'true' }}
runs-on: ubuntu-latest
environment:
name: prd
defaults:
run:
working-directory: ./pages
steps:
- uses: actions/checkout@v4
- name: setup node
uses: actions/setup-node@v4
with:
node-version: ${{ env.NODE_VERSION }}
- name: npm ci
working-directory: ./
run: npm ci
- name: build
working-directory: ./
run: npm run build:page
- name: deploy by wrangler
id: deploy
uses: cloudflare/wrangler-action@v3
with:
apiToken: ${{ secrets.CF_API_TOKEN }}
accountId: ${{ secrets.CF_ACCOUNT_ID }}
workingDirectory: ./pages
command: pages deploy
- name: show done command
env:
CMD_OUTPUT: ${{ steps.deploy.outputs.command-output }}
run: echo $CMD_OUTPUT
deploy-ogp-data-fetcher:
needs: changes
if: ${{ needs.changes.outputs.ogp-data-fetcher == 'true' || needs.changes.outputs.workflow == 'true' }}
runs-on: ubuntu-latest
environment:
name: prd
defaults:
run:
working-directory: ./ogp-data-fetcher
steps:
- uses: actions/checkout@v4
- name: setup node
uses: actions/setup-node@v4
with:
node-version: ${{ env.NODE_VERSION }}
- name: deploy by wrangler
id: deploy
uses: cloudflare/wrangler-action@v3
with:
apiToken: ${{ secrets.CF_API_TOKEN }}
accountId: ${{ secrets.CF_ACCOUNT_ID }}
workingDirectory: ./ogp-data-fetcher
command: deploy
- name: show done command
env:
CMD_OUTPUT: ${{ steps.deploy.outputs.command-output }}
run: echo $CMD_OUTPUT
deploy-cms-data-fetcher:
needs: changes
if: ${{ needs.changes.outputs.cms-data-fetcher == 'true' || needs.changes.outputs.workflow == 'true' }}
runs-on: ubuntu-latest
environment:
name: prd
defaults:
run:
working-directory: ./cms-data-fetcher
steps:
- uses: actions/checkout@v4
- name: setup node
uses: actions/setup-node@v4
with:
node-version: ${{ env.NODE_VERSION }}
- name: deploy by wrangler
id: deploy
uses: cloudflare/wrangler-action@v3
with:
apiToken: ${{ secrets.CF_API_TOKEN }}
accountId: ${{ secrets.CF_ACCOUNT_ID }}
workingDirectory: ./cms-data-fetcher
command: deploy
- name: show done command
env:
CMD_OUTPUT: ${{ steps.deploy.outputs.command-output }}
run: echo $CMD_OUTPUT
status:
needs: [deploy-pages, deploy-ogp-data-fetcher, deploy-cms-data-fetcher]
if: always()
runs-on: ubuntu-latest
environment:
name: prd
steps:
- name: show status
run: echo "deployed"