Skip to content

Commit

Permalink
CI (#6)
Browse files Browse the repository at this point in the history
* Add CI testing for the build

* `linera-protocol`: use upstream trunk
  • Loading branch information
Twey authored Jun 5, 2024
1 parent c8da6dc commit 71ed7c6
Show file tree
Hide file tree
Showing 8 changed files with 70 additions and 17 deletions.
2 changes: 1 addition & 1 deletion .envrc
Original file line number Diff line number Diff line change
@@ -1 +1 @@
use flake
use flake '.?submodules=1'
51 changes: 51 additions & 0 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,51 @@
name: Build

on:
push:
branches: [ main ]
pull_request:
branches:
- "**"
paths-ignore:
- '*.md'
workflow_dispatch:

# This allows a subsequently queued workflow run to interrupt previous runs on pull-requests
concurrency:
group: '${{ github.workflow }} @ ${{ github.event.pull_request.head.label || github.head_ref || github.run_id }}'
cancel-in-progress: true

env:
CARGO_TERM_COLOR: always
CARGO_INCREMENTAL: 0
CARGO_NET_RETRY: 10
RUST_BACKTRACE: short
# We allow redundant explicit links because `cargo rdme` doesn't know how to resolve implicit intra-crate links.
RUSTDOCFLAGS: -A rustdoc::redundant_explicit_links -D warnings
# We will re-enable this once the client worker builds without warnings.
# RUSTFLAGS: -D warnings
RUSTUP_MAX_RETRIES: 10
RUST_LOG: warn

permissions:
contents: read

jobs:
test:
runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v4
with:
submodules: true
- uses: cachix/install-nix-action@v26
- uses: DeterminateSystems/magic-nix-cache-action@main
- name: Build the client worker
run: |
cd client-worker
nix develop '.?submodules=1' --override-input linera-protocol ../linera-protocol --command wasm-pack build --target web
- name: Build the extension
run: |
cd extension
nix develop --override-input linera-protocol ../linera-protocol --command pnpm install
nix develop --override-input linera-protocol ../linera-protocol --command pnpm build
2 changes: 1 addition & 1 deletion .gitmodules
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
[submodule "linera-protocol"]
path = linera-protocol
url = git@github.com:linera-io/linera-protocol
url = https://github.com/linera-io/linera-protocol
2 changes: 2 additions & 0 deletions client-worker/src/lib.rs
Original file line number Diff line number Diff line change
Expand Up @@ -91,6 +91,7 @@ impl ClientContext {
chain.timestamp,
chain.next_block_height,
chain.pending_block.clone(),
chain.pending_blobs.clone(),
)
}

Expand All @@ -108,6 +109,7 @@ impl ClientContext {
timestamp,
next_block_height: BlockHeight::ZERO,
pending_block: None,
pending_blobs: BTreeMap::default(),
});
}
}
Expand Down
10 changes: 8 additions & 2 deletions client-worker/src/wallet.rs
Original file line number Diff line number Diff line change
Expand Up @@ -6,8 +6,8 @@ use std::collections::{BTreeMap, HashMap};
use anyhow::Context as _;
use linera_base::{
crypto::{CryptoHash, CryptoRng, KeyPair, PublicKey},
data_types::{BlockHeight, Timestamp},
identifiers::{ChainDescription, ChainId, Owner},
data_types::{BlockHeight, HashedBlob, Timestamp},
identifiers::{BlobId, ChainDescription, ChainId, Owner},
};
use linera_chain::data_types::Block;
use linera_core::{client::ChainClient, node::LocalValidatorNodeProvider};
Expand Down Expand Up @@ -137,6 +137,7 @@ impl Wallet {
timestamp,
next_block_height: BlockHeight(0),
pending_block: None,
pending_blobs: BTreeMap::default(),
};
self.insert(user_chain);
Ok(())
Expand Down Expand Up @@ -168,6 +169,7 @@ impl Wallet {
next_block_height: state.next_block_height(),
timestamp: state.timestamp(),
pending_block: state.pending_block().clone(),
pending_blobs: state.pending_blobs().clone(),
},
);
}
Expand Down Expand Up @@ -199,6 +201,7 @@ pub struct UserChain {
pub timestamp: Timestamp,
pub next_block_height: BlockHeight,
pub pending_block: Option<Block>,
pub pending_blobs: BTreeMap<BlobId, HashedBlob>,
}

impl UserChain {
Expand All @@ -216,6 +219,7 @@ impl UserChain {
timestamp,
next_block_height: BlockHeight::ZERO,
pending_block: None,
pending_blobs: BTreeMap::default(),
}
}

Expand All @@ -227,6 +231,7 @@ impl UserChain {
timestamp: self.timestamp.clone(),
next_block_height: self.next_block_height.clone(),
pending_block: self.pending_block.clone(),
pending_blobs: self.pending_blobs.clone(),
}
}

Expand All @@ -240,6 +245,7 @@ impl UserChain {
timestamp,
next_block_height: BlockHeight::ZERO,
pending_block: None,
pending_blobs: BTreeMap::default(),
}
}
}
13 changes: 5 additions & 8 deletions flake.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

5 changes: 1 addition & 4 deletions flake.nix
Original file line number Diff line number Diff line change
Expand Up @@ -3,10 +3,7 @@
nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable";
flake-parts.url = "github:hercules-ci/flake-parts";
systems.url = "github:nix-systems/default";
linera-protocol = {
type = "git";
url = "file:linera-protocol?shallow=1&submodules=1";
};
linera-protocol.url = "path:linera-protocol";
};

outputs = inputs: inputs.flake-parts.lib.mkFlake { inherit inputs; } {
Expand Down
2 changes: 1 addition & 1 deletion linera-protocol
Submodule linera-protocol updated 143 files

0 comments on commit 71ed7c6

Please sign in to comment.