Repository navigation
test: Add integration tests for Docker image - #944
Merged
Merged
Conversation
Signed-off-by: Tetiana Naumenko <t.naumenko@samsung.com>
t-naumenko
force-pushed
the
test/docker-integration
branch
from
October 15, 2026 11:21
605cbee to
fc4ec5f
Compare
t-naumenko
marked this pull request as ready for review
October 15, 2026 11:26
t-naumenko
requested review from
MoonkiHong,
o-kopysov,
tdrozdovsky and
tiokim
as code owners
October 15, 2026 11:27
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## main #944 +/- ##
=========================================
Coverage 94.11% 94.11%
Complexity 456 456
=========================================
Files 30 30
Lines 1869 1869
Branches 243 243
=========================================
Hits 1759 1759
Misses 48 48
Partials 62 62 ☔ View full report in Codecov by Harness. 🚀 New features to boost your workflow:
|
o-kopysov
pushed a commit
that referenced
this pull request
Oct 16, 2026
Signed-off-by: Tetiana Naumenko <t.naumenko@samsung.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Pull Request
Description
Until now CI only checked that the Docker image builds (
check-docker.yml). Since the image now runs LPVS as an unprivileged user (fix for GHSA-66xf-749c-4648), this PR adds integration tests that run the built image and verify its runtime behavior and the webhook security fixes end to end.New script
.github/scripts/docker-integration-test.sh(can also be run locally), executed bycheck-docker.ymlagainst the image built in the same job:/etc/cron.d,/root,/usr/local/binand Pythonsite-packagesare not writable;lpvs.jarexists and is not writable;scanoss-pyruns.lpvs, triggers a scan without permission errors and creates itsProjectsandResultsdirectories as uid 10001. Thin launcher dependencies are downloaded in a separate step beforehand, so no SCANOSS API calls are made./home/lpvs/LPVSis writable and receives the scan files.docker compose(MySQL + LPVS):GET /healthreturns 200;/scanwithout API key returns 403;Isolation and cleanup:
.envwith random secrets is used instead of the repository.env.lpvs-it) and port (127.0.0.1:17896), so the tests don't interfere with a running LPVS instance.github.token, which is required to start in server mode; the tests make no GitHub API calls.Usage:
The image is built first if it doesn't exist (or with
BUILD=1).STEPS="1 2 3 4"selects which tests to run, e.g.STEPS=4for the compose tests only.CI behavior (
check-docker.yml):timeout-minutes: 60limit was added to the job.main. Re-running the job manually on a dependabot pull request runs the tests.concurrencywithcancel-in-progress), so when several pull requests are merged tomainone after another, only the latest commit is tested.workflow_dispatch) on any branch.Type of change
Please delete options that are not relevant.
Testing
mainbefore the fix:/etc/cron.d,/root,/usr/local/binandsite-packages;build,test-suite) are defined in other workflows and are not affected.Test Configuration:
!reset/!overridein the compose override)Checklist: