Add Jenkins docs build (#18)

* Fix typo in copyright

* Minor README improvements

- Prevent underscores from being interpreted as italics in test name format.
- Switch URL to HTTPS.

* Update docs scripts config

- Allow run_doc.sh and run_doxygen.sh to be called from any directory.

* Add docs build to Jenkins
Cette révision appartient à :
Cory Bloor
2021-02-18 16:37:37 -07:00
révisé par GitHub
Parent 95f178324c
révision 8aea5edb29
5 fichiers modifiés avec 93 ajouts et 22 suppressions
+68
Voir le fichier
@@ -0,0 +1,68 @@
#!/usr/bin/env groovy
// This shared library is available at https://github.com/ROCmSoftwarePlatform/rocJENKINS/
@Library('rocJenkins@pong') _
// This is file for internal AMD use.
// If you are interested in running your own Jenkins, please raise a github issue for assistance.
import com.amd.project.*
import com.amd.docker.*
import java.nio.file.Path
def runCompileCommand(platform, project, jobName, boolean debug=false)
{
project.paths.construct_build_prefix()
def command = """#!/usr/bin/env bash
set -x
${project.paths.project_build_prefix}/docs/run_doc.sh
"""
try
{
platform.runCommand(this, command)
}
catch(e)
{
throw e
}
publishHTML([allowMissing: false,
alwaysLinkToLastBuild: false,
keepAll: false,
reportDir: "${project.paths.project_build_prefix}/docs/source/_build/html",
reportFiles: "index.html",
reportName: "Documentation",
reportTitles: "Documentation"])
}
def runCI =
{
nodeDetails, jobName->
def prj = new rocProject('rccl-internal', 'StaticAnalysis')
// Define test architectures, optional rocm version argument is available
def nodes = new dockerNodes(nodeDetails, jobName, prj)
boolean formatCheck = false
boolean staticAnalysis = true
def compileCommand =
{
platform, project->
runCompileCommand(platform, project, jobName, false)
}
buildProject(prj , formatCheck, nodes.dockerArray, compileCommand, null, null, staticAnalysis)
}
ci: {
String urlJobName = auxiliary.getTopJobName(env.BUILD_URL)
properties(auxiliary.addCommonProperties([pipelineTriggers([cron('0 1 * * 6')])]))
stage(urlJobName) {
runCI([ubuntu18:['any']], urlJobName)
}
}
+3 -2
Voir le fichier
@@ -67,7 +67,8 @@ There are unit tests implemented with the Googletest framework in RCCL, which ar
To invoke the unit tests, go to the build folder, then the test subfolder, and execute the appropriate unit test executable(s).
Unit test names are now of the format:
[CollectiveCall]CorrectnessSweep/[CollectiveCall]CorrectnessTest.[Type of test]/[ncclRedOp_t]_[datatype]_[number of elements]_[number of devices]_[in place/out of place]_[environment variables]
[CollectiveCall]CorrectnessSweep/[CollectiveCall]CorrectnessTest.[Type of test]/[ncclRedOp_t]_[datatype]_[number of elements]_[number of devices]_[in place/out of place]_[environment variables]
This allows filtering of unit tests being run by their parameter values by passing the --gtest_filter command line flag, for example:
@@ -82,7 +83,7 @@ See the rccl-tests README for more information on how to build and run those tes
## Library and API Documentation
Please refer to the [Library documentation](http://rccl.readthedocs.io/) for current documentation.
Please refer to the [Library documentation](https://rccl.readthedocs.io/) for current documentation.
## Copyright
+8 -10
Voir le fichier
@@ -1,17 +1,15 @@
#!/bin/bash
# Copyright (c) 2019-2020 Advanced Micro Devices, Inc. All rights reserved.
# Copyright (c) 2019-2021 Advanced Micro Devices, Inc. All rights reserved.
if [ -d docBin ]; then
rm -rf docBin
fi
set -eu
sed -e 's/ROCFFT_EXPORT //g' ../library/include/rocfft.h > rocfft.h
doxygen Doxyfile
# Make this directory the PWD
cd "$(dirname "${BASH_SOURCE[0]}")"
# Build doxygen info
./run_doxygen.sh
# Build sphinx docs
cd source
make clean
make html
cd ..
rm rocfft.h
+11 -7
Voir le fichier
@@ -1,13 +1,17 @@
#!/bin/bash
# # Copyright (c) 2019-2020 Advanced Micro Devices, Inc. All rights reserved.
# # Copyright (c) 2019-2021 Advanced Micro Devices, Inc. All rights reserved.
if [ -d docBin ]; then
rm -rf docBin
fi
set -eu
rm nccl.h
# Make this directory the PWD
cd "$(dirname "${BASH_SOURCE[0]}")"
sed -e 's/ROCFFT_EXPORT //g' ../src/nccl.h.in > nccl.h
# Rename our input file
cp ../src/nccl.h.in nccl.h
# Build the doxygen info
rm -rf docBin
doxygen Doxyfile
#rm nccl.h
# Cleanup
rm nccl.h
+3 -3
Voir le fichier
@@ -56,8 +56,8 @@ master_doc = 'index'
# General information about the project.
project = u'RCCL'
copyright = u'2015-2018, NVIDIA CORPORATION; Modifications Copyright 2019-2020 Advanced Mirco Devices'
author = u'Advanced Mirco Devices'
copyright = u'2015-2018, NVIDIA CORPORATION; Modifications Copyright 2019-2020 Advanced Micro Devices'
author = u'Advanced Micro Devices'
# The version info for the project you're documenting, acts as replacement for
# |version| and |release|, also used in various other places throughout the
@@ -156,7 +156,7 @@ latex_elements = {
# author, documentclass [howto, manual, or own class]).
latex_documents = [
(master_doc, 'RCCL.tex', u'RCCL Documentation',
u'Advanced Mirco Devices', 'manual'),
u'Advanced Micro Devices', 'manual'),
]