-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #3 from dnv-opensource/2-create-package-structure-…
…for-first-draft 2 create package structure for first draft
- Loading branch information
Showing
41 changed files
with
6,376 additions
and
1,368 deletions.
There are no files selected for viewing
225 changes: 115 additions & 110 deletions
225
.github/workflows/_build_and_publish_documentation.yml
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 |
---|---|---|
@@ -1,110 +1,115 @@ | ||
name: Build and publish documentation | ||
|
||
on: workflow_call | ||
|
||
env: | ||
DEFAULT_BRANCH: 'release' | ||
#SPHINXOPTS: '-W --keep-going -T' | ||
# ^-- If these SPHINXOPTS are enabled, then be strict about the builds and fail on any warnings | ||
|
||
jobs: | ||
build-and-publish-docs: | ||
name: Build and publish documentation | ||
runs-on: ubuntu-latest | ||
steps: | ||
- name: Checkout active branch | ||
uses: actions/checkout@v4 | ||
with: | ||
fetch-depth: 1 | ||
lfs: true | ||
- name: Install Python | ||
uses: actions/setup-python@v4 | ||
with: | ||
python-version: '3.11' | ||
cache: 'pip' # cache pip dependencies | ||
- name: Install dependencies | ||
run: | | ||
pip install -r requirements-dev.txt | ||
- name: Print debugging information | ||
run: | | ||
echo "github.ref:" ${{github.ref}} | ||
echo "github.event_name:" ${{github.event_name}} | ||
echo "github.head_ref:" ${{github.head_ref}} | ||
echo "github.base_ref:" ${{github.base_ref}} | ||
set -x | ||
git rev-parse --abbrev-ref HEAD | ||
git branch | ||
git branch -a | ||
git remote -v | ||
python -V | ||
pip list --not-required | ||
pip list | ||
# Build documentation | ||
- uses: sphinx-doc/github-problem-matcher@master | ||
- name: Build documentation | ||
run: | | ||
cd docs | ||
make html | ||
- name: Clone and cleanup gh-pages branch | ||
run: | | ||
set -x | ||
git fetch | ||
( git branch gh-pages remotes/origin/gh-pages && git clone . --branch=gh-pages _gh-pages/ ) || mkdir _gh-pages | ||
rm -rf _gh-pages/.git/ | ||
mkdir -p _gh-pages/branch/ | ||
# Delete orphaned branch-folders: | ||
# Go through each subfolder in _gh-pages/branch/ | ||
# If it relates to an orphaned branch, delete it. | ||
- name: Delete orphaned branch-folders | ||
run: | | ||
set -x | ||
for brdir in `ls _gh-pages/branch/` ; do | ||
brname=${brdir//--/\/} # replace '--' with '/' | ||
if ! git show-ref remotes/origin/$brname ; then | ||
echo "Removing $brdir" | ||
rm -r _gh-pages/branch/$brdir/ | ||
fi | ||
done | ||
# Copy documentation to _gh-pages/ (if push happened on release branch) | ||
- name: Copy documentation to _gh-pages/ | ||
if: | | ||
contains(github.ref, env.DEFAULT_BRANCH) | ||
run: | | ||
set -x | ||
# Delete everything under _gh-pages/ that is from the | ||
# primary branch deployment. Excludes the other branches | ||
# _gh-pages/branch-* paths, and not including | ||
# _gh-pages itself. | ||
find _gh-pages/ -mindepth 1 ! -path '_gh-pages/branch*' -delete | ||
rsync -a docs/build/html/ _gh-pages/ | ||
# Copy documentation to _gh-pages/branch/$brname (if push happened on any other branch) | ||
# ('/' gets replaced by '--') | ||
- name: Copy documentation to _gh-pages/branch/${{github.ref}} | ||
if: | | ||
!contains(github.ref, env.DEFAULT_BRANCH) | ||
run: | | ||
set -x | ||
#brname=$(git rev-parse --abbrev-ref HEAD) | ||
brname="${{github.ref}}" | ||
brname="${brname##refs/heads/}" | ||
brdir=${brname//\//--} # replace '/' with '--' | ||
rm -rf _gh-pages/branch/${brdir} | ||
rsync -a docs/build/html/ _gh-pages/branch/${brdir} | ||
# Add .nojekyll file | ||
- name: Add .nojekyll file | ||
run: touch _gh-pages/.nojekyll | ||
|
||
# Publish: Commit gh-pages branch and publish it to GitHub Pages | ||
- name: Publish documentation | ||
uses: peaceiris/actions-gh-pages@v3 | ||
with: | ||
publish_branch: gh-pages | ||
github_token: ${{ secrets.GITHUB_TOKEN }} | ||
publish_dir: _gh-pages/ | ||
force_orphan: true | ||
name: Build and publish documentation | ||
|
||
on: workflow_call | ||
|
||
env: | ||
DEFAULT_BRANCH: 'release' | ||
#SPHINXOPTS: '-W --keep-going -T' | ||
# ^-- If these SPHINXOPTS are enabled, then be strict about the builds and fail on any warnings | ||
|
||
jobs: | ||
build-and-publish-docs: | ||
name: Build and publish documentation | ||
runs-on: ubuntu-latest | ||
steps: | ||
- name: Checkout active branch | ||
uses: actions/checkout@v4 | ||
with: | ||
fetch-depth: 1 | ||
lfs: true | ||
- name: Install Python | ||
uses: actions/setup-python@v4 | ||
with: | ||
python-version: '3.11' | ||
cache: 'pip' # cache pip dependencies | ||
- name: Install dependencies | ||
run: | | ||
pip install -r requirements-dev.txt | ||
- name: Print debugging information | ||
run: | | ||
echo "github.ref:" ${{github.ref}} | ||
echo "github.event_name:" ${{github.event_name}} | ||
echo "github.head_ref:" ${{github.head_ref}} | ||
echo "github.base_ref:" ${{github.base_ref}} | ||
set -x | ||
git rev-parse --abbrev-ref HEAD | ||
git branch | ||
git branch -a | ||
git remote -v | ||
python -V | ||
pip list --not-required | ||
pip list | ||
- name: Generate schema and -documentation | ||
run: | | ||
pip install -e . | ||
publish-schema | ||
# Build documentation | ||
- uses: sphinx-doc/github-problem-matcher@master | ||
- name: Build documentation | ||
run: | | ||
cd docs | ||
make html | ||
- name: Clone and cleanup gh-pages branch | ||
run: | | ||
set -x | ||
git fetch | ||
( git branch gh-pages remotes/origin/gh-pages && git clone . --branch=gh-pages _gh-pages/ ) || mkdir _gh-pages | ||
rm -rf _gh-pages/.git/ | ||
mkdir -p _gh-pages/branch/ | ||
# Delete orphaned branch-folders: | ||
# Go through each subfolder in _gh-pages/branch/ | ||
# If it relates to an orphaned branch, delete it. | ||
- name: Delete orphaned branch-folders | ||
run: | | ||
set -x | ||
for brdir in `ls _gh-pages/branch/` ; do | ||
brname=${brdir//--/\/} # replace '--' with '/' | ||
if ! git show-ref remotes/origin/$brname ; then | ||
echo "Removing $brdir" | ||
rm -r _gh-pages/branch/$brdir/ | ||
fi | ||
done | ||
# Copy documentation to _gh-pages/ (if push happened on release branch) | ||
- name: Copy documentation to _gh-pages/ | ||
if: | | ||
contains(github.ref, env.DEFAULT_BRANCH) | ||
run: | | ||
set -x | ||
# Delete everything under _gh-pages/ that is from the | ||
# primary branch deployment. Excludes the other branches | ||
# _gh-pages/branch-* paths, and not including | ||
# _gh-pages itself. | ||
find _gh-pages/ -mindepth 1 ! -path '_gh-pages/branch*' -delete | ||
rsync -a docs/build/html/ _gh-pages/ | ||
# Copy documentation to _gh-pages/branch/$brname (if push happened on any other branch) | ||
# ('/' gets replaced by '--') | ||
- name: Copy documentation to _gh-pages/branch/${{github.ref}} | ||
if: | | ||
!contains(github.ref, env.DEFAULT_BRANCH) | ||
run: | | ||
set -x | ||
#brname=$(git rev-parse --abbrev-ref HEAD) | ||
brname="${{github.ref}}" | ||
brname="${brname##refs/heads/}" | ||
brdir=${brname//\//--} # replace '/' with '--' | ||
rm -rf _gh-pages/branch/${brdir} | ||
rsync -a docs/build/html/ _gh-pages/branch/${brdir} | ||
# Add .nojekyll file | ||
- name: Add .nojekyll file | ||
run: touch _gh-pages/.nojekyll | ||
|
||
# Publish: Commit gh-pages branch and publish it to GitHub Pages | ||
- name: Publish documentation | ||
uses: peaceiris/actions-gh-pages@v3 | ||
with: | ||
publish_branch: gh-pages | ||
github_token: ${{ secrets.GITHUB_TOKEN }} | ||
publish_dir: _gh-pages/ | ||
force_orphan: true |
Oops, something went wrong.