Skip to content

New git branches setup #1273

New git branches setup

New git branches setup #1273

# Check the contract JS is in sync with the Rust version
name: contract_version
on:
pull_request:
branches: [main, dev, release/*]
paths:
- '**/package.json'
- '**/Cargo.toml'
- '.github/workflows/contract_version.yml'
workflow_dispatch:
concurrency:
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }}
cancel-in-progress: true
env:
CARGO_TERM_COLOR: always
ENVIRONMENT: development
GH_TOKEN: ${{ github.token }}
jobs:
check:
runs-on: ubuntu-latest
if: github.event.pull_request.draft == false
steps:
- name: Print contexts
env:
GITHUB_CONTEXT: ${{ toJson(github) }}
ENV_CONTEXT: ${{ toJson(env) }}
VARS_CONTEXT: ${{ toJson(vars) }}
JOB_CONTEXT: ${{ toJson(job) }}
STEPS_CONTEXT: ${{ toJson(steps) }}
RUNNER_CONTEXT: ${{ toJson(runner) }}
SECRETS_CONTEXT: ${{ toJson(secrets) }}
STRATEGY_CONTEXT: ${{ toJson(strategy) }}
MATRIX_CONTEXT: ${{ toJson(matrix) }}
NEEDS_CONTEXT: ${{ toJson(needs) }}
INPUTS_CONTEXT: ${{ toJson(inputs) }}
run: |
echo "******************************"
echo "github:" "$GITHUB_CONTEXT"
echo "******************************"
echo "env:" "$ENV_CONTEXT"
echo "******************************"
echo "vars:" "$VARS_CONTEXT"
echo "******************************"
echo "job:" "$JOB_CONTEXT"
echo "******************************"
echo "steps:" "$STEPS_CONTEXT"
echo "******************************"
echo "runner:" "$RUNNER_CONTEXT"
echo "******************************"
echo "secrets:" "$SECRETS_CONTEXT"
echo "******************************"
echo "strategy:" "$STRATEGY_CONTEXT"
echo "******************************"
echo "matrix:" "$MATRIX_CONTEXT"
echo "******************************"
echo "needs:" "$NEEDS_CONTEXT"
echo "******************************"
echo "inputs:" "$INPUTS_CONTEXT"
echo "******************************"
- uses: actions/checkout@v3
- name: Check contract version matches provider version
run: |
set -euxo pipefail # stop on errors, print commands, fail on pipe fails
# get the version of the contract in js pkg
for contract in contracts/*; do
echo "checking version in $contract"
jsVer=$(cat $contract/package.json | jq -r .version)
echo "js version: $jsVer"
# get the version of the contract in rust pkg
# assuming the contract version is the first version line in Cargo.toml
rustVer=$(cat protocol/contracts/$contract/Cargo.toml | grep -m 1 "version = " | cut -d '"' -f 2)
if [[ "$jsVer" != "$rustVer" ]]; then
echo "version mismatch: $jsVer != $rustVer"
exit 1
fi
done