on:
  release:
    types:
      - published

name: Publish to Production

jobs:
  publish:
    name: Publish to Production
    runs-on: ubuntu-latest

    steps:
      - name: Checkout
        uses: actions/checkout@v2

      - name: Use Node.js 16.8.0
        uses: actions/setup-node@v2
        with:
          node-version: 16.8.0
          registry-url: 'https://registry.npmjs.org'
          cache: npm

      - name: Install dependencies
        run: npm ci

      - name: Get version
        run: echo VERSION=$(node -pe "require('./package.json').version") >> $GITHUB_ENV

      - name: Build package for npm
        run: npm run build

      - name: Publish to npm
        run: npm publish --access public
        env:
          NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}

      - name: Build package for App Center
        run: npm run build
        env:
          INCLUDE_NODE_MODULES: true

      - name: Zip package
        run: zip ../zeplin-storybook-inspector.zip ./index.js
        working-directory: dist

      - name: Publish to App Center
        run: npm run deploy-to-appcenter -- -a Zeplin/Storybook-Inspector -f zeplin-storybook-inspector.zip -g All-users-of-Storybook-Inspector -b $VERSION --token ${{ secrets.APP_CENTER_TOKEN }}

