Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat: integrate AuthDecode #634

Open
wants to merge 118 commits into
base: authdecode_2024
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
118 commits
Select commit Hold shift + click to select a range
bb50e3d
refactor: selective disclosure api (#380)
sinui0 Feb 8, 2024
29fb409
fix(tls-core): use non_exhaustive instead of private zst (#428)
sinui0 Feb 9, 2024
de4d024
Use logging filter, remove otel. (#422)
yuroitaki Feb 9, 2024
e19fb00
docs(tlsn-core): update Direction docs (#427)
sinui0 Feb 9, 2024
a439838
docs(tlsn-formats): remove dead argument docs (#429)
sinui0 Feb 9, 2024
82b9582
fix(tlsn-formats): prevent duplicate json array commitment (#432)
sinui0 Feb 12, 2024
98a3c4d
feat(tlsn-formats): default commit to entire http request/response (#…
sinui0 Feb 13, 2024
0d269ed
refactor(tlsn-examples): update hyper and use http prover (#434)
sinui0 Feb 13, 2024
c7abc8c
chore: bump deps (#430)
sinui0 Feb 13, 2024
309c37f
chore: v0.1.0-alpha.4 release prep (#437)
sinui0 Feb 13, 2024
1e99db8
Update notary server README for frequent q&a. (#441)
yuroitaki Feb 15, 2024
be24f58
Show basic html info response for notary server's root endpoint (#439)
heeckhau Feb 15, 2024
2372403
feat: separate transcript size limits (#435)
sinui0 Feb 21, 2024
eec9310
Update repo readme. (#450)
yuroitaki Feb 28, 2024
d7bc0e5
feat: interactive verifier example (#451)
heeckhau Feb 29, 2024
19e9c50
fix(tlsn-formats): fix commitment error caused by empty headers (#452)
sinui0 Mar 1, 2024
9a081c6
feat: automated network benches (#457)
sinui0 Mar 20, 2024
3e29a5b
feat: record layer preprocessing (#455)
sinui0 Mar 25, 2024
aa264a9
perf: Docker container for running benches + manual GitHub action (#460)
heeckhau Mar 26, 2024
173945d
Deployment of multiple stable versions (#459)
ntampakas Mar 29, 2024
9e041b8
Add branches info in readme. (#467)
yuroitaki Mar 29, 2024
a4c7760
Correct branch links in readme. (#469)
yuroitaki Mar 29, 2024
5c0a030
Add api key whitelist hot reloading and small touch-up (#458)
yuroitaki Apr 4, 2024
d53203e
docs: List interative example in the examples README (#471)
heeckhau Apr 8, 2024
b4334ad
chore: Bump versions for release alpha.5. (#470)
yuroitaki Apr 8, 2024
68b9474
fix: drop connection instead of manual close, enable deferred decrypt…
sinui0 Apr 9, 2024
f558d5b
Update rust cache in github action (#453)
heeckhau Apr 24, 2024
f63a74e
docs: misc fixups (#475)
themighty1 Apr 24, 2024
9fc0d91
docs: fix style (#476)
themighty1 Apr 25, 2024
c431865
docs: fix style in components (except tls) (#477)
themighty1 Apr 30, 2024
dc0b887
Fix clippy error from rust toolchain 1.78.0. (#481)
yuroitaki May 3, 2024
c157c2d
Use sync mutex for store in notary server (#482)
yuroitaki May 6, 2024
ea2a8fd
Update hyper dependencies for notary-server and all server fixtures (…
yuroitaki May 8, 2024
3506791
doc: update CONTRIBUTING.md (#483)
themighty1 May 8, 2024
23450a3
Setup discord example to show how to increase max transcript size. (#…
yuroitaki May 20, 2024
474d22a
ci: Refactor and improve CI build (#486)
heeckhau May 24, 2024
e19e445
fix(tlsn-server-fixture): update cert fixtures (#499)
sinui0 Jun 14, 2024
bff2a53
Add notary client crate (#489)
yuroitaki Jun 18, 2024
c80b440
refactor: restructure notary crates (#508)
yuroitaki Jun 25, 2024
c82cc4f
Fix cd script after notary folder restructuring. (#516)
yuroitaki Jun 25, 2024
d64dabb
chore: update notary cert (#519)
yuroitaki Jun 25, 2024
173f59b
chore: add rebase action (#515)
sinui0 Jun 25, 2024
44930c0
refactor(universal-hash): mpz upgrade (#502)
sinui0 Jun 13, 2024
76969bb
refactor(key-exchange): mpz upgrade (#496)
sinui0 Jun 13, 2024
d040341
refactor(cipher): mpz upgrade (#501)
sinui0 Jun 13, 2024
bd32c7b
refactor(prf): mpz upgrade (#497)
sinui0 Jun 14, 2024
bce09b8
chore(uid-mix): delete crate, moved to tlsn-utils (#506)
sinui0 Jun 18, 2024
5698d22
refactor(prf): relax hiding of transcript hash, optimize latency (#505)
sinui0 Jun 19, 2024
bd4ff5f
Adapt allocation to free squaring. (#507)
th4s Jun 19, 2024
58dc575
refactor(aead): mpz upgrade (#504)
sinui0 Jun 19, 2024
aa189ca
refactor(tls-mpc): mpz upgrade (#511)
sinui0 Jun 24, 2024
1741741
refactor(tlsn): mpz upgrade (#512)
sinui0 Jun 25, 2024
9828fbb
chore: remove stale test and clean up ci job (#514)
sinui0 Jun 25, 2024
4fdce7f
chore: update CI config
sinui0 Jun 25, 2024
cef1e38
chore: bump mpz version
sinui0 Jun 25, 2024
da0421d
Update Examples (#525)
heeckhau Jun 26, 2024
2f67592
chore: bump tlsn-utils (#522)
sinui0 Jun 26, 2024
3554db8
chore: release v0.1.0-alpha.6 (#523)
sinui0 Jun 26, 2024
44210c3
fix: miscellaneous fixes on documentations (#528)
yuroitaki Jul 9, 2024
d8401ee
cd: update executable path for easier debugging. (#520)
yuroitaki Jul 9, 2024
b24aea4
ci: add check to identify number of stable versions deployed (#532)
ntampakas Jul 16, 2024
7377eaf
fix: clippy gh action and linting (#531)
yuroitaki Jul 22, 2024
e14d0cf
refactor: consolidate workspaces (#537)
sinui0 Jul 23, 2024
040608b
fix: notary cd (#538)
sinui0 Jul 24, 2024
2205cb3
feat(tlsn-wasm): wasm bindings (#536)
sinui0 Jul 25, 2024
3201c38
feat(wasm): no-bundler flag (#546)
sinui0 Jul 29, 2024
bdebd7a
Remove unused AEAD error type. (#540)
th4s Jul 29, 2024
2d44cc4
docs: Fix links in README.md (#544)
th4s Jul 29, 2024
6031254
chore: cleanup after workspace consolidation
heeckhau Aug 1, 2024
7f46596
docs: fix and improve interactive example (#552)
heeckhau Aug 2, 2024
c8524d9
fix: correct paths following repo reorg (#554)
yuroitaki Aug 2, 2024
b9ae8f9
chore: extend tls certs perpetually (#555)
yuroitaki Aug 6, 2024
17e3168
docs: describe execution modes (#464)
themighty1 Aug 6, 2024
ab24a6d
Add `verify` for wasm `TlsProof` (#560)
th4s Aug 14, 2024
b3316de
fix: Repair wasm build. (#567)
th4s Aug 15, 2024
0a3a1db
chore: Temporarily disable deadlocked tests in aead (#547)
th4s Aug 15, 2024
cc01b24
fix: Check if already committed in `commit` (#568)
th4s Aug 15, 2024
6eaf4a3
feat: add protocol configuration negotiation (#513)
yuroitaki Aug 15, 2024
0b1eef1
docs: fix typos (#569)
themighty1 Aug 19, 2024
8fa593c
doc: added note about "format on save" to the contribution guide
heeckhau Aug 19, 2024
98a520d
doc: add section about linting to contribution guide
heeckhau Aug 20, 2024
d179150
refactor: modularize server-fixture (#563)
themighty1 Aug 21, 2024
32df138
fix: aead unit tests no longer deadlock
th4s Sep 2, 2024
9bbb2fb
feat: make defer-decryption default
th4s Sep 11, 2024
67dc7c8
chore(examples): remove examples, fix bug (#585)
sinui0 Sep 12, 2024
80a9a61
chore: add favicon to wasm-test-runner to avoid 404 in tests
heeckhau Sep 12, 2024
a4a0de0
ci: run test with debug logging, not the build
heeckhau Sep 12, 2024
53ff873
refactor(core): alpha.7 rewrite (#574)
sinui0 Sep 19, 2024
8f400bf
fix(wasm): Attestation.deserialize should return Attestation (#597)
0xtsukino Sep 20, 2024
e00828b
fix(verifier): correct error display (#599)
sinui0 Sep 20, 2024
79c00fc
chore: Remove clippy::blocks_in_conditions (#592)
valo Sep 25, 2024
3de203e
fix: clippy fix `too_long_first_doc_paragraph` in enum_builders
heeckhau Sep 26, 2024
6ed3337
fix(core): remove serde flatten
sinui0 Sep 30, 2024
b76b831
feat(wasm): clone getters (#600)
sinui0 Oct 1, 2024
17476bc
docs: rustfmt wrap_comments (#611)
sinui0 Oct 1, 2024
7de49c8
docs(core): additional documentation and examples (#613)
sinui0 Oct 1, 2024
6e20930
fix(wasm): remove presentation verify from test
sinui0 Oct 2, 2024
dfc1629
fix(examples): fix examples for alpha.7 release (#603)
heeckhau Oct 3, 2024
b724d6a
feat(wasm): expose presentation verifying key
sinui0 Oct 2, 2024
ca328fa
chore(notary): change fixture pub key to compressed form (#623)
yuroitaki Oct 3, 2024
43d2c04
chore: prepare alpha.7 release (#620)
sinui0 Oct 3, 2024
0596a9a
docs: correct foldername in examples readme (#624)
heeckhau Oct 3, 2024
4d5102b
chore: core-rewrite unit tests (#608)
yuroitaki Oct 3, 2024
a7a8a83
fix(notary): fix client issue of not being able to specify the notary…
ElusAegis Oct 4, 2024
2ac9de1
ci: generate coverage report
heeckhau Sep 26, 2024
61ff3a8
ci: Try codecov.io
heeckhau Oct 7, 2024
e90159f
feat: integrate AuthDecode
themighty1 Oct 10, 2024
c70f196
decouple authdecode from tlsn-core
themighty1 Oct 31, 2024
9b831d0
externalize preimage chunking/padding
themighty1 Nov 4, 2024
a4d498e
rename single-range to transcript
themighty1 Nov 5, 2024
2c50136
give poseidon a better name
themighty1 Nov 5, 2024
6317bc4
make builder fn fallible
themighty1 Nov 5, 2024
bb5701c
send field id with plaintext hash in request
themighty1 Nov 5, 2024
ce85024
change retval for blinder's as_inner
themighty1 Nov 5, 2024
ad50b39
make plaintext_hashes return an iter
themighty1 Nov 5, 2024
45c8f90
use let Some instead of match
themighty1 Nov 7, 2024
f0905c7
remove whitespace
themighty1 Nov 7, 2024
72b2673
fix Cargo.toml
themighty1 Nov 7, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
5 changes: 2 additions & 3 deletions .github/scripts/build-server.sh
Original file line number Diff line number Diff line change
Expand Up @@ -6,8 +6,7 @@ environment=$1

aws s3 sync .git s3://tlsn-deploy/$environment/.git --delete

cd notary-server
cargo build --release
aws s3 cp target/release/notary-server s3://tlsn-deploy/$environment/
cargo build -p notary-server --release
aws s3 cp ./target/release/notary-server s3://tlsn-deploy/$environment/

exit 0
4 changes: 2 additions & 2 deletions .github/scripts/deploy-server.sh
Original file line number Diff line number Diff line change
Expand Up @@ -4,11 +4,11 @@ set -ex
environment=$1
branch=$2

INSTANCE_ID=$(aws ec2 describe-instances --filters Name=tag:Name,Values=[tlsnotary-backend] --query "Reservations[*].Instances[*][InstanceId]" --output text)
INSTANCE_ID=$(aws ec2 describe-instances --filters Name=tag:Name,Values=[tlsnotary-backend-v1] Name=instance-state-name,Values=[running] --query "Reservations[*].Instances[*][InstanceId]" --output text)
aws ec2 create-tags --resources $INSTANCE_ID --tags "Key=$environment,Value=$branch"

COMMIT_HASH=$(git rev-parse HEAD)
DEPLOY_ID=$(aws deploy create-deployment --application-name tlsn-$environment --deployment-group-name tlsn-$environment-group --github-location repository=$GITHUB_REPOSITORY,commitId=$COMMIT_HASH --ignore-application-stop-failures --file-exists OVERWRITE --output text)
DEPLOY_ID=$(aws deploy create-deployment --application-name tlsn-$environment-v1 --deployment-group-name tlsn-$environment-v1-group --github-location repository=$GITHUB_REPOSITORY,commitId=$COMMIT_HASH --ignore-application-stop-failures --file-exists OVERWRITE --output text)

while true; do
STATUS=$(aws deploy get-deployment --deployment-id $DEPLOY_ID --query 'deploymentInfo.status' --output text)
Expand Down
33 changes: 33 additions & 0 deletions .github/scripts/modify-proxy.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
#!/bin/bash
# This script is triggered by Deploy server workflow in order to send an execution command of cd-scripts/modify_proxy.sh via AWS SSM to the proxy server

set -e

GH_OWNER="tlsnotary"
GH_REPO="tlsn"
BACKEND_INSTANCE_ID=$(aws ec2 describe-instances --filters Name=tag:Name,Values=[tlsnotary-backend-v1] Name=instance-state-name,Values=[running] --query "Reservations[*].Instances[*][InstanceId]" --output text)
PROXY_INSTANCE_ID=$(aws ec2 describe-instances --filters Name=tag:Name,Values=[tlsnotary-web] Name=instance-state-name,Values=[running] --query "Reservations[*].Instances[*][InstanceId]" --output text)
TAGS=$(aws ec2 describe-instances --instance-ids $BACKEND_INSTANCE_ID --query 'Reservations[*].Instances[*].Tags')

TAG=$(echo $TAGS | jq -r '.[][][] | select(.Key == "stable").Value')
PORT=$(echo $TAGS | jq -r '.[][][] | select(.Key == "port").Value')

COMMAND_ID=$(aws ssm send-command --document-name "AWS-RunRemoteScript" --instance-ids $PROXY_INSTANCE_ID --parameters '{"sourceType":["GitHub"],"sourceInfo":["{\"owner\":\"'${GH_OWNER}'\", \"repository\":\"'${GH_REPO}'\", \"getOptions\":\"branch:'${TAG}'\", \"path\": \"cd-scripts\"}"],"commandLine":["modify_proxy.sh '${PORT}' '${TAG}' "]}' --output text --query "Command.CommandId")

while true; do
SSM_STATUS=$(aws ssm list-command-invocations --command-id $COMMAND_ID --details --query "CommandInvocations[].Status" --output text)

if [ $SSM_STATUS != "Success" ] && [ $SSM_STATUS != "InProgress" ]; then
echo "Proxy modification failed"
aws ssm list-command-invocations --command-id $COMMAND_ID --details --query "CommandInvocations[].CommandPlugins[].{Status:Status,Output:Output}"
exit 1
elif [ $SSM_STATUS = "Success" ]; then
aws ssm list-command-invocations --command-id $COMMAND_ID --details --query "CommandInvocations[].CommandPlugins[].{Status:Status,Output:Output}"
echo "Success"
break
fi

sleep 2
done

exit 0
27 changes: 27 additions & 0 deletions .github/workflows/bench.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
name: Run Benchmarks
on:
# manual trigger
workflow_dispatch:

jobs:
run-benchmarks:
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v4

- name: Build Docker Image
run: |
docker build -t tlsn-bench . -f ./crates/benches/benches.Dockerfile

- name: Run Benchmarks
run: |
docker run --privileged -v ${{ github.workspace }}/crates/benches/:/benches tlsn-bench

- name: Upload runtime_vs_latency.html
uses: actions/upload-artifact@v4
with:
name: benchmark_graphs
path: |
./crates/benches/runtime_vs_latency.html
./crates/benches/runtime_vs_bandwidth.html
17 changes: 8 additions & 9 deletions .github/workflows/cd-server.yml
Original file line number Diff line number Diff line change
Expand Up @@ -44,13 +44,13 @@ jobs:
exit 1
fi

- name: Wait for test workflow to succeed
- name: Wait for integration test workflow to succeed
if: github.event_name == 'push'
uses: lewagon/[email protected]
with:
ref: ${{ github.ref }}
# Have to be specify '(notary-server)', as we are using matrix for build_and_test job in ci.yml, else it will fail, more details [here](https://github.com/lewagon/wait-on-check-action#check-name)
check-name: 'Build and test (notary-server)'
# More details [here](https://github.com/lewagon/wait-on-check-action#check-name)
check-name: 'Run tests release build'
repo-token: ${{ secrets.GITHUB_TOKEN }}
# How frequent (in seconds) this job will call GitHub API to check the status of the job specified at 'check-name'
wait-interval: 60
Expand All @@ -71,12 +71,6 @@ jobs:
uses: dtolnay/rust-toolchain@stable
with:
toolchain: stable
components: clippy

- name: Use caching
uses: Swatinem/[email protected]
with:
workspaces: ${{ matrix.package }} -> target

- name: Cargo build
run: |
Expand All @@ -85,3 +79,8 @@ jobs:
- name: Trigger Deployment
run: |
.github/scripts/deploy-server.sh ${{ steps.manipulate.outputs.env }} $GITHUB_REF_NAME

- name: Modify Proxy
if: ${{ steps.manipulate.outputs.env == 'stable' }}
run: |
.github/scripts/modify-proxy.sh
10 changes: 5 additions & 5 deletions .github/workflows/cd.yml
Original file line number Diff line number Diff line change
Expand Up @@ -16,18 +16,18 @@ jobs:
contents: read
packages: write
steps:
- name: Wait for test workflow to succeed
- name: Wait for integration test workflow to succeed
uses: lewagon/[email protected]
with:
ref: ${{ github.ref }}
# Have to be specify '(notary-server)', as we are using matrix for build_and_test job in ci.yml, else it will fail, more details [here](https://github.com/lewagon/wait-on-check-action#check-name)
check-name: 'Build and test (notary-server)'
# More details [here](https://github.com/lewagon/wait-on-check-action#check-name)
check-name: 'Run tests release build'
repo-token: ${{ secrets.GITHUB_TOKEN }}
# How frequent (in seconds) this job will call GitHub API to check the status of the job specified at 'check-name'
wait-interval: 60

- name: Checkout repository
uses: actions/checkout@v3
uses: actions/checkout@v4

- name: Log in to the Container registry
uses: docker/login-action@v2
Expand All @@ -49,4 +49,4 @@ jobs:
push: true
tags: ${{ steps.meta-notary-server.outputs.tags }}
labels: ${{ steps.meta-notary-server.outputs.labels }}
file: ./notary-server/notary-server.Dockerfile
file: ./crates/notary/server/notary-server.Dockerfile
149 changes: 98 additions & 51 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -13,82 +13,129 @@ on:
env:
CARGO_TERM_COLOR: always
CARGO_REGISTRIES_CRATES_IO_PROTOCOL: sparse
# We need a higher number of parallel rayon tasks than the default (which is 4)
# in order to prevent a deadlock, c.f.
# - https://github.com/tlsnotary/tlsn/issues/548
# - https://github.com/privacy-scaling-explorations/mpz/issues/178
# 32 seems to be big enough for the foreseeable future
RAYON_NUM_THREADS: 32

jobs:
build_and_test:
name: Build and test
if: ( ! github.event.pull_request.draft )
fmt:
name: Check formatting
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
package:
- components/integration-tests
- components/uid-mux
- components/cipher
- components/universal-hash
- components/aead
- components/key-exchange
- components/point-addition
- components/prf
- components/tls
- tlsn
- notary-server
include:
- package: components/integration-tests
release: true
- package: notary-server
release: true
- package: tlsn
all-features: true
defaults:
run:
working-directory: ${{ matrix.package }}
steps:
- name: Checkout repository
uses: actions/checkout@v3
uses: actions/checkout@v4

# We use nightly to support `imports_granularity` feature
- name: Install nightly rust toolchain with rustfmt
uses: dtolnay/rust-toolchain@stable
with:
toolchain: nightly
components: rustfmt

- name: "Check formatting"
- name: Use caching
uses: Swatinem/[email protected]

- name: Check formatting
run: cargo +nightly fmt --check --all
build-and-test:
name: Build and test
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v4

- name: Install stable rust toolchain
uses: dtolnay/rust-toolchain@stable
with:
toolchain: stable
components: clippy

- name: "Clippy"
run: cargo clippy --all-features --examples -- -D warnings

- name: Use caching
uses: Swatinem/[email protected]
uses: Swatinem/[email protected]

- name: Clippy
run: cargo clippy --all-features --all-targets -- -D warnings

- name: Build
run: cargo build --all-targets

- name: Test
run: cargo test
build-wasm:
name: Build and test wasm
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v4

- name: Install stable rust toolchain
uses: dtolnay/rust-toolchain@stable
with:
targets: wasm32-unknown-unknown
toolchain: stable

- name: Install nightly rust toolchain
uses: dtolnay/rust-toolchain@stable
with:
workspaces: ${{ matrix.package }} -> target
targets: wasm32-unknown-unknown,x86_64-unknown-linux-gnu
toolchain: nightly
components: rust-src

- name: Install chromedriver
run: |
sudo apt-get update
sudo apt-get install -y chromium-chromedriver

- name: "Build"
run: cargo build ${{ matrix.release && '--release' }}
- name: Install wasm-pack
run: curl https://rustwasm.github.io/wasm-pack/installer/init.sh -sSf | sh

- name: Use caching
uses: Swatinem/[email protected]

- name: "Test"
if: ${{ matrix.release != true }}
run: cargo test --lib --bins --tests --examples --workspace
- name: Run tests
run: |
cd crates/wasm-test-runner
./run.sh
tests-integration:
name: Run tests release build
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v4

- name: "Test all features"
if: ${{ matrix.release != true && matrix.all-features == true }}
run: cargo test --lib --bins --tests --examples --workspace --all-features
- name: Install stable rust toolchain
uses: dtolnay/rust-toolchain@stable
with:
toolchain: stable

- name: "Integration Test"
if: ${{ matrix.release == true }}
run: cargo test --release --tests
- name: Use caching
uses: Swatinem/[email protected]

- name: "Integration Test all features"
if: ${{ matrix.release == true && matrix.all-features == true }}
run: cargo test --release --tests --all-features
- name: Add custom DNS entry to /etc/hosts for notary TLS test
run: echo "127.0.0.1 tlsnotaryserver.io" | sudo tee -a /etc/hosts

- name: "Check that benches compile"
run: cargo bench --no-run
- name: Run integration tests
run: cargo test --profile tests-integration --workspace --exclude tlsn-tls-client --exclude tlsn-tls-core -- --include-ignored
coverage:
runs-on: ubuntu-latest
env:
CARGO_TERM_COLOR: always
steps:
- uses: actions/checkout@v4
- name: Install stable rust toolchain
uses: dtolnay/rust-toolchain@stable
with:
toolchain: stable
- name: Install cargo-llvm-cov
uses: taiki-e/install-action@cargo-llvm-cov
- name: Generate code coverage
run: cargo llvm-cov --all-features --workspace --lcov --output-path lcov.info
- name: Upload coverage to Codecov
uses: codecov/codecov-action@v4
with:
token: ${{ secrets.CODECOV_TOKEN }}
files: lcov.info
fail_ci_if_error: true
24 changes: 24 additions & 0 deletions .github/workflows/rebase.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
name: Automatic Rebase
on:
issue_comment:
types: [created]
jobs:
rebase:
name: Rebase
runs-on: ubuntu-latest
if: >-
github.event.issue.pull_request != '' &&
contains(github.event.comment.body, '/rebase') &&
github.event.comment.author_association == 'MEMBER'
steps:
- name: Checkout the latest code
uses: actions/checkout@v4
with:
token: ${{ secrets.GITHUB_TOKEN }}
fetch-depth: 0 # otherwise, you will fail to push refs to dest repo
- name: Automatic Rebase
uses: cirrus-actions/[email protected]
with:
autosquash: false
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
9 changes: 4 additions & 5 deletions .github/workflows/rustdoc.yml
Original file line number Diff line number Diff line change
Expand Up @@ -12,29 +12,28 @@ env:

jobs:
rustdoc:
if: ( ! github.event.pull_request.draft )
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4

- name: Install Rust Toolchain (Stable)
uses: dtolnay/rust-toolchain@stable
with:
toolchain: stable

- name: "rustdoc"
run: cd tlsn; cargo doc -p tlsn-core -p tlsn-prover -p tlsn-verifier --no-deps --all-features
run: cargo doc -p tlsn-core -p tlsn-prover -p tlsn-verifier --no-deps --all-features
# --target-dir ${GITHUB_WORKSPACE}/docs

# https://dev.to/deciduously/prepare-your-rust-api-docs-for-github-pages-2n5i
- name: "Add index file -> tlsn_prover"
run: |
echo "<meta http-equiv=\"refresh\" content=\"0; url=tlsn_prover\">" > tlsn/target/doc/index.html
echo "<meta http-equiv=\"refresh\" content=\"0; url=tlsn_prover\">" > target/doc/index.html

- name: Deploy
uses: peaceiris/actions-gh-pages@v3
if: ${{ github.ref == 'refs/heads/dev' }}
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
publish_dir: tlsn/target/doc/
publish_dir: target/doc/
# cname: rustdocs.tlsnotary.org
Loading