diff --git a/.github/workflows/advanced-example.yml b/.github/workflows/advanced-example.yml index 93842b57..f16f92d2 100644 --- a/.github/workflows/advanced-example.yml +++ b/.github/workflows/advanced-example.yml @@ -15,13 +15,15 @@ jobs: distro: ubuntu18.04 - arch: ppc64le distro: alpine_latest + - arch: riscv64 + distro: ubuntu_latest - arch: s390x distro: fedora_latest - arch: armv7 distro: archarm_latest steps: - - uses: actions/checkout@v2.1.0 + - uses: actions/checkout@v3 - uses: ./ # If copying this example, change this to uraimo/run-on-arch-action@vX.Y.Z name: Build artifact id: build diff --git a/.github/workflows/basic-example.yml b/.github/workflows/basic-example.yml index 56b685ab..3203f670 100644 --- a/.github/workflows/basic-example.yml +++ b/.github/workflows/basic-example.yml @@ -7,7 +7,7 @@ jobs: runs-on: ubuntu-18.04 name: Build on ubuntu-18.04 armv7 steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v3 - uses: uraimo/run-on-arch-action@v2 name: Run commands id: runcmd diff --git a/.github/workflows/floating-tag.yml b/.github/workflows/floating-tag.yml index 95a9c53e..0e27c828 100644 --- a/.github/workflows/floating-tag.yml +++ b/.github/workflows/floating-tag.yml @@ -11,7 +11,7 @@ jobs: runs-on: ubuntu-latest name: Update floating tag steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v3 - uses: fregante/setup-git-user@v1 - name: Tag and push run: | diff --git a/.github/workflows/simple.yml b/.github/workflows/simple.yml index 0895666f..564935b6 100644 --- a/.github/workflows/simple.yml +++ b/.github/workflows/simple.yml @@ -14,7 +14,7 @@ jobs: steps: - name: Checkout - uses: actions/checkout@v2 + uses: actions/checkout@v3 - name: Build and run container id: build diff --git a/.github/workflows/swift-build.yml b/.github/workflows/swift-build.yml index de135b60..23e5de36 100644 --- a/.github/workflows/swift-build.yml +++ b/.github/workflows/swift-build.yml @@ -7,7 +7,7 @@ jobs: name: A job to test the multi architecture actions steps: - name: Checkout - uses: actions/checkout@v2 + uses: actions/checkout@v3 - name: Build uses: ./ with: diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index bfb5dec3..2a997310 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -21,6 +21,10 @@ jobs: distro: buster - arch: armv7 distro: jessie + - arch: riscv64 + distro: alpine_edge + - arch: riscv64 + distro: ubuntu20.04 - arch: s390x distro: stretch - arch: armv7 @@ -34,7 +38,7 @@ jobs: steps: - name: Checkout - uses: actions/checkout@v2 + uses: actions/checkout@v3 - name: Build and run container id: build diff --git a/Dockerfiles/Dockerfile.riscv64.alpine_edge b/Dockerfiles/Dockerfile.riscv64.alpine_edge new file mode 100644 index 00000000..0b0c47ea --- /dev/null +++ b/Dockerfiles/Dockerfile.riscv64.alpine_edge @@ -0,0 +1,4 @@ +FROM riscv64/alpine:edge + +COPY ./run-on-arch-install.sh /root/run-on-arch-install.sh +RUN chmod +x /root/run-on-arch-install.sh && /root/run-on-arch-install.sh diff --git a/Dockerfiles/Dockerfile.riscv64.alpine_latest b/Dockerfiles/Dockerfile.riscv64.alpine_latest new file mode 100644 index 00000000..22bdae72 --- /dev/null +++ b/Dockerfiles/Dockerfile.riscv64.alpine_latest @@ -0,0 +1,4 @@ +FROM riscv64/alpine:latest + +COPY ./run-on-arch-install.sh /root/run-on-arch-install.sh +RUN chmod +x /root/run-on-arch-install.sh && /root/run-on-arch-install.sh diff --git a/Dockerfiles/Dockerfile.riscv64.ubuntu20.04 b/Dockerfiles/Dockerfile.riscv64.ubuntu20.04 new file mode 100644 index 00000000..2a862e3b --- /dev/null +++ b/Dockerfiles/Dockerfile.riscv64.ubuntu20.04 @@ -0,0 +1,4 @@ +FROM riscv64/ubuntu:20.04 + +COPY ./run-on-arch-install.sh /root/run-on-arch-install.sh +RUN chmod +x /root/run-on-arch-install.sh && /root/run-on-arch-install.sh diff --git a/Dockerfiles/Dockerfile.riscv64.ubuntu22.04 b/Dockerfiles/Dockerfile.riscv64.ubuntu22.04 new file mode 100644 index 00000000..13987d24 --- /dev/null +++ b/Dockerfiles/Dockerfile.riscv64.ubuntu22.04 @@ -0,0 +1,4 @@ +FROM riscv64/ubuntu:22.04 + +COPY ./run-on-arch-install.sh /root/run-on-arch-install.sh +RUN chmod +x /root/run-on-arch-install.sh && /root/run-on-arch-install.sh diff --git a/Dockerfiles/Dockerfile.riscv64.ubuntu_devel b/Dockerfiles/Dockerfile.riscv64.ubuntu_devel new file mode 100644 index 00000000..3a843a69 --- /dev/null +++ b/Dockerfiles/Dockerfile.riscv64.ubuntu_devel @@ -0,0 +1,4 @@ +FROM riscv64/ubuntu:devel + +COPY ./run-on-arch-install.sh /root/run-on-arch-install.sh +RUN chmod +x /root/run-on-arch-install.sh && /root/run-on-arch-install.sh diff --git a/Dockerfiles/Dockerfile.riscv64.ubuntu_latest b/Dockerfiles/Dockerfile.riscv64.ubuntu_latest new file mode 100644 index 00000000..75c8e654 --- /dev/null +++ b/Dockerfiles/Dockerfile.riscv64.ubuntu_latest @@ -0,0 +1,4 @@ +FROM riscv64/ubuntu:latest + +COPY ./run-on-arch-install.sh /root/run-on-arch-install.sh +RUN chmod +x /root/run-on-arch-install.sh && /root/run-on-arch-install.sh diff --git a/Dockerfiles/Dockerfile.riscv64.ubuntu_rolling b/Dockerfiles/Dockerfile.riscv64.ubuntu_rolling new file mode 100644 index 00000000..def1fb7b --- /dev/null +++ b/Dockerfiles/Dockerfile.riscv64.ubuntu_rolling @@ -0,0 +1,4 @@ +FROM riscv64/ubuntu:rolling + +COPY ./run-on-arch-install.sh /root/run-on-arch-install.sh +RUN chmod +x /root/run-on-arch-install.sh && /root/run-on-arch-install.sh diff --git a/README.md b/README.md index d62b7c0e..fdbf823e 100644 --- a/README.md +++ b/README.md @@ -8,7 +8,7 @@ A GitHub Action that executes commands on non-x86 CPU architecture (armv6, armv7 This action requires three input parameters: -* `arch`: CPU architecture: `armv6`, `armv7`, `aarch64`, `s390x`, or `ppc64le`. See [Supported Platforms](#supported-platforms) for the full matrix. +* `arch`: CPU architecture: `armv6`, `armv7`, `aarch64`, `riscv64`, `s390x`, or `ppc64le`. See [Supported Platforms](#supported-platforms) for the full matrix. * `distro`: Linux distribution name: `ubuntu16.04`, `ubuntu18.04`, `ubuntu20.04`, `bullseye`, `buster`, `stretch`, `jessie`, `fedora_latest`, `alpine_latest` or `archarm_latest`. See [Supported Platforms](#supported-platforms) for the full matrix. * `run`: Shell commands to execute in the container. @@ -34,7 +34,7 @@ jobs: runs-on: ubuntu-18.04 name: Build on ubuntu-18.04 armv7 steps: - - uses: actions/checkout@v2.1.0 + - uses: actions/checkout@v3 - uses: uraimo/run-on-arch-action@v2 name: Run commands id: runcmd @@ -82,7 +82,7 @@ jobs: distro: fedora_latest steps: - - uses: actions/checkout@v2.1.0 + - uses: actions/checkout@v3 - uses: uraimo/run-on-arch-action@v2 name: Build artifact id: build @@ -152,6 +152,7 @@ This table details the valid `arch`/`distro` combinations: | armv6 | jessie, stretch, buster, bullseye, alpine_latest | | armv7 | jessie, stretch, buster, bullseye, ubuntu16.04, ubuntu18.04, ubuntu20.04, ubuntu22.04, ubuntu_latest, ubuntu_rolling, ubuntu_devel, fedora_latest, alpine_latest, archarm_latest | | aarch64 | stretch, buster, bullseye, ubuntu16.04, ubuntu18.04, ubuntu20.04, ubuntu22.04, ubuntu_latest, ubuntu_rolling, ubuntu_devel, fedora_latest, alpine_latest, archarm_latest | +| riscv64 | ubuntu20.04, ubuntu22.04, ubuntu_latest, ubuntu_rolling, ubuntu_devel, alpine_edge | | s390x | jessie, stretch, buster, bullseye, ubuntu16.04, ubuntu18.04, ubuntu20.04, ubuntu22.04, ubuntu_latest, ubuntu_rolling, ubuntu_devel, fedora_latest, alpine_latest | | ppc64le | jessie, stretch, buster, bullseye, ubuntu16.04, ubuntu18.04,ubuntu20.04, ubuntu22.04, ubuntu_latest, ubuntu_rolling, ubuntu_devel, fedora_latest, alpine_latest | diff --git a/action.yml b/action.yml index b292b91d..ff1ae705 100644 --- a/action.yml +++ b/action.yml @@ -6,7 +6,7 @@ description: 'Run commands in a Linux container with a specific CPU architecture author: 'Umberto Raimondi, Elijah Shaw-Rutschman' inputs: arch: - description: 'CPU architecture: armv6, armv7, aarch64, s390x, ppc64le.' + description: 'CPU architecture: armv6, armv7, aarch64, riscv64, s390x, ppc64le.' required: false default: 'aarch64' distro: