-
Notifications
You must be signed in to change notification settings - Fork 13
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Linux Build/Install/Test CI, Docs, and Coding Standard Script #8
Merged
Merged
Changes from 156 commits
Commits
Show all changes
158 commits
Select commit
Hold shift + click to select a range
7d462da
Added coding standard script
kencasimiro 42027c6
Create clang-format-fix.yml
kencasimiro 8d5ea36
Committing clang-format changes
github-actions[bot] 3173d0e
Create clang-format-check.yml
kencasimiro a6ad7a0
Create linux
kencasimiro 37bc210
Rename linux to linux.yml
kencasimiro 80e17b1
Update linux.yml
kencasimiro 4f496cc
Update linux.yml
kencasimiro 3f1123e
Update linux.yml
kencasimiro 76b20ef
Update linux.yml
kencasimiro 47948b5
Update linux.yml
kencasimiro 47dfe41
Update linux.yml
kencasimiro 0a3e84e
Update linux.yml
kencasimiro a3bdb50
Update linux.yml
kencasimiro a67a349
Update linux.yml
kencasimiro 4eb72d4
Update linux.yml
kencasimiro a616201
Update linux.yml
kencasimiro 9d17b80
Update linux.yml
kencasimiro 708a2b2
Update linux.yml
kencasimiro b737c99
Update linux.yml
kencasimiro 1ad079d
Update linux.yml
kencasimiro de55de0
Update linux.yml
kencasimiro 0eb8950
Update linux.yml
kencasimiro 7983bd4
Update linux.yml
kencasimiro e9e1e94
Update linux.yml
kencasimiro dcb5ce3
Update linux.yml
kencasimiro 8a31da7
Update linux.yml
kencasimiro 401e5f1
Update linux.yml
kencasimiro b46b627
Update linux.yml
kencasimiro 430519b
Update linux.yml
kencasimiro a9931d0
Update linux.yml
kencasimiro 2144b7f
Update linux.yml
kencasimiro 6bcc73c
Update linux.yml
kencasimiro 4d6312d
Update linux.yml
kencasimiro 1bfee13
Update linux.yml
kencasimiro 242993b
Update linux.yml
kencasimiro 05b1271
Update linux.yml
kencasimiro 49d33c0
Update linux.yml
kencasimiro 5c639bb
Update linux.yml
kencasimiro cea615e
Update linux.yml
kencasimiro 94f6f51
Update linux.yml
kencasimiro 4fa6a00
Update linux.yml
kencasimiro f0cb2dc
Update linux.yml
kencasimiro 24db6ea
Update linux.yml
kencasimiro 2f7daf3
Sphinx quick-start
kencasimiro d9036ab
Merge branch 'develop' of https://github.com/kencasimiro/vol-async in…
kencasimiro 02e1077
Added theme for sphinx
kencasimiro f37674e
Create outline for doc
kencasimiro 4bd89a8
Finalize subcategories
kencasimiro a8b4712
Finished Background subcategory
kencasimiro 5743782
Finished Introduction Section
kencasimiro 6ceb357
Added other categories
kencasimiro b3462c8
Update linux.yml
kencasimiro 7206c65
Update linux.yml
kencasimiro e37337f
Update linux.yml
kencasimiro c1038a4
Update linux.yml
kencasimiro 35e3703
Update linux.yml
kencasimiro 8000d8c
Update linux.yml
kencasimiro a07b5cf
Update linux.yml
kencasimiro d4d6112
Update linux.yml
kencasimiro 3480289
Update linux.yml
kencasimiro 7a110e3
Update linux.yml
kencasimiro 0477dab
Update linux.yml
kencasimiro a467ae7
Update linux.yml
kencasimiro 39d106e
Update linux.yml
kencasimiro b83df83
Update linux.yml
kencasimiro f87e168
Update linux.yml
kencasimiro 42e220d
Update linux.yml
kencasimiro 464d484
Update linux.yml
kencasimiro cc35a8d
Update linux.yml
kencasimiro a9fa6fe
Update linux.yml
kencasimiro 7f79374
Update linux.yml
kencasimiro c1bad01
Update linux.yml
kencasimiro b3c31fe
Update linux.yml
kencasimiro 1444354
Update linux.yml
kencasimiro 05c8c3f
Update linux.yml
kencasimiro 7a453ca
Update linux.yml
kencasimiro 2b23d6d
Update linux.yml
kencasimiro f332d2d
Update linux.yml
kencasimiro 83f818e
Update linux.yml
kencasimiro d76daec
Update linux.yml
kencasimiro ee93f8d
Completed copyright section
kencasimiro d759f53
Completed license section
kencasimiro 18c2bc5
Merge branch 'develop' of https://github.com/kencasimiro/vol-async in…
kencasimiro fe4282d
Fixed code blocks and subcategories
kencasimiro ddca71a
Update linux.yml
kencasimiro f731e26
Updating fork
kencasimiro 2477380
Merge pull request #2 from hpc-io/develop
kencasimiro 79aef53
Committing clang-format changes
github-actions[bot] e03cd4a
Update linux.yml
kencasimiro 02d8d1e
Merge branch 'develop' of https://github.com/hpc-io/vol-async into de…
kencasimiro cb2e28e
Update fork
kencasimiro 2afc2ca
Updating fork
kencasimiro bae9886
Committing clang-format changes
github-actions[bot] 65a0610
Update linux.yml
kencasimiro 39ea98a
Update linux.yml
kencasimiro f7dfbc3
Update linux.yml
kencasimiro 3ffa31c
Update linux.yml
kencasimiro e24c339
Update linux.yml
kencasimiro e3c8296
Update linux.yml
kencasimiro 0171b19
Update linux.yml
kencasimiro 436f3ff
Update linux.yml
kencasimiro aacb55d
Update linux.yml
kencasimiro 4c2a450
Update linux.yml
kencasimiro da1a9fc
Update linux.yml
kencasimiro 90068a8
Update linux.yml
kencasimiro a7f785a
Update linux.yml
kencasimiro 27ed377
Update linux.yml
kencasimiro 420eb13
Update linux.yml
kencasimiro c433630
Update linux.yml
kencasimiro 21c4be7
Update linux.yml
kencasimiro eb69c31
Update linux.yml
kencasimiro a61d981
Update linux.yml
kencasimiro cc66c29
Update linux.yml
kencasimiro fd3f2d9
Update linux.yml
kencasimiro e277c05
Update linux.yml
kencasimiro 9398b7f
Update linux.yml
kencasimiro 4372249
Update linux.yml
kencasimiro 3ff60e1
Update linux.yml
kencasimiro e3e27ac
Update linux.yml
kencasimiro d9519a5
Update linux.yml
kencasimiro c607c9c
Update linux.yml
kencasimiro cf831e9
Update linux.yml
kencasimiro a8cf8e2
Update linux.yml
kencasimiro da1397d
Update linux.yml
kencasimiro 83067e0
Update linux.yml
kencasimiro 8f458a4
Update linux.yml
kencasimiro 16830a5
Update async_test_serial_event_set_error_stack.c
kencasimiro 922bfe5
Updating fork
kencasimiro b81a580
Committing clang-format changes
github-actions[bot] 618b290
Update linux.yml
kencasimiro 64d2b66
Update linux.yml
kencasimiro 6f4022f
Update linux.yml
kencasimiro 53f788b
Update linux.yml
kencasimiro 0c5b29d
Update linux.yml
kencasimiro f8b5676
Update linux.yml
kencasimiro 12039a7
Update linux.yml
kencasimiro 7e22188
Update linux.yml
kencasimiro 491c710
Merge branch 'hpc-io:develop' into develop
kencasimiro ab4237f
Update linux.yml
kencasimiro 78f3ff1
Update linux.yml
kencasimiro b955621
Merge branch 'hpc-io:develop' into develop
kencasimiro f750779
Update linux.yml
kencasimiro f66c0f5
Update linux.yml
kencasimiro c9a3a9f
Update linux.yml
kencasimiro 87e97aa
Update linux.yml
kencasimiro c855902
Update linux.yml
kencasimiro 6ef4760
Update linux.yml
kencasimiro df01139
Update fork
kencasimiro 1afcfb8
Merge branch 'develop' of https://github.com/kencasimiro/vol-async in…
kencasimiro c08873f
Update linux.yml
kencasimiro 4c748f5
Committing clang-format changes
github-actions[bot] e010ed1
Update fork
kencasimiro 53ac459
Update
kencasimiro 6c9393f
Committing clang-format changes
github-actions[bot] 260353a
Update linux.yml
kencasimiro c779bef
Update .clang-format
kencasimiro f83982d
Merge branch 'hpc-io:develop' into develop
kencasimiro File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,58 @@ | ||
--- | ||
Language: Cpp | ||
BasedOnStyle: LLVM | ||
AlignConsecutiveAssignments: true | ||
#llvm11: AlignConsecutiveBitFields: false | ||
AlignConsecutiveDeclarations: true | ||
AlignConsecutiveMacros: true | ||
#llvm10-11: AlignOperands: true - Align | ||
#llvm11: AllowShortEnumsOnASingleLine: true | ||
AllowShortFunctionsOnASingleLine: None | ||
AlwaysBreakAfterReturnType: AllDefinitions | ||
BraceWrapping: | ||
AfterFunction: true | ||
#llvm10-11: AfterControlStatement: false - Never | ||
BeforeCatch: true | ||
BeforeElse: true | ||
#llvm11: BeforeLambdaBody: false | ||
#llvm11: BeforeWhile: false | ||
BreakBeforeBraces: Stroustrup | ||
BreakAfterJavaFieldAnnotations: true | ||
BreakStringLiterals: true | ||
ColumnLimit: 110 # Update $max_trace_macro_line_len in bin/trace also | ||
IncludeCategories: | ||
- Regex: '^"(llvm|llvm-c|clang|clang-c)/' | ||
Priority: 3 | ||
SortPriority: 0 | ||
- Regex: '^(<|"(gtest|gmock|isl|json)/)' | ||
Priority: 4 | ||
SortPriority: 0 | ||
- Regex: '.*' | ||
Priority: 0 | ||
SortPriority: 0 | ||
- Regex: '^PDC*.*' | ||
Priority: 1 | ||
SortPriority: 0 | ||
- Regex: 'private.*' | ||
Priority: 2 | ||
SortPriority: 0 | ||
IncludeIsMainRegex: '(public)?$' | ||
IndentCaseLabels: true | ||
#llvm11: IndentCaseBlocks: false | ||
IndentGotoLabels: false | ||
#llvm11: IndentExternBlock: AfterExternBlock | ||
IndentWidth: 4 | ||
#llvm11: InsertTrailingCommas: None | ||
# MacroBlockBegin: "^BEGIN_FUNC" | ||
# MacroBlockEnd: "^END_FUNC" | ||
ObjCBlockIndentWidth: 4 | ||
#llvm11: ObjCBreakBeforeNestedBlockParam: true | ||
ReflowComments: true | ||
SortIncludes: false | ||
StatementMacros: | ||
#llvm10: TypenameMacros: | ||
#llvm10: - STACK_OF | ||
#llvm10: - LIST | ||
#llvm11: WhitespaceSensitiveMacros: | ||
#llvm11: - STRINGIZE | ||
#llvm11: - PP_STRINGIZE |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,18 @@ | ||
name: clang-format Check | ||
on: | ||
pull_request: | ||
jobs: | ||
formatting-check: | ||
name: Formatting Check | ||
runs-on: ubuntu-latest | ||
if: "!contains(github.event.head_commit.message, 'skip-ci')" | ||
steps: | ||
- uses: actions/checkout@v2 | ||
- name: Run clang-format style check for C programs. | ||
uses: DoozyX/clang-format-lint-action@v0.11 | ||
with: | ||
source: '.' | ||
extensions: 'c,h,cpp,hpp' | ||
clangFormatVersion: 10 | ||
style: file | ||
# exclude: './config' |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,25 @@ | ||
name: clang-format Check | ||
on: | ||
workflow_dispatch: | ||
push: | ||
jobs: | ||
formatting-check: | ||
name: Formatting Check | ||
runs-on: ubuntu-latest | ||
if: "!contains(github.event.head_commit.message, 'skip-ci')" | ||
steps: | ||
- uses: actions/checkout@v2 | ||
- name: Run clang-format style check for C programs. | ||
uses: DoozyX/clang-format-lint-action@v0.11 | ||
with: | ||
source: '.' | ||
extensions: 'c,h,cpp,hpp' | ||
clangFormatVersion: 10 | ||
inplace: True | ||
style: file | ||
# exclude: './config ' | ||
- uses: EndBug/add-and-commit@v7 | ||
with: | ||
author_name: github-actions | ||
author_email: github-actions[bot]@users.noreply.github.com | ||
message: 'Committing clang-format changes' |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,86 @@ | ||
name: linux | ||
|
||
on: | ||
pull_request: | ||
branches: [ develop ] | ||
|
||
# Allows to run this workflow manually from the Actions tab | ||
workflow_dispatch: | ||
jobs: | ||
vol-async: | ||
runs-on: ubuntu-latest | ||
timeout-minutes: 60 | ||
|
||
steps: | ||
- uses: actions/checkout@v2 | ||
- name: Checkout submodule argobots | ||
run: git submodule update --init --recursive | ||
|
||
|
||
- name: Dependencies | ||
run: | | ||
sudo apt-get update | ||
sudo apt-get install libtool | ||
# hdf5 | ||
git clone https://github.com/HDFGroup/hdf5.git | ||
# mpi | ||
sudo apt-get install libopenmpi-dev | ||
# zlib | ||
sudo apt-get install zlib1g-dev | ||
# python3 | ||
sudo apt-get install python3 | ||
|
||
- name: Installation | ||
run: | | ||
mydir="$PWD" | ||
export HDF5_DIR=$mydir/hdf5/install | ||
export ABT_DIR=$mydir/argobots | ||
export VOL_DIR=$mydir | ||
|
||
mkdir $HDF5_DIR | ||
# Compile HDF5 | ||
cd hdf5 | ||
export HDF5_LIBTOOL=/usr/bin/libtoolize | ||
./autogen.sh | ||
./configure --prefix=$HDF5_DIR --enable-parallel --enable-threadsafe --enable-unsupported | ||
make && make install | ||
|
||
# Compile Argobots | ||
cd $ABT_DIR | ||
./autogen.sh | ||
./configure --prefix=$ABT_DIR | ||
make && make install | ||
|
||
# Compile Asynchronous VOL connector | ||
cd $VOL_DIR/src | ||
tail -n 48 Makefile.summit > Makefile | ||
make | ||
|
||
- name: Compile and Test Vol-Async | ||
run: | | ||
# Compile vol-async tests | ||
mydir="$PWD" | ||
cd $mydir | ||
cd test | ||
|
||
# Set Environmental Variables | ||
export H5_DIR=$mydir/hdf5 | ||
export VOL_DIR=$mydir/ | ||
export ABT_DIR=$mydir/argobots | ||
export ASYNC_DIR=$mydir/src | ||
export HDF5_DIR=$mydir/hdf5/install | ||
export LD_LIBRARY_PATH=$VOL_DIR/src:$H5_DIR/install/lib:$ABT_DIR/lib:$LD_LIBRARY_PATH | ||
export HDF5_PLUGIN_PATH="$VOL_DIR/src" | ||
export HDF5_VOL_CONNECTOR="async under_vol=0;under_info={}" | ||
|
||
# Makefile | ||
tail -n 47 Makefile.summit > Makefile | ||
export LD_PRELOAD=$mydir/argobots/lib/libabt.so | ||
make | ||
|
||
# Run serial and parallel tests | ||
make check | ||
|
||
# Run serial tests only | ||
make check_serial | ||
|
Binary file not shown.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,20 @@ | ||
# Minimal makefile for Sphinx documentation | ||
# | ||
|
||
# You can set these variables from the command line, and also | ||
# from the environment for the first two. | ||
SPHINXOPTS ?= | ||
SPHINXBUILD ?= sphinx-build | ||
SOURCEDIR = source | ||
BUILDDIR = build | ||
|
||
# Put it first so that "make" without argument is like "make help". | ||
help: | ||
@$(SPHINXBUILD) -M help "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O) | ||
|
||
.PHONY: help Makefile | ||
|
||
# Catch-all target: route all unknown targets to Sphinx using the new | ||
# "make mode" option. $(O) is meant as a shortcut for $(SPHINXOPTS). | ||
%: Makefile | ||
@$(SPHINXBUILD) -M $@ "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,35 @@ | ||
@ECHO OFF | ||
|
||
pushd %~dp0 | ||
|
||
REM Command file for Sphinx documentation | ||
|
||
if "%SPHINXBUILD%" == "" ( | ||
set SPHINXBUILD=sphinx-build | ||
) | ||
set SOURCEDIR=source | ||
set BUILDDIR=build | ||
|
||
if "%1" == "" goto help | ||
|
||
%SPHINXBUILD% >NUL 2>NUL | ||
if errorlevel 9009 ( | ||
echo. | ||
echo.The 'sphinx-build' command was not found. Make sure you have Sphinx | ||
echo.installed, then set the SPHINXBUILD environment variable to point | ||
echo.to the full path of the 'sphinx-build' executable. Alternatively you | ||
echo.may add the Sphinx directory to PATH. | ||
echo. | ||
echo.If you don't have Sphinx installed, grab it from | ||
echo.http://sphinx-doc.org/ | ||
exit /b 1 | ||
) | ||
|
||
%SPHINXBUILD% -M %1 %SOURCEDIR% %BUILDDIR% %SPHINXOPTS% %O% | ||
goto end | ||
|
||
:help | ||
%SPHINXBUILD% -M help %SOURCEDIR% %BUILDDIR% %SPHINXOPTS% %O% | ||
|
||
:end | ||
popd |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,56 @@ | ||
# Configuration file for the Sphinx documentation builder. | ||
# | ||
# This file only contains a selection of the most common options. For a full | ||
# list see the documentation: | ||
# https://www.sphinx-doc.org/en/master/usage/configuration.html | ||
|
||
# -- Path setup -------------------------------------------------------------- | ||
|
||
# If extensions (or modules to document with autodoc) are in another directory, | ||
# add these directories to sys.path here. If the directory is relative to the | ||
# documentation root, use os.path.abspath to make it absolute, like shown here. | ||
# | ||
# import os | ||
# import sys | ||
# sys.path.insert(0, os.path.abspath('.')) | ||
|
||
|
||
# -- Project information ----------------------------------------------------- | ||
|
||
project = 'HDF5 Asynchronous I/O VOL Connector' | ||
copyright = '2021, Houjun Tang, Quincey Koziol, Suren Byna, John Mainzer, Tonglin Li' | ||
author = 'Houjun Tang, Quincey Koziol, Suren Byna, John Mainzer, Tonglin Li' | ||
|
||
# The full version, including alpha/beta/rc tags | ||
release = '0.1' | ||
|
||
|
||
# -- General configuration --------------------------------------------------- | ||
|
||
# Add any Sphinx extension module names here, as strings. They can be | ||
# extensions coming with Sphinx (named 'sphinx.ext.*') or your custom | ||
# ones. | ||
extensions = [] | ||
|
||
pygments_style = 'sphinx' | ||
|
||
# Add any paths that contain templates here, relative to this directory. | ||
templates_path = ['_templates'] | ||
|
||
# List of patterns, relative to source directory, that match files and | ||
# directories to ignore when looking for source files. | ||
# This pattern also affects html_static_path and html_extra_path. | ||
exclude_patterns = [] | ||
|
||
|
||
# -- Options for HTML output ------------------------------------------------- | ||
|
||
# The theme to use for HTML and HTML Help pages. See the documentation for | ||
# a list of builtin themes. | ||
# | ||
html_theme = 'sphinx_rtd_theme' | ||
|
||
# Add any paths that contain custom static files (such as style sheets) here, | ||
# relative to this directory. They are copied after the builtin static files, | ||
# so a file named "default.css" will overwrite the builtin "default.css". | ||
html_static_path = ['_static'] |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,18 @@ | ||
Copyright | ||
=================================== | ||
|
||
Asynchronous I/O VOL Connector (AsyncVOL) Copyright (c) 2020, The | ||
Regents of the University of California, through Lawrence Berkeley | ||
National Laboratory (subject to receipt of any required approvals from | ||
the U.S. Dept. of Energy). All rights reserved. | ||
|
||
If you have questions about your rights to use or distribute this software, | ||
please contact Berkeley Lab's Intellectual Property Office at | ||
IPO@lbl.gov. | ||
|
||
NOTICE. This Software was developed under funding from the U.S. Department | ||
of Energy and the U.S. Government consequently retains certain rights. As | ||
such, the U.S. Government has been granted for itself and others acting on | ||
its behalf a paid-up, nonexclusive, irrevocable, worldwide license in the | ||
Software to reproduce, distribute copies to the public, prepare derivative | ||
works, and perform publicly and display publicly, and to permit others to do so. |
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is not needed.