Skip to content

Commit

Permalink
ci: add some of the ci checks done on node
Browse files Browse the repository at this point in the history
  • Loading branch information
maschad committed Jan 29, 2025
1 parent 0da4c7f commit ba8241b
Show file tree
Hide file tree
Showing 6 changed files with 168 additions and 0 deletions.
48 changes: 48 additions & 0 deletions .codecov.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,48 @@
codecov:
require_ci_to_pass: true

coverage:
precision: 2
round: down
range: "70...100"

status:
project:
default:
target: auto
threshold: 1%
base: auto
branches:
- main
if_ci_failed: error
informational: false
only_pulls: false

patch:
default:
target: auto
threshold: 1%
base: auto
if_ci_failed: error
only_pulls: true

changes: false

comment:
layout: "diff, flags, files"
behavior: default
require_changes: false
require_base: false
require_head: true
hide_project_coverage: false

parsers:
gcov:
branch_detection:
conditional: true
loop: true
macro: false
method: false

github_checks:
annotations: true
17 changes: 17 additions & 0 deletions .github/dependabot.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
version: 2
updates:
- package-ecosystem: "cargo"
directory: "/"
schedule:
interval: "weekly"
# Ignoring these dependencies until we have more comprehensive testing
# See: https://github.com/atoma-network/atoma-node/pull/366
ignore:
- dependency-name: "sui-*"
# Ignore all Sui related packages

# Optionally keep Actions up to date too
- package-ecosystem: "github-actions"
directory: "/"
schedule:
interval: "weekly"
52 changes: 52 additions & 0 deletions .github/workflows/coverage.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,52 @@
name: Coverage

on: [push, pull_request]

env:
toolchain: nightly-2024-11-14
CARGO_HTTP_MULTIPLEXING: false
CARGO_TERM_COLOR: always
CARGO_UNSTABLE_SPARSE_REGISTRY: true
CARGO_INCREMENTAL: 0
TERM: unknown

concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true

jobs:
coverage:
runs-on: ubuntu-22.04
services:
postgres:
image: postgres:13
env:
POSTGRES_DB: atoma
POSTGRES_USER: atoma
POSTGRES_PASSWORD: atoma
ports:
- 5432:5432
options: >-
--health-cmd pg_isready
--health-interval 10s
--health-timeout 5s
--health-retries 5
steps:
- uses: actions/checkout@v4

- name: Install system dependencies
run: |
sudo apt-get update
sudo apt-get install -y pkg-config libtss2-dev
- name: Install cargo-llvm-cov
run: cargo install cargo-llvm-cov

- name: Generate coverage
run: cargo llvm-cov --all-features --workspace --lcov --output-path lcov.info

- name: Upload to Codecov
uses: codecov/codecov-action@v4
with:
token: ${{ secrets.CODECOV_TOKEN }}
files: lcov.info
19 changes: 19 additions & 0 deletions .github/workflows/deny.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
name: CI
on: [push, pull_request]
jobs:
cargo-deny:
runs-on: ubuntu-22.04
strategy:
matrix:
checks:
- advisories
- bans licenses sources

# Prevent sudden announcement of a new advisory from failing ci:
continue-on-error: ${{ matrix.checks == 'advisories' }}

steps:
- uses: actions/checkout@v4.2.2
- uses: EmbarkStudios/cargo-deny-action@v2.0.4
with:
command: check ${{ matrix.checks }}
32 changes: 32 additions & 0 deletions .github/workflows/e2e.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
name: End-to-end testing
on:
workflow_dispatch:

concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true

jobs:
run-atoma-e2e-tests:
name: Run Atoma e2e tests
if: github.event_name == 'workflow_dispatch'
runs-on: ${{ fromJSON(github.repository == 'atoma-network/atoma-node' && '["self-hosted", "linux", "x64", "4xlarge"]' || '"ubuntu-latest"') }}
strategy:
matrix:
flavour: [chromium, native]
steps:
- uses: actions/checkout@v4

- uses: docker/setup-buildx-action@v3

- name: Build ${{ matrix.flavour }} image
run: ./scripts/build-e2e-image.sh
env:
AWS_BUCKET_NAME: ${{ vars.S3_ATOMA_BUILD_CACHE_BUCKET_NAME }}
AWS_ACCESS_KEY_ID: ${{ vars.S3_ATOMA_BUILD_CACHE_AWS_ACCESS_KEY_ID }}
AWS_SECRET_ACCESS_KEY: ${{ secrets.S3_ATOMA_BUILD_CACHE_AWS_SECRET_ACCESS_KEY }}
AWS_REGION: ${{ vars.S3_ATOMA_BUILD_CACHE_AWS_REGION }}
FLAVOUR: ${{ matrix.flavour }}

- name: Run ${{ matrix.flavour }} tests
uses: atoma-network/atoma-testground/.github/actions/run-chat-completion-request@master
Empty file added deny.toml
Empty file.

0 comments on commit ba8241b

Please sign in to comment.