Skip to content

Deployment

Deployment #105

Workflow file for this run

name: Deployment
concurrency: production
on:
# Allows you to run this workflow manually from the Actions tab
workflow_dispatch:
jobs:
deploy:
runs-on: ubuntu-latest
environment: production
steps:
- uses: actions/checkout@v4
with:
fetch-depth: 0 # Fetch all history for all tags and branches
- name: read node version from the .nvmrc file
run: echo ::set-output name=NODE_VERSION::$(cat .nvmrc)
shell: bash
id: nvmrc
- uses: actions/setup-node@v4
with:
node-version: ${{steps.nvmrc.outputs.NODE_VERSION}}
# this line is required for the setup-node action to be able to run the npm publish below.
registry-url: 'https://registry.npmjs.org'
- name: Install
run: yarn install --frozen-lockfile
- name: Clean
run: yarn clean
- name: Test
run: yarn test
- name: Clean
run: yarn clean
- name: Build
run: yarn build:packages
- name: Publish
run: yarn deploy --yes
env:
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}
- name: Create Release Notes
run: yarn create-release-notes
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: 'Get message'
id: 'deploy_message'
run: |
echo "::set-output name=commit_msg::$(git log -1 --format=%B)"
echo "::set-output name=commit_sha::$(git log -1 --format=%H)"
- name: Slack Notify
uses: rtCamp/action-slack-notify@v2.2.0
env:
SLACK_WEBHOOK: ${{ secrets.SLACK_WEBHOOK }}
SLACK_MESSAGE: ${{ steps.deploy_message.outputs.commit_msg }}
SLACK_USERNAME: Mux Elements
SLACK_ICON: https://avatars.githubusercontent.com/muxinc?size=48
SLACK_FOOTER: ''