Skip to content

Commit

Permalink
test: fix sims (#21735)
Browse files Browse the repository at this point in the history
(cherry picked from commit 0147347)

# Conflicts:
#	.github/workflows/sims-052.yml
  • Loading branch information
julienrbrt authored and mergify[bot] committed Sep 15, 2024
1 parent 150d17c commit 59b6f78
Show file tree
Hide file tree
Showing 4 changed files with 170 additions and 4 deletions.
146 changes: 146 additions & 0 deletions .github/workflows/sims-052.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,146 @@
name: Sims release/0.52.x
# Sims workflow runs multiple types of simulations (nondeterminism, import-export, after-import, multi-seed-short)
# This workflow will run on all Pull Requests, if a .go, .mod or .sum file have been changed
on:
schedule:
- cron: "0 0,12 * * *"
release:
types: [published]

concurrency:
group: ci-${{ github.ref }}-sims-052
cancel-in-progress: true

jobs:
build:
permissions:
contents: read # for actions/checkout to fetch code
runs-on: large-sdk-runner
if: "!contains(github.event.head_commit.message, 'skip-sims')"
steps:
- uses: actions/checkout@v4
with:
ref: "release/v0.52.x"
- uses: actions/setup-go@v5
with:
go-version: "1.23"
check-latest: true
- run: make build

test-sim-import-export:
runs-on: large-sdk-runner
needs: [build]
timeout-minutes: 60
steps:
- uses: actions/checkout@v4
with:
ref: "release/v0.52.x"
- uses: actions/setup-go@v5
with:
go-version: "1.23"
check-latest: true
- name: test-sim-import-export
run: |
make test-sim-import-export
test-sim-after-import:
runs-on: large-sdk-runner
needs: [build]
timeout-minutes: 60
steps:
- uses: actions/checkout@v4
with:
ref: "release/v0.52.x"
- uses: actions/setup-go@v5
with:
go-version: "1.23"
check-latest: true
- name: test-sim-after-import
run: |
make test-sim-after-import
test-sim-deterministic:
runs-on: large-sdk-runner
needs: [build]
timeout-minutes: 60
steps:
- uses: actions/checkout@v4
with:
ref: "release/v0.52.x"
- uses: actions/setup-go@v5
with:
go-version: "1.23"
check-latest: true
- name: test-sim-nondeterminism-streaming
run: |
make test-sim-nondeterminism-streaming
test-sim-multi-seed-short:
runs-on: large-sdk-runner
needs: [build]
timeout-minutes: 60
steps:
- uses: actions/checkout@v4
with:
ref: "release/v0.52.x"
- uses: actions/setup-go@v5
with:
go-version: "1.23"
check-latest: true
- name: test-sim-multi-seed-short
run: |
make test-sim-multi-seed-short
sims-notify-success:
needs:
[
test-sim-multi-seed-short,
test-sim-after-import,
test-sim-import-export,
test-sim-deterministic,
]
runs-on: large-sdk-runner
if: ${{ success() }}
steps:
- uses: actions/checkout@v4
- name: Get previous workflow status
uses: ./.github/actions/last-workflow-status
id: last_status
with:
github_token: ${{ secrets.GITHUB_TOKEN }}

- name: Notify Slack on success
if: ${{ steps.last_status.outputs.last_status == 'failure' }}
uses: rtCamp/[email protected]
env:
SLACK_WEBHOOK: ${{ secrets.SLACK_WEBHOOK }}
SLACK_CHANNEL: sdk-sims
SLACK_USERNAME: Sim Tests release/0.52.x
SLACK_ICON_EMOJI: ":white_check_mark:"
SLACK_COLOR: good
SLACK_MESSAGE: 0.52.x Sims are passing
SLACK_FOOTER: ""

sims-notify-failure:
permissions:
contents: none
needs:
[
test-sim-multi-seed-short,
test-sim-after-import,
test-sim-import-export,
test-sim-deterministic,
]
runs-on: large-sdk-runner
if: ${{ failure() }}
steps:
- name: Notify Slack on failure
uses: rtCamp/[email protected]
env:
SLACK_WEBHOOK: ${{ secrets.SLACK_WEBHOOK }}
SLACK_CHANNEL: sdk-sims
SLACK_USERNAME: Sim Tests release/0.52.x
SLACK_ICON_EMOJI: ":skull:"
SLACK_COLOR: danger
SLACK_MESSAGE: 0.52.x Sims are failing
SLACK_FOOTER: ""
14 changes: 12 additions & 2 deletions .github/workflows/sims.yml
Original file line number Diff line number Diff line change
Expand Up @@ -83,7 +83,12 @@ jobs:
sims-notify-success:
needs:
[test-sim-multi-seed-short, test-sim-after-import, test-sim-import-export]
[
test-sim-multi-seed-short,
test-sim-after-import,
test-sim-import-export,
test-sim-deterministic,
]
runs-on: large-sdk-runner
if: ${{ success() }}
steps:
Expand Down Expand Up @@ -111,7 +116,12 @@ jobs:
permissions:
contents: none
needs:
[test-sim-multi-seed-short, test-sim-after-import, test-sim-import-export]
[
test-sim-multi-seed-short,
test-sim-after-import,
test-sim-import-export,
test-sim-deterministic,
]
runs-on: large-sdk-runner
if: ${{ failure() }}
steps:
Expand Down
7 changes: 6 additions & 1 deletion server/util_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -493,7 +493,12 @@ func (m mapGetter) Get(key string) interface{} {
}

func (m mapGetter) GetString(key string) string {
return m[key].(string)
str, ok := m[key]
if !ok {
return ""
}

return str.(string)
}

var _ servertypes.AppOptions = mapGetter{}
7 changes: 6 additions & 1 deletion testutils/sims/runner.go
Original file line number Diff line number Diff line change
Expand Up @@ -236,7 +236,12 @@ func (f AppOptionsFn) Get(k string) any {
}

func (f AppOptionsFn) GetString(k string) string {
return f(k).(string)
str, ok := f(k).(string)
if !ok {
return ""
}

return str
}

// FauxMerkleModeOpt returns a BaseApp option to use a dbStoreAdapter instead of
Expand Down

0 comments on commit 59b6f78

Please sign in to comment.