Author SHA1 Message Date
codex-test 25aab5752d docs: push after closing PR without merge
demo-multibranch/pipeline/head This commit looks good
2026-10-12 19:42:13 +00:00
codex-test 1c88807f6d ci: PR webhook success fixture
demo-multibranch/pipeline/pr-master This commit looks good
2026-10-12 19:41:43 +00:00
codex-test 0608353018 ci: PR webhook failure fixture
demo-multibranch/pipeline/pr-master There was a failure building this commit
2026-10-12 19:41:28 +00:00
codex-test 511696945d ci: PR webhook unstable fixture
demo-multibranch/pipeline/pr-master This commit is unstable
2026-10-12 19:41:14 +00:00
codex-test 8c0176b741 docs: discover new branch via push webhook
demo-multibranch/pipeline/head This commit looks good
demo-multibranch/pipeline/pr-master This commit looks good
2026-10-12 19:40:45 +00:00
codex-test 72e089acae ci: initialize multibranch webhook fixture
demo-multibranch/pipeline/head Build queued...
2026-10-12 19:34:26 +00:00
3 changed files with 34 additions and 24 deletions

No files matched your search

Vendored
+28 -24
View File
@@ -1,33 +1,37 @@
pipeline {
agent any
options { timeout(time: 60, unit: 'SECONDS') }
stages {
stage('Checkout and identify change') {
steps {
properties([
disableConcurrentBuilds(),
buildDiscarder(logRotator(daysToKeepStr: '60', numToKeepStr: '60', artifactDaysToKeepStr: '15', artifactNumToKeepStr: '15'))
])
timeout(time: 60, unit: 'SECONDS') {
node {
try {
stage('检出与变更信息') {
checkout scm
echo "BRANCH_NAME=${env.BRANCH_NAME ?: ''}"
echo "CHANGE_ID=${env.CHANGE_ID ?: ''}"
echo "CHANGE_TARGET=${env.CHANGE_TARGET ?: ''}"
script {
def scenario = readFile('ci/scenario.txt').trim()
if (!(scenario in ['success', 'unstable', 'failure'])) {
error("Unsupported demo scenario: ${scenario}")
}
env.SCENARIO = scenario
def scenario = readFile('ci/scenario.txt').trim()
if (!(scenario in ['success', 'unstable', 'failure'])) {
error("Unsupported demo scenario: ${scenario}")
}
env.SCENARIO = scenario
env.RUN_SECONDS = '1'
env.LOG_LINES = '25'
env.TARGET_ENV = 'sg'
env.RELEASE_VERSION = readFile('VERSION').trim()
def expected = [success: 'SUCCESS', unstable: 'UNSTABLE', failure: 'FAILURE'][scenario]
currentBuild.description = '[演示数据] synthetic=true expected=' + expected
}
stage('构建与报告') {
int status = sh(returnStatus: true, script: 'sh ci/demo-build.sh')
junit 'reports/*.xml'
if (status != 0) error("Demo build exited with status ${status}")
}
} finally {
stage('归档') {
archiveArtifacts artifacts: 'artifacts/*', allowEmptyArchive: true
}
}
stage('Build and report') {
steps {
script {
int status = sh(script: 'sh ci/demo-build.sh', returnStatus: true)
junit 'reports/*.xml'
if (status != 0) error("Demo build exited with status ${status}")
}
}
}
}
post {
always { archiveArtifacts artifacts: 'artifacts/*', allowEmptyArchive: true }
}
}
+3
View File
@@ -0,0 +1,3 @@
# Closed PR branch
[DEMO] Branch becomes eligible for ordinary branch builds again.
+3
View File
@@ -0,0 +1,3 @@
# Webhook branch fixture
[DEMO] 2026-10-12T19:40:44.844Z