DeFiCh / metachain

DFIP 2111-B: VOC: Ethereum Virtual Machine (EVM) Support
https://docs.defimetachain.org
MIT License
22 stars 4 forks source link

`@defimetachain/testsuite-docker-sanity`: MetaChain Container Sanity Workflow #131

Open fuxingloh opened 2 years ago

fuxingloh commented 2 years ago

What would you like to be added:

For .github/workflows/release-docker.yml, we need to ensure the workflow released can run on all silicon architecture. This also acts as a set of sanity tests to ensure each docker image can be run after building.

We should do this in jest and call it packages/testsuite-docker-sanity.

Why is this needed:

Shift left workflow for https://github.com/DeFiCh/metachain/issues/61 and https://github.com/DeFiCh/metachain/issues/62


/triage accepted /assign @fuxingloh

defichain-bot commented 2 years ago

@fuxingloh: There are no 'area' labels on this issue. Adding an appropriate label will greatly expedite the process for us. You can add as many area as you see fit. If you are unsure what to do you can ignore this!

You can add area labels by leaving a /area comment.

Details I am a bot created to help the [DeFiCh](https://github.com/DeFiCh) developers manage community feedback and contributions. You can check out my [manifest file](https://github.com/DeFiCh/metachain/blob/main/.github/governance.yml) to understand my behavior and what I can do. If you want to use this for your project, you can check out the [BirthdayResearch/oss-governance-bot](https://github.com/BirthdayResearch/oss-governance-bot) repository.
fuxingloh commented 2 years ago

/area testsuite

mambisi commented 2 years ago

@fuxingloh , I looked for multiple solution, the best is using https://github.com/pguyot/arm-runner-action for testing arm builds but its using an arm vm under the hood. for real, testing we have to use a self-hosted runner similar to what defichain is using to test on multiple platform. refer to https://github.com/actions/runner-images/issues/2552 has discussion on buildx and qemu on GitHub actions

fuxingloh commented 2 years ago

Hmm. Let's wait for the official support of non-self-hosted arm-runners from GitHub.

For now, let's just do basic Container testing for builds in @defimetachain/testsuite-docker-sanity via a different OS first.

jobs:
  sanity:
    name: Testsuite Docker Sanity
    runs-on: ${{ matrix.os }}
    strategy:
      matrix:
        os: [ubuntu-latest, windows-latest, macos-latest]