node-replication 0.1.0

An operation-log based approach for data replication.
Documentation
stages:
  - build
  - test
  - bench

before_script:
  - 'which ssh-agent || ( apt-get update -y && apt-get install openssh-client -y )'
  - eval $(ssh-agent -s)
  - echo "$SSH_PRIVATE_KEY" | tr -d '\r' | ssh-add -

build:
  stage: build
  script:
    # Dependency for node-replication
    - sudo apt install libhwloc-dev gnuplot libfuse-dev liburcu-dev liburcu6 pkg-config --yes
    - cargo build

test:
  stage: test
  script:
    - cargo +nightly fmt -- --check
    - timeout 1h cargo test
    - cargo bench --no-run
  dependencies:
    - build
  variables:
    GIT_STRATEGY: fetch

benchmark:skylake2x:
  stage: bench
  script:
    - bash scripts/ci.bash
  dependencies:
    - test
  variables:
    GIT_STRATEGY: fetch
  tags:
    - skylake2x

benchmark:skylake4x:
  stage: bench
  script:
    - bash scripts/ci.bash
  dependencies:
    - test
  variables:
    GIT_STRATEGY: fetch
  tags:
    - skylake4x