diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index eabd34ac..a0bc2baf 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -43,3 +43,31 @@ jobs: - name: Dump context uses: crazy-max/ghaction-dump-context@v1 + + error: + runs-on: ubuntu-latest + steps: + - + name: Checkout + uses: actions/checkout@v2 + - + name: Stop docker + run: | + sudo systemctl stop docker + - + name: Set up QEMU + id: qemu + continue-on-error: true + uses: ./ + - + name: Check + run: | + echo "${{ toJson(steps.qemu) }}" + if [ "${{ steps.qemu.outcome }}" != "failure" ] || [ "${{ steps.qemu.conclusion }}" != "success" ]; then + echo "::error::Should have failed" + exit 1 + fi + - + name: Dump context + if: always() + uses: crazy-max/ghaction-dump-context@v1 diff --git a/README.md b/README.md index a678746f..fffc3c5a 100644 --- a/README.md +++ b/README.md @@ -19,7 +19,6 @@ ___ * [Customizing](#customizing) * [inputs](#inputs) * [Keep up-to-date with GitHub Dependabot](#keep-up-to-date-with-github-dependabot) -* [Limitation](#limitation) ## Usage @@ -82,7 +81,3 @@ updates: schedule: interval: "daily" ``` - -## Limitation - -This action is only available for Linux [virtual environments](https://docs.github.com/en/actions/reference/virtual-environments-for-github-hosted-runners#supported-virtual-environments-and-hardware-resources). diff --git a/dist/index.js b/dist/index.js index f9aa90fa..bb8a928b 100644 --- a/dist/index.js +++ b/dist/index.js @@ -90,17 +90,16 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge }); }; Object.defineProperty(exports, "__esModule", { value: true }); -const os = __importStar(__webpack_require__(87)); const mexec = __importStar(__webpack_require__(757)); const core = __importStar(__webpack_require__(186)); const exec = __importStar(__webpack_require__(514)); function run() { return __awaiter(this, void 0, void 0, function* () { try { - if (os.platform() !== 'linux') { - core.setFailed('Only supported on linux platform'); - return; - } + core.startGroup(`Docker info`); + yield exec.exec('docker', ['version']); + yield exec.exec('docker', ['info']); + core.endGroup(); const image = core.getInput('image') || 'tonistiigi/binfmt:latest'; const platforms = core.getInput('platforms') || 'all'; core.startGroup(`Pulling binfmt Docker image`); diff --git a/src/main.ts b/src/main.ts index 3af5e2b0..e9f8fa89 100644 --- a/src/main.ts +++ b/src/main.ts @@ -1,4 +1,3 @@ -import * as os from 'os'; import * as mexec from './exec'; import * as core from '@actions/core'; import * as exec from '@actions/exec'; @@ -10,10 +9,10 @@ interface Platforms { async function run(): Promise { try { - if (os.platform() !== 'linux') { - core.setFailed('Only supported on linux platform'); - return; - } + core.startGroup(`Docker info`); + await exec.exec('docker', ['version']); + await exec.exec('docker', ['info']); + core.endGroup(); const image: string = core.getInput('image') || 'tonistiigi/binfmt:latest'; const platforms: string = core.getInput('platforms') || 'all';