name: Alibaba Cloud Import on: push: branches: - alitest workflow_dispatch: env: MAKEFLAGS: "-j4 GITVERSION=${{ github.sha }}" jobs: build: name: Build / ${{ matrix.arch }}-${{ matrix.platform }} runs-on: ubuntu-latest strategy: fail-fast: false matrix: include: - arch: arm64 platform: efi - arch: x86_64 platform: efi - arch: x86_64 platform: pcbios container: image: ghcr.io/ipxe/ipxe-builder-${{ matrix.arch }} env: bindir: bin-${{ matrix.arch }}-${{ matrix.platform }} steps: - name: Check out code uses: actions/checkout@v6 - name: Build working-directory: src run: | make CONFIG=cloud EMBED=config/cloud/ali.ipxe \ ${{ env.bindir }}/ipxe.usb - name: Upload uses: actions/upload-artifact@v6 with: name: ${{ env.bindir }} if-no-files-found: error path: | src/${{ env.bindir }}/ipxe.usb import: name: Import runs-on: ubuntu-latest needs: - build container: image: ghcr.io/ipxe/ipxe-builder-cloud env: binaries: >- bin-arm64-efi/ipxe.usb bin-x86_64-efi/ipxe.usb bin-x86_64-pcbios/ipxe.usb family: >- ${{ github.ref == 'refs/heads/alitest' && '--family ipxetest' || '' }} environment: ali-import permissions: id-token: write contents: read steps: - name: Check out code uses: actions/checkout@v6 - name: Download uses: actions/download-artifact@v7 with: path: src pattern: "bin-*" - name: Log in uses: aliyun/configure-aliyun-credentials-action@v1 with: role-to-assume: ${{ vars.ALICLOUD_ROLE }} oidc-provider-arn: ${{ vars.ALICLOUD_IDP }} - name: Log in (OSS) run: | cat >> "${GITHUB_ENV}" <