This repository has been archived by the owner on Jul 16, 2024. It is now read-only.
Version Packages (#679) #631
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Main Flow | |
on: | |
push: | |
branches: [main] | |
# Allows you to run this workflow manually from the Actions tab | |
workflow_dispatch: | |
jobs: | |
build: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v3 | |
with: | |
fetch-depth: 0 | |
- name: Install nix | |
uses: cachix/install-nix-action@v22 | |
with: | |
nix_path: nixpkgs=channel:nixos-unstable | |
extra_nix_config: | | |
auto-optimise-store = true | |
keep-outputs = true | |
keep-derivations = true | |
- name: Cache nix | |
uses: cachix/cachix-action@v12 | |
with: | |
name: effect-ts | |
authToken: "${{ secrets.CACHIX_AUTH_TOKEN }}" | |
- name: Setup direnv | |
uses: HatsuneMiku3939/direnv-action@v1 | |
with: | |
direnvVersion: 2.32.2 | |
- name: Get pnpm store directory | |
id: pnpm-cache | |
run: | | |
echo "::set-output name=pnpm_cache_dir::$(pnpm store path)" | |
- uses: actions/cache@v3 | |
name: Cache pnpm | |
with: | |
path: ${{ steps.pnpm-cache.outputs.pnpm_cache_dir }} | |
key: ${{ runner.os }}-pnpm-store-${{ hashFiles('**/pnpm-lock.yaml') }} | |
restore-keys: | | |
${{ runner.os }}-pnpm-store- | |
- run: pnpm install | |
- run: pnpm run build | |
- run: pnpm run circular | |
- run: pnpm run test --coverage | |
- run: pnpm run lint | |
- run: pnpm run dtslint | |
- run: pnpm run docs | |
- name: Create Release Pull Request or Publish | |
id: changesets | |
uses: changesets/action@v1 | |
with: | |
version: pnpm run version | |
publish: pnpm exec changeset publish | |
env: | |
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
NPM_TOKEN: ${{ secrets.NPM_TOKEN }} |