name: armor-core-icons cd
permissions:
  contents: read # required to checkout the code from the repo
  checks: write

on:
  push:
    branches: ["master"]

jobs:
  pre-commit:
    name: Validation
    uses: cncsc/actions/.github/workflows/validation.yaml@main
    with:
      runPreCommit: true
      runDefaultLinters: false

  cd:
    runs-on: ubuntu-latest
    needs: pre-commit

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

      - name: Build
        uses: ./.github/templates/ci
        with:
          nodeversion: ${{ vars.NODE_VERSION }}

      - name: Configure SSH
        uses: webfactory/ssh-agent@v0.7.0
        with:
          ssh-private-key: ${{ secrets.CI_BOT_SSH_KEY }}
          log-public-key: false

      - name: Release Version
        env:
          GITHUB_TOKEN: ${{ secrets.GIT_TOKEN_BASIC }}
          NPM_TOKEN: ${{secrets.NPM_ACCESS_TOKEN}}
        run: npx semantic-release

      - name: Deploy
        run: |
          echo "//registry.npmjs.org/:_authToken=${{ secrets.NPM_ACCESS_TOKEN }}" > .npmrc
          npm publish .
          rm .npmrc
