Skip to content

Integration Test

Integration Test #182

name: Integration Test
on:
push:
branches:
- main
paths:
- config.json
- Dockerfile
- rootfs/**
- .devcontainer/**
pull_request:
branches:
- main
paths:
- config.json
- Dockerfile
- rootfs/**
- .devcontainer/**
# Home Assistant and the third-party add-on repository this test installs both
# move independently of this repo, so the test can break with no change here.
# Run it on a schedule to catch that on main rather than on an unrelated pull
# request that happens to touch one of the paths above.
schedule:
- cron: "17 6 * * *"
workflow_dispatch:
jobs:
integration:
name: Integration test
runs-on: ubuntu-latest
timeout-minutes: 30
steps:
- name: Check out repository
uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
- name: Run integration test in devcontainer
uses: devcontainers/ci@513af61f4de4f75d37e4438f184ba4358f0fc1ca # v0.3.1900000450
with:
runCmd: bash .devcontainer/run-integration-test.sh stable
# Early warning for Home Assistant changes that have not reached stable yet.
# Deliberately never runs on a pull request, so a broken beta cannot block a
# merge, and is non-blocking when it does run.
canary:
name: Integration test (beta)
if: github.event_name == 'schedule' || github.event_name == 'workflow_dispatch'
runs-on: ubuntu-latest
timeout-minutes: 30
continue-on-error: true
steps:
- name: Check out repository
uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
- name: Run integration test in devcontainer
uses: devcontainers/ci@513af61f4de4f75d37e4438f184ba4358f0fc1ca # v0.3.1900000450
with:
runCmd: bash .devcontainer/run-integration-test.sh beta