CI integration with GitHub Actions
Start Duku from pull requests, deploys, and scheduled workflows.
Not sure which integration fits? Start here.
Use Duku's GitHub Actions to start explorations from your CI pipeline.
Use preview for short lived pull request previews. Use environment for stable targets like staging or a canary deployment.
Start here
Which action to use
preview
Per pull request previews, where each PR gets its own short lived target. Duku resolves the PR's preview deployment URL and explores it.
pull_request as the primary trigger. It also runs on push and workflow_dispatch. On those triggers, it only posts a PR comment when you pass repository and pr-number.
environment
Stable, long lived targets you create once in Viewport, such as staging, a production canary, or a customer specific deploy.
push to a long lived branch, schedule, and workflow_dispatch
Async by design
Both actions are async by design. A Duku exploration commonly takes 5 to 40 minutes.
The workflow starts the exploration and exits within seconds. This keeps your runner free and avoids spending Actions minutes while Duku explores the app.
Create or reference the target.
Resolve the URL to explore.
Start the exploration. The
environmentaction also starts a test-case run.On a native
pull_requestevent, or on another trigger when you passrepositoryandpr-number, post one stickyExploration in progresscomment.Exit.
When the exploration finishes, results appear in Viewport. When comment metadata is present, the same sticky comment is updated in place with run counts and the top unique errors.
Install the Duku AI GitHub App. The App posts the final PR comment update. Without it, the action still posts the running comment and exits cleanly, and the results still appear in Viewport.
Prerequisites
Create a Platform API key in Viewport - Settings → API Keys. Store it as the repository secret
PLATFORM_API_KEY.Allow workflows to write pull request comments. Set Settings → Actions → General → Workflow permissions to Read and write, or grant
pull-requests: writein the workflow.Add a workflow file under
.github/workflows/.Install the Duku AI GitHub App. It is required for final PR comment updates.
For
environment, create a target in Viewport first and store its ID as a repository variable likeDUKU_STAGING_TARGET_ID.
What to expect
GitHub Actions only starts the run. Viewport is the source of truth for final exploration and test results.
Threshold based merge gating and GitHub Check Run integration are not yet available in 0.x. Use the PR comment or Viewport results when you decide whether to merge.
Read next
Last updated

