Skip to content
This repository has been archived by the owner on Jan 27, 2025. It is now read-only.

Commit

Permalink
Release v4.3.0 (#474)
Browse files Browse the repository at this point in the history
* Web monitor (#442)

Overhaul of ol-cli, txs, to include realtime web monitor and some onboarding improvements.

 web: Finalize web view layout: Chain view, Node health view, Account view, Validator Set, Stdlib pending upgrades
 web: server serves the account.json file.
 cli: Refactor cli so that most modules are impl of the Node object
 cli: pilot subcommand to drive the apps depending on health checks
 cli: replace rocksdb caching with …. Json file
 cli: QA and patch health checks, more checks
 apps: swarm configs for: miner, txs, cli, as entrypoint --swarm-path <path> --swarm-persona <name>
 config: add source_path, db_path to .0L.toml
 config: breaking: new names for fields in .0L.toml: tx_configs, and tx_cost.
 txs: saving signed tx to file for future sending
 txs: relay subcommand for txs that were previously signed txs
 txs: autopay batch transactions on onboarding
 types: common 0L types are now in ol/types to prevent dependency cycles
 fixtures: fixtures is a lib, not can fetch mnemonics across crates . Update fixtures throughout, add more static files
 miner: validator wizard with reading from template, file or URL.
 libra-node: query for oracle upgrade
 libra-node: change log level on consensus timeouts

* Fix build warning (#446)

* Add 0L comments (#418) (#447)

* Jail refactor (#350)

 Creates a JailBit on every validator account
 Un-jailing can be done by validator after mining a threshold of blocks
 Creates a MinerList, separate from ValidatorList needed for resetting counters if lists diverge.
 FullnodeState is used for payment and uses MinerState for proof count, removing redundancy
 ValidatorUniverse VM can remove a validator
 ValidatorUniverse Validator can remove self from list
 ValidatorUniverse: a validator can add self to list, as long as has been mining above a threshold in epoch. #349
 Fix bug with fullnode able to increment count #337
 transaction for removing self from validator set
 transaction, rejoin for unjailing and adding to validator set
 Test for onboarding happy path
Will not do this in this update:

Reconfigure checks JailBit for eligibility in validator set
DOES NOT remove jailed validator from ValidatorUniverse
First need to upgrade to migrate state, so all accounts have JailedBit, before enforcing it in reconfigure.

* Autopay decimal scaling (#453)

txs: change to txs autopay_batch, onboarding
types: change to types/autopay type and methods for checking
stdlib:  AutoPay module: c changes, to use two decimals precision.
stdlib: AutoPay module: control flow for handling errors which could cause network halts

* Error module for logging errors (#455)

* Dirs shuffle (#456)

* moved vdf, cli, txs, miner, keygen to ./ol

* patch ci

* remove node js build

* Miner refactor (#457)

* downloading of release bins for ubuntu

* removed unused commands in miner

* rename OlCliConfig AppConfig

* CI mode for initializing app configs

* rename wizard -> onboard

* include keygen command

* Wizard refactor (#458)

* wizard refactor into own app

* fix getting machine IP error

* change vm log levels

* patch web monitor not starting if account doesn't exist on chain.

* add public.zip and download web-files

* pilot node starting control flow, miner starting control flow

* have write_configs return  a NodeConfig

* move keyscheme out of congfig/management/genesis to ol/keygen

* have user input upstream peer url for validator configs

* patch management start node and miner to use target/debug in dev mode

* migration util for 0L.toml (#472)

* Fullnodestate fixes (#466)

* deprecate inc_proof methods in fullnode state

* patch case_1_reconfig test

* Cli pilot command (#471)

* fix getting machine IP error

* have cli arg option for upstream peer url for validator configs

* mgmt start_node and start_miner to use target/debug for dev env

* make json rpc open by default

* Val Universe Transactions (#470)

* check autopay instruction add to < 100%

* autopay safety feature, abort on user deny autopay instruction

* patch autopay checking balance, patch IS_CI global

* rename validator universe tx scripts

* add error codes to validator universe join

* Txn list (#475)

* cli `query` can get an account's txs

* filter transactions by type. rename some scripts

* Pilot mb1 (#480)

* node.rs :: what_node_mode returns 'Validator' for swarm setup

* fixes for ol-cli commands for swarm init: initialize configs in swarm_temp and not in host root (issue 469)

* Patches from release candidate v4.3.0 (#478)

* txs error handling

* expiration time of onboarding transaction

* autopay script error code.

* add autopay disable command in txs

* patch miner running in swarm

Co-authored-by: Gökhan Şimşek <g.simsek@paralect.com>
Co-authored-by: lpgeiger <1364012+lpgeiger@users.noreply.github>
Co-authored-by: Keerthi Nelaturu <nelaturuk@gmail.com>
Co-authored-by: Shashank <shashank.motepalli@gmail.com>
Co-authored-by: ping <18786721@qq.com>
Co-authored-by: David Boreham <david@bozemanpass.com>
Co-authored-by: Martin B <82731659+mortonbits@users.noreply.github.com>
  • Loading branch information
8 people committed May 5, 2021
1 parent ea5be81 commit 3d620c4
Show file tree
Hide file tree
Showing 625 changed files with 36,869 additions and 7,211 deletions.
9 changes: 5 additions & 4 deletions .cargo/config
Original file line number Diff line number Diff line change
@@ -1,7 +1,3 @@
# Dramatically increases the link performance for the eventbus
[build]
rustflags = ["-C", "link-arg=-fuse-ld=lld"]

[alias]
x = "run --package x --bin x --"
xcheck = "run --package x --bin x -- check"
Expand All @@ -10,3 +6,8 @@ xfmt = "run --package x --bin x -- fmt"
xfix = "run --package x --bin x -- fix"
xtest = "run --package x --bin x -- test"
xlint = "run --package x --bin x -- lint"

# //////// 0L ////////
[target.'cfg(target_os = "linux")']
# Dramatically increases the link performance for the eventbus
rustflags = ["-C", "link-arg=-fuse-ld=lld"]
8 changes: 8 additions & 0 deletions .devcontainer/Dockerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
FROM mcr.microsoft.com/vscode/devcontainers/rust:1

# Install extra packages specified in ../util/setup.sh
RUN apt-get update && export DEBIAN_FRONTEND=noninteractive \
&& apt-get -y install --no-install-recommends build-essential cmake clang llvm secure-delete lld

USER vscode
RUN cargo install toml-cli
34 changes: 34 additions & 0 deletions .devcontainer/devcontainer.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
{
"name": "Rust",
"build": {
"dockerfile": "Dockerfile"
},
"runArgs": [ "--cap-add=SYS_PTRACE", "--security-opt", "seccomp=unconfined" ],

// Set *default* container specific settings.json values on container create.
"settings": {
"terminal.integrated.shell.linux": "/bin/bash",
"lldb.executable": "/usr/bin/lldb",
// VS Code don't watch files under ./target
"files.watcherExclude": {
"**/target/**": true
}
},

// Add the IDs of extensions you want installed when the container is created.
"extensions": [
"matklad.rust-analyzer",
"bungcip.better-toml",
"vadimcn.vscode-lldb",
"mutantdino.resourcemonitor"
],

// Use 'forwardPorts' to make a list of ports inside the container available locally.
// "forwardPorts": [],

// Use 'postCreateCommand' to run commands after the container is created.
// "postCreateCommand": "",

// Comment out connect as root instead. More info: https://aka.ms/vscode-remote/containers/non-root.
"remoteUser": "vscode"
}
1 change: 1 addition & 0 deletions .devcontainer/notes.md
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
We may need: `export NODE_ENV=prod` from setup.sh
38 changes: 0 additions & 38 deletions .github/workflows/build.depr

This file was deleted.

14 changes: 7 additions & 7 deletions .github/workflows/ci.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ jobs:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: actions/cache@v2
- uses: actions/cache@v2.1.4
with:
path: |
~/.cargo/registry
Expand All @@ -39,7 +39,7 @@ jobs:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: actions/cache@v2
- uses: actions/cache@v2.1.4
with:
path: |
~/.cargo/registry
Expand All @@ -56,13 +56,13 @@ jobs:
override: true
components: rustfmt, clippy
- name: Run Miner tests
run: cd miner && NODE_ENV=test cargo test
run: cd ol/miner && NODE_ENV=test cargo test
e2e:
name: E2E Tests
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: actions/cache@v2
- uses: actions/cache@v2.1.4
with:
path: |
~/.cargo/registry
Expand Down Expand Up @@ -90,7 +90,7 @@ jobs:
# steps:
# - uses: actions/checkout@v2
# # Uses the cache done in the parent job (compile) with the same "key"
# - uses: actions/cache@v2
# - uses: actions/cache@v2.1.4
# with:
# path: |
# ~/.cargo/registry
Expand All @@ -106,7 +106,7 @@ jobs:
# steps:
# - uses: actions/checkout@v2
# # Uses the cache done in the parent job (compile) with the same "key"
# - uses: actions/cache@v2
# - uses: actions/cache@v2.1.4
# with:
# path: |
# ~/.cargo/registry
Expand All @@ -123,7 +123,7 @@ jobs:
# - uses: actions/checkout@v2
# # Sets up a cache to be used on other subsequent jobs.
# # subsequent jobs must use the "needs" field and reference this job.id "compile".
# - uses: actions/cache@v2
# - uses: actions/cache@v2.1.4
# with:
# path: |
# ~/.cargo/registry
Expand Down
45 changes: 45 additions & 0 deletions .github/workflows/release.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
name: Publish

on:
push:
tags:
- '*'

env:
CARGO_TERM_COLOR: always
NODE_ENV: prod

jobs:
release:
name: Release for OLSF
runs-on: self-hosted

steps:
- uses: actions/checkout@v1
- uses: actions-rs/toolchain@v1
- uses: hecrj/setup-rust-action@v1
with:
rust-version: stable
components: rustfmt
- name: Build
run: RUSTC_WRAPPER=sccache make bins
- name: Upload binaries to github.com/release
uses: svenstaro/upload-release-action@v2
with:
repo_token: ${{ secrets.GITHUB_TOKEN }}
file: target/release/!(*.*)
file_glob: true
tag: ${{ github.ref }}
overwrite: true
- name: Web
run: zip -r web-monitor.zip ol/cli/web-monitor
- name: Upload Web Files
uses: svenstaro/upload-release-action@v2
with:
repo_token: ${{ secrets.GITHUB_TOKEN }}
file: web-monitor.zip
file_glob: true
tag: ${{ github.ref }}
overwrite: true


8 changes: 6 additions & 2 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -52,7 +52,11 @@ target-out-docker
# Doc generation output
*.md.old

#0L
# //////// 0L ////////
swarm_temp

# miner.toml
key_store.json
key_store.json

#vs code
.vscode/
3 changes: 0 additions & 3 deletions CODE_OF_CONDUCT.md

This file was deleted.

Loading

0 comments on commit 3d620c4

Please sign in to comment.