Skip to content

test ci

test ci #272

Workflow file for this run

---
name: ci-rust-sdk
on:
push:
branches: [dev, cid_cd_tests, 'feat*', 'release-*']
paths-ignore:
- '**.md'
pull_request:
branches: [dev, cid_cd_tests, 'feat*', 'release-*']
paths-ignore:
- '**.md'
jobs:
build_and_test:
strategy:
matrix:
#https://docs.github.com/en/actions/using-github-hosted-runners/about-github-hosted-runners#supported-runners-and-hardware-resources
os: [ubuntu-22.04]
node-version: [20.x]
runs-on: ${{ matrix.os }}
services:
# Label used to access the service container
casper-nctl:
# Docker Hub image
image: gregoshop/casper-nctl:2.0
ports:
- 11101-11105:11101-11105
- 14101-14105:14101-14105
- 18101-18105:18101-18105
- 25101-25105:25101-25105
- 28101-28105:28101-28105
volumes:
- ./assets/users:/app/casper-nctl/assets/net-1/users/
env:
RPC_ADDRESS: http://127.0.0.1:11101
EVENT_ADDRESS: http://127.0.0.1:18101/events
SPECULTATIVE_ADDRESS: http://127.0.0.1:25101
steps:
- name: Wait for the service to be ready
run: |
echo "Waiting for 10 seconds for nctl to boot and create accounts..."
sleep 10
# - name: List files in the users directory
# run: |
# echo "Listing files in the users directory of the service container..."
# docker exec ${{ job.services.casper-nctl.id }} ls /app/casper-nctl/assets/net-1/users/
# - name: List files in user-1 directory
# run: |
# echo "Listing files in ./assets/users/user-1/:"
# ls -la ./assets/users/user-1/
# WARNING: These accounts, and their private keys, are now publicly known.
# Any funds sent to them on Mainnet or any other live network WILL BE LOST.
- name: Set SECRET_KEY_USER_1 and SECRET_KEY_USER_2 environment variables
run: |
echo "SECRET_KEY_USER_1=$(sed -n '2p' ./assets/users/user-1/secret_key.pem)" >> $GITHUB_ENV
echo "SECRET_KEY_USER_2=$(sed -n '2p' ./assets/users/user-2/secret_key.pem)" >> $GITHUB_ENV
- name: Delete user-1 directory
run: |
echo "Deleting ./assets/ directory..."
sudo rm -rf ./assets/
- name: Print GITHUB_ENV
run: |
echo "Contents of GITHUB_ENV:"
cat $GITHUB_ENV
- uses: actions/checkout@v2
- uses: actions-rs/toolchain@v1
with:
toolchain: stable
profile: minimal
components: rustfmt, clippy
target: wasm32-unknown-unknown
- name: Fmt
uses: actions-rs/cargo@v1
with:
command: fmt
args: -- --check
- name: Audit
uses: actions-rs/cargo@v1
with:
command: audit
args: --deny warnings
- name: Lint
run: make check-lint
- name: Use Node.js ${{ matrix.node-version }}
uses: actions/setup-node@5b949b50c3461bbcd5a540b150c368278160234a #v3.4.0
with:
node-version: ${{ matrix.node-version }}
registry-url: 'https://registry.npmjs.org'
- name: Unit Tests
run: make test
- name: Integration Tests
run: make integration-test
- name: E2E Tests
run: make e2e-test
- name: Build lib for all targets
uses: actions-rs/cargo@v1
with:
command: build
args: --lib --all-targets
- name: Doc
run: make doc
- name: Github pages 🚀
uses: JamesIves/github-pages-deploy-action@ba1486788b0490a235422264426c45848eac35c6 #v4.4.1
with:
folder: docs # The folder the action should deploy.
target-folder: condor
commit-message: 'Deploy documentation for ${{ github.ref_name }}'
# - name: Install Electron
# run: |
# sudo apt-get install --no-install-recommends -y libopenjp2-tools
# sudo dpkg --add-architecture i386
# sudo mkdir -pm755 /etc/apt/keyrings
# sudo wget -O /etc/apt/keyrings/winehq-archive.key https://dl.winehq.org/wine-builds/winehq.key
# sudo wget -NP /etc/apt/sources.list.d/ https://dl.winehq.org/wine-builds/ubuntu/dists/jammy/winehq-jammy.sources
# sudo apt update
# sudo apt install --install-recommends winehq-stable
# - name: Install Wasm Pack
# run: curl https://rustwasm.github.io/wasm-pack/installer/init.sh -sSf | sh
# - name: Build packages and apps
# run: make build