Skip to content

Commit

Permalink
Merge branch 'master' into feature/block-timestamp
Browse files Browse the repository at this point in the history
  • Loading branch information
moul authored Sep 22, 2023
2 parents 93f39c9 + 8eeff73 commit 64bf7a2
Show file tree
Hide file tree
Showing 57 changed files with 1,098 additions and 134 deletions.
54 changes: 39 additions & 15 deletions .github/codecov.yml
Original file line number Diff line number Diff line change
@@ -1,30 +1,54 @@
codecov:
require_ci_to_pass: no
require_ci_to_pass: false
notify:
wait_for_ci: no
wait_for_ci: true

ignore:
- misc

comment: false # will use it later.
comment:
require_changes: false

coverage:
round: down
precision: 2
status:
project: off
patch: off
project:
default:
target: auto
threshold: 10 # Let's decrease this later.
base: parent
if_no_uploads: error
if_not_found: success
if_ci_failed: error
only_pulls: false
patch:
default:
target: auto
threshold: 100 # Allows PRs without tests, overall stats count.
base: auto
if_no_uploads: error
if_not_found: success
if_ci_failed: error
only_pulls: false

flags:
flag_management:
default_rules:
carryforward: true
tm2:
paths:
statuses:
- type: project
target: auto
threshold: 10 # Let's decrease this later.
- type: patch
target: auto # Allows PRs without tests, overall stats count.
threshold: 100
individual_flags:
- name: tm2
paths:
- tm2
after_n_builds: 4
gnovm:
paths:
- name: gnovm
paths:
- gnovm
after_n_builds: 9
gno.land:
paths:
- name: gno.land
paths:
- gno.land
after_n_builds: 3
1 change: 1 addition & 0 deletions .github/workflows/benchmark.yml
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@ on:
type: string
jobs:
benchmarks:
if: ${{ github.repository == 'gnolang/gno' }}
runs-on: [self-hosted, Linux, X64, benchmark-v1]
steps:
- name: checkout
Expand Down
7 changes: 4 additions & 3 deletions .github/workflows/db-tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ jobs:
strategy:
fail-fast: false
matrix:
go-version:
goversion:
- "1.20.x"
- "1.21.x"
tags:
Expand All @@ -29,10 +29,12 @@ jobs:
- fsdb
- boltdb
steps:
- uses: actions/checkout@v4

# golang
- uses: actions/setup-go@v4
with:
go-version: ${{ matrix.go-version }}
go-version: ${{ matrix.goversion }}

# leveldb
- name: install leveldb
Expand All @@ -46,6 +48,5 @@ jobs:
sudo dpkg -i *.deb
# test ./pkgs/db
- uses: actions/checkout@v4
- name: test ./tm2/pkg/db
run: go test -tags ${{ matrix.tags }} ./tm2/pkg/db/...
18 changes: 9 additions & 9 deletions .github/workflows/examples.yml
Original file line number Diff line number Diff line change
Expand Up @@ -21,51 +21,51 @@ jobs:
strategy:
fail-fast: false
matrix:
go-version:
goversion:
- "1.20.x"
- "1.21.x"
runs-on: ubuntu-latest
timeout-minutes: 30
steps:
- uses: actions/checkout@v4
- uses: actions/setup-go@v4
with:
go-version: ${{ matrix.go-version }}
- uses: actions/checkout@v4
go-version: ${{ matrix.goversion }}
- run: go install -v ./gnovm/cmd/gno
- run: go run ./gnovm/cmd/gno precompile --verbose ./examples
- run: go run ./gnovm/cmd/gno build --verbose ./examples
test:
strategy:
fail-fast: false
matrix:
go-version:
goversion:
- "1.20.x"
- "1.21.x"
# unittests: TODO: matrix with contracts
runs-on: ubuntu-latest
timeout-minutes: 30
steps:
- uses: actions/checkout@v4
- uses: actions/setup-go@v4
with:
go-version: ${{ matrix.go-version }}
- uses: actions/checkout@v4
go-version: ${{ matrix.goversion }}
- run: go install -v ./gnovm/cmd/gno
- run: go run ./gnovm/cmd/gno test --verbose ./examples
lint:
strategy:
fail-fast: false
matrix:
go-version:
goversion:
- "1.20.x"
- "1.21.x"
# unittests: TODO: matrix with contracts
runs-on: ubuntu-latest
timeout-minutes: 10
steps:
- uses: actions/checkout@v4
- uses: actions/setup-go@v4
with:
go-version: ${{ matrix.go-version }}
- uses: actions/checkout@v4
go-version: ${{ matrix.goversion }}
- run: go install -v ./gnovm/cmd/gno
# testing official directories, basically examples/ minus examples/.../x/.
- run: go run ./gnovm/cmd/gno lint --verbose ./examples/gno.land/p
Expand Down
2 changes: 2 additions & 0 deletions .github/workflows/gh-pages.yml
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,7 @@ concurrency:

jobs:
build:
if: ${{ github.repository == 'gnolang/gno' }} # Alternatively, validate based on provided tokens and permissions.
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
Expand All @@ -30,6 +31,7 @@ jobs:
path: ./misc/gendocs/godoc

deploy:
if: ${{ github.repository == 'gnolang/gno' }} # Alternatively, validate based on provided tokens and permissions.
runs-on: ubuntu-latest
environment:
name: github-pages
Expand Down
25 changes: 15 additions & 10 deletions .github/workflows/gnoland.yml
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,12 @@ on:
- "tm2/**.go"
- "gno.land/**"
- ".github/workflows/gnovm.yml"
# Until the codecov issue is resolved, it's essential to run the tests for gnovm, tm2, and gno.land concurrently.
- "gnovm/**"
- "tm2/**"
- "gno.land/**"
- "examples/**"
- ".github/workflows/**"
push:
branches: [ "master" ]

Expand All @@ -21,7 +27,7 @@ jobs:
strategy:
fail-fast: false
matrix:
go-version:
goversion:
- "1.20.x"
- "1.21.x"
goarch: [ "amd64" ]
Expand All @@ -35,10 +41,10 @@ jobs:
runs-on: ubuntu-latest
timeout-minutes: 5
steps:
- uses: actions/checkout@v4
- uses: actions/setup-go@v4
with:
go-version: ${{ matrix.go-version }}
- uses: actions/checkout@v4
go-version: ${{ matrix.goversion }}
- name: go install
working-directory: gno.land
run: GOOS=${{ matrix.goos }} GOARCH=${{ matrix.goarch }} go install ./cmd/${{ matrix.program }}
Expand All @@ -47,7 +53,7 @@ jobs:
strategy:
fail-fast: false
matrix:
go-version:
goversion:
- "1.20.x"
- "1.21.x"
args:
Expand All @@ -58,25 +64,24 @@ jobs:
runs-on: ubuntu-latest
timeout-minutes: 15
steps:
- uses: actions/checkout@v4
- uses: actions/setup-go@v4
with:
go-version: ${{ matrix.go-version }}
- uses: actions/checkout@v4
go-version: ${{ matrix.goversion }}
- name: test
working-directory: gno.land
run: |
export GOPATH=$HOME/go
export GOTEST_FLAGS="-v -p 1 -timeout=30m -coverprofile=coverage.out -covermode=atomic"
make ${{ matrix.args }}
- if: runner.os == 'Linux'
- if: ${{ runner.os == 'Linux' && matrix.goversion == '1.21.x' }}
uses: codecov/codecov-action@v3
with:
token: ${{ secrets.CODECOV_TOKEN }}
name: gno.land
flags: gno.land,gno.land-${{matrix.args}},go-${{ matrix.go-version }}
flags: gno.land-${{matrix.args}}
files: ./gno.land/coverage.out
#fail_ci_if_error: ${{ github.repository == 'gnolang/gno' }}
fail_ci_if_error: false # temporarily
fail_ci_if_error: ${{ github.repository == 'gnolang/gno' }}

docker-integration:
strategy:
Expand Down
26 changes: 16 additions & 10 deletions .github/workflows/gnovm.yml
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,12 @@ on:
- "gnovm/Makefile"
- "tm2/**.go"
- ".github/workflows/gnovm.yml"
# Until the codecov issue is resolved, it's essential to run the tests for gnovm, tm2, and gno.land concurrently.
- "gnovm/**"
- "tm2/**"
- "gno.land/**"
- "examples/**"
- ".github/workflows/**"
push:
branches: [ "master" ]

Expand All @@ -23,7 +29,7 @@ jobs:
strategy:
fail-fast: false
matrix:
go-version: # two latest versions
goversion: # two latest versions
- "1.20.x"
- "1.21.x"
goenv: # TODO: replace with pairs, so it's easier to read in the GH interface.
Expand All @@ -34,10 +40,10 @@ jobs:
runs-on: ubuntu-latest
timeout-minutes: 5
steps:
- uses: actions/checkout@v4
- uses: actions/setup-go@v4
with:
go-version: ${{ matrix.go-version }}
- uses: actions/checkout@v4
go-version: ${{ matrix.goversion }}
- name: go install
working-directory: gnovm
run: ${{ matrix.goenv }} go install ./cmd/${{ matrix.program }}
Expand All @@ -46,7 +52,7 @@ jobs:
strategy:
fail-fast: false
matrix:
go-version:
goversion:
- "1.20.x"
- "1.21.x"
args:
Expand All @@ -62,22 +68,22 @@ jobs:
runs-on: ubuntu-latest
timeout-minutes: 15
steps:
- uses: actions/checkout@v4
- uses: actions/setup-go@v4
with:
go-version: ${{ matrix.go-version }}
- uses: actions/checkout@v4
go-version: ${{ matrix.goversion }}
- name: test
working-directory: gnovm
run: |
export GOPATH=$HOME/go
export GOTEST_FLAGS="-v -p 1 -timeout=30m -coverprofile=coverage.out -covermode=atomic"
make ${{ matrix.args }}
- if: runner.os == 'Linux'
- if: ${{ runner.os == 'Linux' && matrix.goversion == '1.21.x' }}
uses: codecov/codecov-action@v3
with:
token: ${{ secrets.CODECOV_TOKEN }}
name: gnovm
flags: gnovm,gnovm-${{matrix.args}},go-${{ matrix.go-version }}
verbose: true
flags: gnovm-${{matrix.args}}
files: ./gnovm/coverage.out
#fail_ci_if_error: ${{ github.repository == 'gnolang/gno' }}
fail_ci_if_error: false # temporarily
fail_ci_if_error: ${{ github.repository == 'gnolang/gno' }}
22 changes: 11 additions & 11 deletions .github/workflows/misc.yml
Original file line number Diff line number Diff line change
Expand Up @@ -13,14 +13,14 @@ jobs:
lint:
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v4

- name: Install Go
uses: actions/setup-go@v4
with:
go-version: 1.21.x

- name: Checkout code
uses: actions/checkout@v4

- name: Lint
uses: golangci/golangci-lint-action@v3
with:
Expand All @@ -31,17 +31,17 @@ jobs:
fmt:
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v4

- name: Install Go
uses: actions/setup-go@v4
with:
go-version: 1.20.x
go-version: 1.21.x

- name: Install make
run: sudo apt-get install -y make

- name: Checkout code
uses: actions/checkout@v4

# prefill dependencies so that mod messages don't show up in make output
- name: Fetch dependencies
run: go mod download -modfile ./misc/devdeps/go.mod -x
Expand All @@ -61,13 +61,13 @@ jobs:
modtidy:
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v4

- name: Install Go
uses: actions/setup-go@v4
with:
go-version: 1.20.x

- name: Checkout code
uses: actions/checkout@v4
go-version: 1.21.x

- name: Check go.mods
run: |
Expand Down
Loading

0 comments on commit 64bf7a2

Please sign in to comment.