@ -32,6 +32,38 @@ include:
file:
file:
- '/.gitlab-ci/image-tags.yml'
- '/.gitlab-ci/image-tags.yml'
# YAML anchors for rule conditions
# --------------------------------
.rules-anchors:
rules:
# Scheduled pipeline
- if : &is-scheduled-pipeline '$CI_PIPELINE_SOURCE == "schedule"'
when : on_success
# For Marge Bot
- if : &is-for-marge '$GITLAB_USER_LOGIN == "marge-bot"'
when : never
# Forked project branch
- if : &is-forked-branch '$CI_PROJECT_NAMESPACE != "virgl" && $CI_MERGE_REQUEST_SOURCE_BRANCH_NAME != $CI_COMMIT_REF_NAME'
when : manual
# Forked project branch / pre-merge pipeline not for Marge bot
- if : &is-forked-branch-or-pre-merge-not-for-marge '$CI_PROJECT_NAMESPACE != "virgl" || ($GITLAB_USER_LOGIN != "marge-bot" && $CI_MERGE_REQUEST_SOURCE_BRANCH_NAME == $CI_COMMIT_REF_NAME)'
when : manual
# Pipeline runs for the main branch of the upstream virglrenderer project
- if : &is-virglrenderer-main '$CI_PROJECT_NAMESPACE == "virgl" && $CI_COMMIT_REF_NAME == $CI_DEFAULT_BRANCH && $CI_MERGE_REQUEST_SOURCE_BRANCH_NAME != $CI_DEFAULT_BRANCH'
when : always
# Post-merge pipeline
- if : &is-post-merge '$CI_PROJECT_NAMESPACE == "virgl" && $CI_MERGE_REQUEST_SOURCE_BRANCH_NAME != $CI_COMMIT_REF_NAME'
when : on_success
# Post-merge pipeline, not for Marge Bot
- if : &is-post-merge-not-for-marge '$CI_PROJECT_NAMESPACE == "virgl" && $GITLAB_USER_LOGIN != "marge-bot" && $CI_MERGE_REQUEST_SOURCE_BRANCH_NAME != $CI_COMMIT_REF_NAME'
when : on_success
# Pre-merge pipeline
- if : &is-pre-merge '$CI_MERGE_REQUEST_SOURCE_BRANCH_NAME == $CI_COMMIT_REF_NAME'
when : on_success
# Pre-merge pipeline for Marge Bot
- if : &is-pre-merge-for-marge '$GITLAB_USER_LOGIN == "marge-bot" && $CI_MERGE_REQUEST_SOURCE_BRANCH_NAME == $CI_COMMIT_REF_NAME'
when : on_success
stages:
stages:
- build
- build
- sanity test
- sanity test
@ -64,11 +96,16 @@ debian/x86_build:
paths:
paths:
- install/
- install/
- results/
- results/
only:
rules:
- branches
- if : *is-scheduled-pipeline
- tags
when : on_success
- merge_requests
- if : *is-post-merge
- schedules
when : never
- if : *is-forked-branch-or-pre-merge-not-for-marge
when : manual
- if : *is-pre-merge-for-marge
when : on_success
- when : manual
#
#
# Sanity test jobs
# Sanity test jobs
@ -77,6 +114,7 @@ debian/x86_build:
.make_check_base:
.make_check_base:
stage : sanity test
stage : sanity test
extends : debian/x86_build
extends : debian/x86_build
dependencies : [ ]
artifacts:
artifacts:
when : always
when : always
paths:
paths:
@ -126,13 +164,10 @@ make check venus:
- results/
- results/
reports:
reports:
junit : results/junit.xml
junit : results/junit.xml
need s:
depe nd enci es:
- debian/x86_build
- debian/x86_build
only:
rules:
- branches
- when : on_success
- tags
- merge_requests
- schedules
.gl-host-test:
.gl-host-test:
extends:
extends: