diff --git a/Jenkinsfile.public b/Jenkinsfile.public index 27fde7821d2b..d366f06010f8 100644 --- a/Jenkinsfile.public +++ b/Jenkinsfile.public @@ -121,6 +121,7 @@ pipeline { stage('licenses check') { steps { // go-licenses by default has AGPL3 in the forbidden list, hence we need to explicitly allow `storj.io/storj`. + // note: json-iterator is replaced by our stub, it should be ignored as storj.io/storj. sh 'go-licenses check --ignore "storj.io/storj" --ignore "github.com/json-iterator/go" ./...' } } @@ -177,6 +178,27 @@ pipeline { } } + stage('Satellite UI Tests') { + environment { + STORJ_TEST_COCKROACH = 'cockroach://root@localhost:26256/uitestcockroach?sslmode=disable' + STORJ_TEST_COCKROACH_NODROP = 'true' + STORJ_TEST_POSTGRES = 'omit' + STORJ_TEST_LOG_LEVEL = 'debug' + } + + steps { + sh 'cockroach sql --insecure --host=localhost:26256 -e \'create database uitestcockroach;\'' + sh 'make test-satellite-ui' + } + + post { + failure { + sh script: 'tar -zcvf .build/test-results.tar.gz ./testsuite/playwright-ui/test-results/' + archiveArtifacts artifacts: '.build/test-results.tar.gz' + } + } + } + stage('Check Benchmark') { environment { STORJ_TEST_COCKROACH = 'omit' diff --git a/Makefile b/Makefile index 2e2501aec686..2050d1d1e790 100644 --- a/Makefile +++ b/Makefile @@ -226,13 +226,11 @@ test-satellite-ui: ## Run playwright ui tests npm run build; cd testsuite/playwright-ui;\ - npm install;\ - npx playwright install;\ - npx playwright install-deps;\ + npm ci;\ + npx playwright install --with-deps;\ STORJ_TEST_SATELLITE_WEB='../../web/satellite' \ go test ./... -run TestRun -count 1 - .PHONY: check-monitoring check-monitoring: ## Check for locked monkit calls that have changed @echo "Running ${@}" diff --git a/testsuite/playwright-ui/playwright.config.ts b/testsuite/playwright-ui/playwright.config.ts index 02f8a36bd8c0..427fee9da882 100644 --- a/testsuite/playwright-ui/playwright.config.ts +++ b/testsuite/playwright-ui/playwright.config.ts @@ -97,7 +97,7 @@ export default defineConfig({ ['dot'], ['html'], ], - retries: process.env.CI ? 1 : 0, // Retry on CI only. + retries: process.env.CI ? 2 : 0, // Retry on CI only. testDir: './tests', // Directory where tests are located. timeout: 30 * 1000, // Maximum time one test can run for. use: {