name: Release

on:
    push:
        branches:
            - master
            - dev
            - devdev

jobs:
    release:
        runs-on: ubuntu-latest
        if: "!contains(github.event.head_commit.message, 'ci skip') && !contains(github.event.head_commit.message, 'skip ci')"
        steps:
            - uses: actions/checkout@v2
              with:
                  # Ensure that git uses your token with write access to the repo
                  token: ${{ secrets.GH_TOKEN }}

            - name: Prepare repository
              run: git fetch --unshallow --tags

            - name: Use Node.js 12.x
              uses: actions/setup-node@v1
              with:
                  node-version: 12.x

            - name: Cache node modules
              uses: actions/cache@v1
              with:
                  path: node_modules
                  key: npm-deps-${{ hashFiles('package-lock.json') }}
                  restore-keys: |
                      npm-deps-${{ hashFiles('package-lock.json') }}

            - name: Create Release
              env:
                  GH_TOKEN: ${{ secrets.GH_TOKEN }}
                  NPM_TOKEN: ${{ secrets.NPM_TOKEN }}
              run: |
                  npm ci
                  npx auto shipit
