Skip to content

Commit

Permalink
Merge branch 'main' into dependabot/go_modules/github.com/docker/dock…
Browse files Browse the repository at this point in the history
…er-24.0.0incompatible
  • Loading branch information
rootulp committed May 24, 2023
2 parents 519a803 + a9a0d36 commit f97622c
Show file tree
Hide file tree
Showing 51 changed files with 1,516 additions and 882 deletions.
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
name: CI and Release
name: ci-release

# Trigger on push events to main (i.e. merges), pushing new semantic version
# tags, all PRs, and manual triggers
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/docker-build-publish.yml
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
name: Docker Build & Publish
name: docker-build-publish

# Trigger on all push events, new semantic version tags, and all PRs
on:
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/github-pages.yml
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
name: github pages
name: github-pages

on:
push:
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/housekeeping.yml
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
name: Housekeeping
name: housekeeping

on:
# pull_request_target is used to allow forks write permissions when running
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
name: Protobuf
# Protobuf runs buf (https://buf.build/) lint and generate
# protobuf runs buf (https://buf.build/) lint and generate
# This workflow is only run when a .proto file has been changed
name: protobuf
on:
pull_request:
paths:
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/stale.yml
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
# TODO: Refactor to common workflow
name: "Close stale issues & pull requests"
name: stale
on:
schedule:
- cron: "0 0 * * *"
Expand Down
244 changes: 15 additions & 229 deletions .github/workflows/test.yml
Original file line number Diff line number Diff line change
@@ -1,262 +1,48 @@
name: Tests / Code Coverage
# Tests / Code Coverage workflow runs unit tests and uploads a code coverage
# report
# This workflow is run on pushes to main & every Pull Requests where a .go,
# .mod, .sum have been changed
name: test
on:
workflow_call:

env:
GO_VERSION: '1.20'

concurrency:
# do not cancel jobs from earlier commits for tags or the main branch
group: ${{ github.workflow }}-${{ !startsWith(github.ref, 'refs/tags/') &&
github.ref != 'refs/heads/main' }}
cancel-in-progress: true

jobs:
install-tparse:
test:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3

- uses: actions/setup-go@v4
with:
go-version: ${{ env.GO_VERSION }}
- name: Display go version
run: go version
- name: install tparse
run: >
export GO111MODULE="on" &&
go install github.com/mfridman/tparse@v0.12.1
- uses: actions/cache@v3.3.1
with:
path: ~/go/bin
key: ${{ runner.os }}-go-tparse-binary

# don't use cosmovisor until we have tests
# test-cosmovisor:
# runs-on: ubuntu-latest
# steps:
# - uses: actions/checkout@v3
# - uses: actions/setup-go@v4
# with:
# go-version: ${{ env.GO_VERSION }}
# - name: Display go version
# run: go version
# - uses: technote-space/get-diff-action@v6.1.2
# id: git_diff
# with:
# PREFIX_FILTER: |
# cosmovisor
# PATTERNS: |
# **/**.go
# go.mod
# go.sum
# - name: Run cosmovisor tests
# run: cd cosmovisor; make
# if: env.GIT_DIFF
- name: Run unit tests
run: make test

split-test-files:
test-coverage:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Create a file with all the pkgs
run: go list ./... > pkgs.txt
- name: Split pkgs into 4 files
run: split -d -n l/4 --elide-empty-files pkgs.txt pkgs.txt.part.
# cache multiple
- uses: actions/upload-artifact@v3
with:
name: "${{ github.sha }}-00"
path: ./pkgs.txt.part.00
- uses: actions/upload-artifact@v3
with:
name: "${{ github.sha }}-01"
path: ./pkgs.txt.part.01
- uses: actions/upload-artifact@v3
with:
name: "${{ github.sha }}-02"
path: ./pkgs.txt.part.02
- uses: actions/upload-artifact@v3
with:
name: "${{ github.sha }}-03"
path: ./pkgs.txt.part.03

tests:
runs-on: ubuntu-latest
needs: split-test-files
strategy:
fail-fast: false
matrix:
part: ["00", "01", "02", "03"]
steps:
- uses: actions/checkout@v3
- uses: actions/setup-go@v4
with:
go-version: ${{ env.GO_VERSION }}
- uses: technote-space/get-diff-action@v6.1.2
with:
PATTERNS: |
**/**.go
go.mod
go.sum
- uses: actions/download-artifact@v3
with:
name: "${{ github.sha }}-${{ matrix.part }}"
if: env.GIT_DIFF
- name: test & coverage report creation
run: >
cat pkgs.txt.part.${{ matrix.part }} |
xargs go test -mod=readonly -timeout 30m
-coverprofile=${{ matrix.part }}profile.out
-covermode=atomic
if: env.GIT_DIFF
- uses: actions/upload-artifact@v3
with:
name: "${{ github.sha }}-${{ matrix.part }}-coverage"
path: ./${{ matrix.part }}profile.out

upload-coverage-report:
runs-on: ubuntu-latest
needs: tests
steps:
- uses: actions/checkout@v3
- uses: technote-space/get-diff-action@v6.1.2
with:
PATTERNS: |
**/**.go
go.mod
go.sum
- uses: actions/download-artifact@v3
with:
name: "${{ github.sha }}-00-coverage"
if: env.GIT_DIFF
- uses: actions/download-artifact@v3
with:
name: "${{ github.sha }}-01-coverage"
if: env.GIT_DIFF
- uses: actions/download-artifact@v3
with:
name: "${{ github.sha }}-02-coverage"
if: env.GIT_DIFF
- uses: actions/download-artifact@v3
with:
name: "${{ github.sha }}-03-coverage"
if: env.GIT_DIFF
- run: |
cat ./*profile.out | grep -v "mode: atomic" >> coverage.txt
if: env.GIT_DIFF
- name: filter out DONTCOVER
# yamllint disable
run: |
(find . -type f -name '*.go' | xargs grep -l 'DONTCOVER') > excludelist.txt
find . -type f -name '*.pb.*' >> excludelist.txt
find . -type f -path './tests/mocks/*.go' >> excludelist.txt
while IFS= read -r filename; do
# trim filename
trimmedname=$(echo $filename | xargs)
echo "Excluding ${trimmedname} from coverage report..."
sed -i.bak "/$(echo $trimmedname | sed 's/\//\\\//g')/d" coverage.txt
done < excludelist.txt
# yamllint enable
if: env.GIT_DIFF
- uses: codecov/codecov-action@v3
- name: Generate coverage.txt
run: make test-coverage

- name: Uploade coverage.txt
uses: codecov/codecov-action@v3.1.4
with:
file: ./coverage.txt
if: env.GIT_DIFF

test-race:
runs-on: ubuntu-latest
needs: split-test-files
strategy:
fail-fast: false
matrix:
part: ["00", "01", "02", "03"]
steps:
- uses: actions/checkout@v3

- uses: actions/setup-go@v4
with:
go-version: ${{ env.GO_VERSION }}
- uses: technote-space/get-diff-action@v6.1.2
with:
PATTERNS: |
**/**.go
go.mod
go.sum
- uses: actions/download-artifact@v3
with:
name: "${{ github.sha }}-${{ matrix.part }}"
if: env.GIT_DIFF
- name: test & coverage report creation
run: >
cat pkgs.txt.part.${{ matrix.part }} |
xargs go test -mod=readonly -json -timeout 30m
-race -test.short > ${{ matrix.part }}-race-output.txt
if: env.GIT_DIFF
- uses: actions/upload-artifact@v3
with:
name: "${{ github.sha }}-${{ matrix.part }}-race-output"
path: ./${{ matrix.part }}-race-output.txt

race-detector-report:
runs-on: ubuntu-latest
needs: [test-race, install-tparse]
timeout-minutes: 5
steps:
- uses: actions/checkout@v3
- uses: technote-space/get-diff-action@v6.1.2
id: git_diff
with:
PATTERNS: |
**/**.go
go.mod
go.sum
- uses: actions/download-artifact@v3
with:
name: "${{ github.sha }}-00-race-output"
if: env.GIT_DIFF
- uses: actions/download-artifact@v3
with:
name: "${{ github.sha }}-01-race-output"
if: env.GIT_DIFF
- uses: actions/download-artifact@v3
with:
name: "${{ github.sha }}-02-race-output"
if: env.GIT_DIFF
- uses: actions/download-artifact@v3
with:
name: "${{ github.sha }}-03-race-output"
if: env.GIT_DIFF
- uses: actions/cache@v3.3.1
with:
path: ~/go/bin
key: ${{ runner.os }}-go-tparse-binary
if: env.GIT_DIFF
- name: Generate test report (go test -race)
run: cat ./*-race-output.txt | ~/go/bin/tparse
if: env.GIT_DIFF

# # todo(evan) add later
# liveness-test:
# runs-on: ubuntu-latest
# timeout-minutes: 10
# steps:
# - uses: actions/checkout@v3
# - uses: actions/setup-go@v4
# with:
# go-version: ${{ env.GO_VERSION }}
# - uses: technote-space/get-diff-action@v6.1.2
# id: git_diff
# with:
# PATTERNS: |
# **/**.go
# go.mod
# go.sum
# - name: start localnet
# run: |
# make clean build-simd-linux localnet-start
# if: env.GIT_DIFF
# - name: test liveness
# run: |
# ./contrib/localnet_liveness.sh 100 5 50 localhost
# if: env.GIT_DIFF
- name: Run unit tests in race mode
run: make test-race
9 changes: 3 additions & 6 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,6 @@ ldflags += $(LDFLAGS)

BUILD_FLAGS := -ldflags '$(ldflags)'


## help: Get more info on make commands.
help: Makefile
@echo " Choose a command run in "$(PROJECTNAME)":"
Expand Down Expand Up @@ -49,8 +48,6 @@ mod-verify: mod
GO111MODULE=on go mod verify
.PHONY: mod-verify



## proto-gen: Generate protobuf files. Requires docker.
proto-gen:
@echo "--> Generating Protobuf files"
Expand Down Expand Up @@ -120,11 +117,11 @@ test-bench:
@go test -mod=readonly -bench=. ./...
.PHONY: test-bench

## test-cover: Generate test coverage.txt
test-cover:
## test-coverage: Generate test coverage.txt
test-coverage:
@echo "--> Generating coverage.txt"
@export VERSION=$(VERSION); bash -x scripts/test_cover.sh
.PHONY: test-cover
.PHONY: test-coverage

## adr-gen: Download the ADR template from the celestiaorg/.github repo. Ex. `make adr-gen`
adr-gen:
Expand Down
8 changes: 4 additions & 4 deletions app/test/qgb_rpc_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -49,9 +49,9 @@ func TestQGBRPCQueries(t *testing.T) {
{
name: "last unbonding height",
req: func() error {
_, err := queryClient.LastUnbondingHeight(
_, err := queryClient.LatestUnbondingHeight(
context.Background(),
&types.QueryLastUnbondingHeightRequest{},
&types.QueryLatestUnbondingHeightRequest{},
)
return err
},
Expand Down Expand Up @@ -79,9 +79,9 @@ func TestQGBRPCQueries(t *testing.T) {
{
name: "last valset before nonce",
req: func() error {
_, err := queryClient.LastValsetRequestBeforeNonce(
_, err := queryClient.LatestValsetRequestBeforeNonce(
context.Background(),
&types.QueryLastValsetRequestBeforeNonceRequest{Nonce: 2},
&types.QueryLatestValsetRequestBeforeNonceRequest{Nonce: 2},
)
return err
},
Expand Down
Loading

0 comments on commit f97622c

Please sign in to comment.