Skip to content

fix(cli): recover incompatible vault daemons #381

fix(cli): recover incompatible vault daemons

fix(cli): recover incompatible vault daemons #381

Workflow file for this run

name: ci
on:
push:
branches: [main]
pull_request:
permissions:
contents: read
id-token: write
jobs:
ci:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v6
with:
fetch-depth: 0
- uses: pnpm/action-setup@v6
- uses: actions/setup-node@v6
with:
node-version: 24.15.0
cache: pnpm
- name: Install
run: pnpm install --frozen-lockfile
- name: Install Linux packaging tools
run: sudo apt-get update && sudo apt-get install --yes cpio rpm
- name: Prepare pinned Argon2 source
run: |
node scripts/prepare-argon2-source.mjs "$RUNNER_TEMP/argon2-20190702"
echo "INFLOW_ARGON2_SOURCE_DIR=$RUNNER_TEMP/argon2-20190702" >> "$GITHUB_ENV"
- name: Build vault peer verifier
run: node scripts/build-vault-peer-native.mjs
- name: Typecheck
run: pnpm typecheck
- name: Lint
run: pnpm lint
- name: Test
run: pnpm test
- name: Test native release asset contract
run: pnpm test:native-release-assets
- name: Changed-line coverage
if: github.event_name == 'pull_request'
run: pnpm coverage:changed
- name: Upload coverage to Codecov
uses: codecov/codecov-action@v6
with:
disable_search: true
use_oidc: true
files: packages/cli/coverage/lcov.info,packages/core/coverage/lcov.info
- name: Typedoc
run: pnpm typedoc
- name: Build
run: pnpm build
- name: Build Linux package
run: sudo env "PATH=$PATH" CI=1 "INFLOW_ARGON2_SOURCE_DIR=$INFLOW_ARGON2_SOURCE_DIR" pnpm build:linux-package
- name: Test packaged Linux vault
run: |
sudo rm -rf /opt/inflow-package-smoke
sudo mkdir /opt/inflow-package-smoke
sudo tar -xzf dist/linux/inflow-*-linux-*.tar.gz -C /opt/inflow-package-smoke --strip-components=1
sudo env "PATH=$PATH" CI=1 INFLOW_PACKAGED_EXECUTABLE=/opt/inflow-package-smoke/bin/inflow \
pnpm smoke:linux-packaged-vault
- name: Test Debian system vault
run: |
sudo dpkg -i dist/linux/inflow_*_amd64.deb
sudo swapoff -a
sudo env "PATH=$PATH" CI=1 INFLOW_PACKAGED_EXECUTABLE=/usr/bin/inflow pnpm smoke:linux-system-vault
- name: Test Debian package lifecycle
run: |
sudo test -d /var/lib/inflow
sudo test -f /var/lib/inflow-broker/private.der
sudo cp /var/lib/inflow-broker/public.der "$RUNNER_TEMP/inflow-broker-public.der"
sudo env DEBIAN_FRONTEND=noninteractive apt-get remove --yes inflow
sudo test -d /var/lib/inflow
sudo test -f /var/lib/inflow-broker/private.der
sudo env DEBIAN_FRONTEND=noninteractive apt-get install --yes "$PWD"/dist/linux/inflow_*.deb
sudo inflow vault status --format json | grep '"lock_state": "locked"'
sudo cmp /var/lib/inflow-broker/public.der "$RUNNER_TEMP/inflow-broker-public.der"
sudo env DEBIAN_FRONTEND=noninteractive apt-get purge --yes inflow
sudo test ! -e /var/lib/inflow
sudo test ! -e /var/lib/inflow-broker
sudo test ! -e /run/inflow
- name: Publish dry-run
if: github.event_name == 'push' && github.ref == 'refs/heads/main'
run: pnpm --filter @inflowpayai/inflow publish --dry-run --no-git-checks