Skip to content

Publish

Publish #20

Workflow file for this run

name: Publish
on: [workflow_dispatch]
env:
WORKING_DIRECTORY: ./packages/toast-ui.grid
CACHED_DEPENDENCY_PATHS: ./packages/toast-ui.grid/node_modules
ROOT_DEPENDENCY_PATHS: ./node_modules
CACHED_BUILD_PATHS: ./packages/toast-ui.grid/dist
BUILD_CACHE_KEY: ${{ github.sha }}
jobs:
check-version:
name: Check package version
runs-on: ubuntu-latest
steps:
- name: Checkout branch
uses: actions/checkout@v2
- name: Use Node.js 15.x
uses: actions/setup-node@v1
with:
node-version: '15.x'
registry-url: https://registry.npmjs.org/
- name: Check package version
id: check
uses: PostHog/check-package-version@v2
with:
path: ${{ env.WORKING_DIRECTORY }}/
- name: Log when unchanged
if: steps.check.outputs.is-new-version == 'false'
run: 'echo "No version change"'
- name: Cancel Workflow
if: steps.check.outputs.is-new-version == 'false'
uses: andymckay/[email protected]
install_dependencies:
name: Install dependencies
runs-on: ubuntu-latest
steps:
- name: Checkout branch
uses: actions/checkout@v2
- name: install_dependencies
id: cache-keys
uses: ./.github/actions/install-dependencies
outputs:
root_cache_key: ${{ steps.cache-keys.outputs.root_cache_key }}
grid_cache_key: ${{ steps.cache-keys.outputs.grid_cache_key }}
build:
name: Build
needs: [install_dependencies]
runs-on: ubuntu-latest
steps:
- name: Checkout branch
uses: actions/checkout@v2
- name: build
uses: ./.github/actions/build-cache
with:
ROOT_CACHE_KEY: ${{ needs.install_dependencies.outputs.root_cache_key }}
GRID_CACHE_KEY: ${{ needs.install_dependencies.outputs.grid_cache_key }}
BUILD_CACHE_KEY: ${{ env.BUILD_CACHE_KEY }}
outputs:
root_cache_key: ${{ needs.install_dependencies.outputs.root_cache_key }}
grid_cache_key: ${{ needs.install_dependencies.outputs.grid_cache_key }}
push-tag:
needs: [check-version, build]
name: Push tag
runs-on: ubuntu-latest
steps:
- name: Checkout branch
uses: actions/checkout@v2
- name: Use Node.js 15.x
uses: actions/setup-node@v1
with:
node-version: '15.x'
registry-url: https://registry.npmjs.org/
- name: Get package version
id: version
uses: PostHog/check-package-version@v2
with:
path: ${{ env.WORKING_DIRECTORY }}/
- name: Create Tag
run: |
git config --local user.email "[email protected]"
git config --local user.name "jajugoguma"
git tag v${{ steps.version.outputs.committed-version }}
- name: Push changes
run: |
git push origin v${{ steps.version.outputs.committed-version }}
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
publish-package:
needs: [check-version, build]
name: Publish package
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: Publish package
uses: ./.github/actions/publish-package
with:
ROOT_CACHE_KEY: ${{ needs.build.outputs.root_cache_key }}
GRID_CACHE_KEY: ${{ needs.build.outputs.grid_cache_key }}
BUILD_CACHE_KEY: ${{ env.BUILD_CACHE_KEY }}
NODE_AUTH_TOKEN: ${{ secrets.NPM_AUTH_TOKEN }}
publish-cdn:
needs: [check-version, build]
name: Publish to CDN
runs-on: ubuntu-latest
steps:
- name: Checkout branch
uses: actions/checkout@v2
- name: Publish to CDN
uses: ./.github/actions/publish-to-cdn
with:
ROOT_CACHE_KEY: ${{ needs.build.outputs.root_cache_key }}
GRID_CACHE_KEY: ${{ needs.build.outputs.grid_cache_key }}
BUILD_CACHE_KEY: ${{ env.BUILD_CACHE_KEY }}
TOAST_CLOUD_TENENTID: ${{ secrets.TOAST_CLOUD_TENENTID }}
TOAST_CLOUD_STORAGEID: ${{ secrets.TOAST_CLOUD_STORAGEID }}
TOAST_CLOUD_USERNAME: ${{ secrets.TOAST_CLOUD_USERNAME }}
TOAST_CLOUD_PASSWORD: ${{ secrets.TOAST_CLOUD_PASSWORD }}
publish-docs:
needs: [check-version, build]
name: Publish documents
runs-on: ubuntu-latest
steps:
- name: Checkout branch
uses: actions/checkout@v2
- name: Publish documents
uses: ./.github/actions/publish-docs
with:
ROOT_CACHE_KEY: ${{ needs.build.outputs.root_cache_key }}
GRID_CACHE_KEY: ${{ needs.build.outputs.grid_cache_key }}
BUILD_CACHE_KEY: ${{ env.BUILD_CACHE_KEY }}
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}