| 1 | name: s390 CI |
| 2 | |
| 3 | on: |
| 4 | workflow_dispatch: |
| 5 | push: |
| 6 | branches: |
| 7 | - master |
| 8 | paths-ignore: |
| 9 | - '**.md' |
| 10 | - '**.yml' |
| 11 | - '!**/s390x_linux_ci.yml' |
| 12 | - 'cmd/tools/**' |
| 13 | - '!cmd/tools/builders/**.v' |
| 14 | pull_request: |
| 15 | paths-ignore: |
| 16 | - '**.md' |
| 17 | - '**.yml' |
| 18 | - '!**/s390x_linux_ci.yml' |
| 19 | - 'cmd/tools/**' |
| 20 | - '!cmd/tools/builders/**.v' |
| 21 | |
| 22 | jobs: |
| 23 | s390x_linux: |
| 24 | # The host should always be Linux |
| 25 | runs-on: ubuntu-22.04 |
| 26 | timeout-minutes: 30 |
| 27 | name: Build on ubuntu-22.04 s390x |
| 28 | steps: |
| 29 | - uses: actions/checkout@v6 |
| 30 | - uses: uraimo/run-on-arch-action@v3 |
| 31 | name: Run commands |
| 32 | id: runcmd |
| 33 | with: |
| 34 | arch: s390x |
| 35 | distro: ubuntu22.04 |
| 36 | base_image: --platform=linux/s390x s390x/ubuntu:22.04 |
| 37 | # The token tag here is not required, but speeds up builds, |
| 38 | # by allowing caching of the installed dependencies, which is ~2.5min: |
| 39 | githubToken: ${{ github.token }} |
| 40 | shell: /bin/bash |
| 41 | install: | |
| 42 | apt-get update -q -y |
| 43 | apt-get install -q -y make gcc git file coreutils binutils |
| 44 | run: | |
| 45 | uname -a |
| 46 | make --version |
| 47 | gcc --version |
| 48 | ls -la |
| 49 | make |
| 50 | file ./v |
| 51 | ls -la ./v |
| 52 | ./v test vlib/builtin vlib/os vlib/encoding/binary |
| 53 | ./v test vlib/v/tests/fns/closure_test.v |
| 54 | |