blob: 7a2a96933f226edeefc758e909c3bc4f016a4e85 [file] [log] [blame]
Dean Birch62c4f082020-01-17 16:13:26 +00001#!/usr/bin/env groovy
2//-------------------------------------------------------------------------------
Paul Sokolovskye1ad4772024-03-07 00:08:27 +07003// Copyright (c) 2020-2024, Arm Limited and Contributors. All rights reserved.
Dean Birch62c4f082020-01-17 16:13:26 +00004//
5// SPDX-License-Identifier: BSD-3-Clause
6//
7//-------------------------------------------------------------------------------
8
Dean Birchd0f9f8c2020-03-26 11:10:33 +00009@Library('trustedfirmware') _
10import org.trustedfirmware.Gerrit
11
Xinyu Zhang4cdfd1b2021-05-21 15:10:49 +080012timestamps {
Paul Sokolovskye1ad4772024-03-07 00:08:27 +070013 node("docker-amd64-tf-m-jammy") {
Xinyu Zhang4cdfd1b2021-05-21 15:10:49 +080014 stage("Init") {
15 cleanWs()
Xinyu Zhang4cdfd1b2021-05-21 15:10:49 +080016 dir("tf-m-ci-scripts") {
17 checkout([$class: 'GitSCM', branches: [[name: '$CI_SCRIPTS_BRANCH']], userRemoteConfigs: [[credentialsId: 'GIT_SSH_KEY', url: '$CI_SCRIPTS_REPO']]])
Leonardo Sandoval7090b2c2021-09-17 13:20:44 -050018 // Clone TF-M repositories so share folder can be reused by downstream jobs
19 sh "./clone.sh"
Xinyu Zhang4cdfd1b2021-05-21 15:10:49 +080020 }
Dean Birch62c4f082020-01-17 16:13:26 +000021 }
Xinyu Zhang4cdfd1b2021-05-21 15:10:49 +080022 try {
23 verify = 1
24 stage("Build") {
25 sh "tf-m-ci-scripts/build-docs.sh"
26 }
27 stage("Post") {
28 archiveArtifacts 'trusted-firmware-m/build/docs/**'
29 }
30 } catch (Exception e) {
Xinyu Zhang29abfb42022-06-29 10:31:50 +080031 stage("Post") {
32 archiveArtifacts 'trusted-firmware-m/build/**'
33 }
Xinyu Zhang4cdfd1b2021-05-21 15:10:49 +080034 manager.buildFailure()
35 verify = -1
36 } finally {
37 g = new Gerrit()
Xinyu Zhang3afc24e2021-06-25 16:50:11 +080038 g.verifyStatusInWorkspace(verify, "$JOB_NAME", 'build')
Xinyu Zhang4cdfd1b2021-05-21 15:10:49 +080039 def buildStatus = (verify == 1) ? 'Successful' : 'Failed'
40 //g.commentInWorkspace("Build docs ${buildStatus}: ${env.RUN_DISPLAY_URL}")
41 cleanWs()
Dean Birch62c4f082020-01-17 16:13:26 +000042 }
Dean Birch62c4f082020-01-17 16:13:26 +000043 }
Riku Voipio2e4cf532021-05-28 16:16:11 +030044 node("master") {
Paul Sokolovsky0a800a92023-02-17 18:36:22 +070045 if (env.JOB_NAME.contains("tf-m-build-docs-nightly")) {
Paul Sokolovsky736e6b62023-02-17 18:00:49 +070046 // Copy, then as atomically as possible replace previous docs with new.
Xinyu Zhang954a8b82021-09-22 10:29:10 +080047 sh """
Paul Sokolovsky736e6b62023-02-17 18:00:49 +070048 cp -a /var/jenkins_home/jobs/$JOB_NAME/builds/$BUILD_NUMBER/archive/trusted-firmware-m/build/docs/reference_manual /var/jenkins_home/docs/reference_manual.new
49 cp -a /var/jenkins_home/jobs/$JOB_NAME/builds/$BUILD_NUMBER/archive/trusted-firmware-m/build/docs/user_guide /var/jenkins_home/docs/user_guide.new
50 rm -rf /var/jenkins_home/docs/reference_manual.old /var/jenkins_home/docs/user_guide.old
51 mv /var/jenkins_home/docs/reference_manual /var/jenkins_home/docs/reference_manual.old
52 mv /var/jenkins_home/docs/user_guide /var/jenkins_home/docs/user_guide.old
53 mv /var/jenkins_home/docs/reference_manual.new /var/jenkins_home/docs/reference_manual
54 mv /var/jenkins_home/docs/user_guide.new /var/jenkins_home/docs/user_guide
Xinyu Zhang954a8b82021-09-22 10:29:10 +080055 """
56 }
Riku Voipio2e4cf532021-05-28 16:16:11 +030057 }
Dean Birch62c4f082020-01-17 16:13:26 +000058}