Skip to content

Scheduled spread tests #187

Scheduled spread tests

Scheduled spread tests #187

name: Scheduled spread tests
on:
schedule:
# At 03:00 on Wednesday and Sunday.
- cron: "0 3 * * WED,SUN"
workflow_dispatch:
jobs:
snap-build:
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v4
with:
fetch-depth: 0
- name: Build snap
uses: canonical/action-build@v1
id: snapcraft
- name: Upload snap artifact
uses: actions/upload-artifact@v4
with:
name: snap
path: ${{ steps.snapcraft.outputs.snap }}
- name: Verify snapcraft snap
run: |
sudo snap install --dangerous --classic ${{ steps.snapcraft.outputs.snap }}
kernel-plugins:
runs-on: [spread-installed]
needs: [snap-build]
strategy:
fail-fast: false
matrix:
type: [craft-parts, v2]
steps:
- name: Cleanup job workspace
run: |
rm -rf "${{ github.workspace }}"
mkdir "${{ github.workspace }}"
- name: Checkout snapcraft
uses: actions/checkout@v4
with:
fetch-depth: 0
submodules: true
- name: Download snap artifact
uses: actions/download-artifact@v4
with:
name: snap
path: tests
- name: Kernel plugin test
run: |
spread google:ubuntu-22.04-64:tests/spread/plugins/${{ matrix.type }}/kernel
remote-build:
runs-on: [spread-installed]
needs: [snap-build]
steps:
- name: Cleanup job workspace
run: |
rm -rf "${{ github.workspace }}"
mkdir "${{ github.workspace }}"
- name: Checkout snapcraft
uses: actions/checkout@v4
with:
fetch-depth: 0
submodules: true
- name: Download snap artifact
uses: actions/download-artifact@v4
with:
name: snap
path: tests
- name: remote-build test
env:
LAUNCHPAD_TOKEN: "${{ secrets.LAUNCHPAD_TOKEN }}"
run: |
spread google:ubuntu-20.04-64:tests/spread/core20/remote-build-legacy \
google:ubuntu-22.04-64:tests/spread/core22/remote-build-legacy \
google:ubuntu-22.04-64:tests/spread/core22/remote-build \
google:ubuntu-24.04-64:tests/spread/core24/remote-build \
google:fedora-39-64:tests/spread/core24/remote-build:no_platforms