forked from mirrors/0ad
19aca9fe74
- Switched to CMake for configuring and building the doxygen Website. - Set the minimum requirements to CMake >=3.18.4 and Doxygen >=1.9.1. - Rewrite the LICENSE.txt and docs README.txt to markdown. - Add the folder which is used in the README to gitignore. - Add a custom style to the doxygen website based on the docs webpage. - Update CI to use the new Doxygen Build process. Closes #7052
71 lines
2.3 KiB
Plaintext
71 lines
2.3 KiB
Plaintext
/* Copyright (C) 2024 Wildfire Games.
|
|
* This file is part of 0 A.D.
|
|
*
|
|
* 0 A.D. is free software: you can redistribute it and/or modify
|
|
* it under the terms of the GNU General Public License as published by
|
|
* the Free Software Foundation, either version 2 of the License, or
|
|
* (at your option) any later version.
|
|
*
|
|
* 0 A.D. is distributed in the hope that it will be useful,
|
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
* GNU General Public License for more details.
|
|
*
|
|
* You should have received a copy of the GNU General Public License
|
|
* along with 0 A.D. If not, see <http://www.gnu.org/licenses/>.
|
|
*/
|
|
|
|
// This pipeline is used to build the documentation.
|
|
|
|
pipeline {
|
|
agent {
|
|
dockerfile {
|
|
label 'LinuxAgent'
|
|
customWorkspace "workspace/technical-docs"
|
|
dir 'build/jenkins/dockerfiles'
|
|
filename "docs-tools.Dockerfile"
|
|
}
|
|
}
|
|
|
|
stages {
|
|
stage("Pull documentation assets") {
|
|
steps {
|
|
sh "git lfs pull -I docs/doxygen"
|
|
}
|
|
}
|
|
|
|
stage("Engine docs") {
|
|
steps {
|
|
sh "cd docs/doxygen/ && cmake -S . -B build-docs && cmake --build build-docs"
|
|
}
|
|
}
|
|
|
|
stage("Entity docs") {
|
|
steps {
|
|
sh "cd binaries/system/ && svn export --force https://svn.wildfiregames.com/nightly-build/trunk/binaries/system/entity.rng"
|
|
sh "cd source/tools/entdocs/ && ./build.sh"
|
|
sh "cd source/tools/entdocs/ && mv entity-docs.html nightly.html"
|
|
}
|
|
}
|
|
|
|
stage("Template Analyzer") {
|
|
steps {
|
|
sh "cd source/tools/templatesanalyzer/ && python3 unit_tables.py"
|
|
sh "mv source/tools/templatesanalyzer/unit_summary_table.html source/tools/templatesanalyzer/index.html"
|
|
}
|
|
}
|
|
|
|
stage("Upload") {
|
|
steps {
|
|
sshPublisher alwaysPublishFromMaster: true, failOnError: true, publishers: [
|
|
sshPublisherDesc(configName: 'docs.wildfiregames.com', transfers: [
|
|
sshTransfer(sourceFiles: 'docs/doxygen/output/html/**', removePrefix: 'docs/doxygen/output/html/', remoteDirectory: 'pyrogenesis'),
|
|
sshTransfer(sourceFiles: 'source/tools/entdocs/nightly.html', removePrefix: 'source/tools/entdocs', remoteDirectory: 'entity-docs'),
|
|
sshTransfer(sourceFiles: 'source/tools/templatesanalyzer/index.html', removePrefix: 'source/tools/templatesanalyzer', remoteDirectory: 'templatesanalyzer'),
|
|
]
|
|
)]
|
|
}
|
|
}
|
|
}
|
|
}
|