Skip to content

chore(deps-dev): Bump release-it from 15.11.0 to 16.2.1 #166

chore(deps-dev): Bump release-it from 15.11.0 to 16.2.1

chore(deps-dev): Bump release-it from 15.11.0 to 16.2.1 #166

Workflow file for this run

name: Continuous Deployment
on:
workflow_dispatch:
inputs:
releaseType:
description: The type of release. Should be one of "major", "minor", "patch"
required: true
default: "patch"
pull_request:
branches:
- main
# Make sure we're not running multiple release steps at the same time as this can give issues with determining the next npm version to release.
# Ideally we only add this to the 'release' job so it doesn't limit PR runs, but github can't guarantee the job order in that case:
# "When concurrency is specified at the job level, order is not guaranteed for jobs or runs that queue within 5 minutes of each other."
concurrency:
group: react-native-bbs-signatures${{ github.ref }}-${{ github.repository }}-{{ github.event_name }}
cancel-in-progress: true
jobs:
validate:
runs-on: ubuntu-20.04
name: Validate
steps:
- name: Checkout react-native-bbs-signatures
uses: actions/checkout@v2
- name: Get yarn cache directory path
id: yarn-cache-dir-path
run: echo "::set-output name=dir::$(yarn cache dir)"
- uses: actions/cache@v2
id: yarn-cache # use this to check for `cache-hit` (`steps.yarn-cache.outputs.cache-hit != 'true'`)
with:
path: ${{ steps.yarn-cache-dir-path.outputs.dir }}
key: ${{ runner.os }}-yarn-${{ hashFiles('**/yarn.lock') }}
restore-keys: |
${{ runner.os }}-yarn-
- name: Setup node v16
uses: actions/setup-node@v2
with:
node-version: 16
- name: Install dependencies
run: yarn install
- name: Prettier
run: yarn check-format
- name: Check typescript
run: yarn check-types
native-tests:
runs-on: ubuntu-20.04
steps:
- name: Checkout ffi-bbs-signatures
uses: actions/checkout@v3
with:
repository: mattrglobal/ffi-bbs-signatures
path: ffi-bbs-signatures
- name: Checkout react-native-bbs-signatures
uses: actions/checkout@v3
with:
path: react-native-bbs-signatures
- name: Build ffi-bbs-signatures
uses: actions-rs/cargo@v1
with:
command: build
args: --release --manifest-path ffi-bbs-signatures/Cargo.toml
- name: Setup tests
run: |
mkdir react-native-bbs-signatures/cpp/tests/libs
mv ffi-bbs-signatures/target/release/libbbs.so react-native-bbs-signatures/cpp/tests/libs/libbbs.so
- name: Run native tests
run: |
cd react-native-bbs-signatures/cpp/tests
mkdir build
cd build
cmake ..
make
echo "Running BBS tests"
./bbs_test
echo "Tests exited with $?"
release:
runs-on: ubuntu-20.04
name: Release
needs: [validate, native-tests]
# Only run on workflow dispatch to main branch
if: github.ref == 'refs/heads/main' && github.repository == 'animo/react-native-bbs-signatures' && github.event_name == 'workflow_dispatch'
steps:
- name: Checkout react-native-bbs-signatures
uses: actions/checkout@v2
with:
fetch-depth: 0
- name: git config
run: |
git config user.name "@github-actions[bot]"
git config user.email "github-actions[bot]@users.noreply.github.com"
- name: Get yarn cache directory path
id: yarn-cache-dir-path
run: echo "::set-output name=dir::$(yarn cache dir)"
- uses: actions/cache@v2
id: yarn-cache # use this to check for `cache-hit` (`steps.yarn-cache.outputs.cache-hit != 'true'`)
with:
path: ${{ steps.yarn-cache-dir-path.outputs.dir }}
key: ${{ runner.os }}-yarn-${{ hashFiles('**/yarn.lock') }}
restore-keys: |
${{ runner.os }}-yarn-
- name: Setup node v16
uses: actions/setup-node@v2
with:
node-version: 16
- name: Install dependencies
run: yarn install
# https://github.com/yarnpkg/yarn/issues/6617#issuecomment-436222106
- name: Prepend Node path
run: npm config set scripts-prepend-node-path true
- name: Set Verbose Logging
run: npm config set loglevel verbose --global
- name: Set NPM config
run: |
echo "//registry.npmjs.org/:_authToken=${{secrets.NPM_TOKEN}}" >> .npmrc
echo "registry=https://registry.npmjs.org/" >> .npmrc
echo "always-auth=true" >> .npmrc
- name: Install dependencies
run: yarn install --frozen-lockfile
- name: Build the library
run: yarn build
# On manual workflow dispatch release stable version
- name: Release version
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
run: yarn release ${{ github.event.inputs.releaseType }}