Skip to content

Commit

Permalink
update docs generation script to work better with selinux (#63)
Browse files Browse the repository at this point in the history
motivation: docs scripts is broken on selinux due to restriction on ssh-agent

changes:
* change the jazzy workspace to a directory accessible by the CI node so we can push from the agent instead of from the docker container
* dont remove older docs when pushing new ones
* add version inforamtion and source links
  • Loading branch information
tomerd authored Feb 28, 2020
1 parent 09b72f6 commit ab3f3ff
Showing 1 changed file with 12 additions and 7 deletions.
19 changes: 12 additions & 7 deletions scripts/generate_docs.sh
Original file line number Diff line number Diff line change
Expand Up @@ -52,9 +52,11 @@ if ! command -v jazzy > /dev/null; then
gem install jazzy --no-ri --no-rdoc
fi

tmp=`mktemp -d`
mkdir -p "$tmp/docs/$version"
module_switcher="$tmp/docs/$version/README.md"
jazzy_dir="$root_path/.build/jazzy"
rm -rf "$jazzy_dir"
mkdir -p "$jazzy_dir"

module_switcher="$jazzy_dir/README.md"
jazzy_args=(--clean
--author 'SwiftMetrics team'
--readme "$module_switcher"
Expand Down Expand Up @@ -84,21 +86,24 @@ done

for module in "${modules[@]}"; do
echo "processing $module"
args=("${jazzy_args[@]}" --output "$tmp/docs/$version/$module" --docset-path "$tmp/docset/$version/$module" --module "$module")
args=("${jazzy_args[@]}" --output "$jazzy_dir/docs/$version/$module" --docset-path "$jazzy_dir/docset/$version/$module"
--module "$module" --module-version $version
--root-url "https://apple.github.io/swift-metrics/docs/$version/$module/")
if [[ -f "$root_path/.build/sourcekitten/$module.json" ]]; then
args+=(--sourcekitten-sourcefile "$root_path/.build/sourcekitten/$module.json")
fi
jazzy "${args[@]}"
done

# push to github pages
if [[ $CI == true ]]; then
if [[ $PUSH == true ]]; then
BRANCH_NAME=$(git rev-parse --abbrev-ref HEAD)
GIT_AUTHOR=$(git --no-pager show -s --format='%an <%ae>' HEAD)
git fetch origin +gh-pages:gh-pages
git checkout gh-pages
rm -rf "docs"
cp -r "$tmp/docs" .
rm -rf "docs/$version"
rm -rf "docs/current"
cp -r "$jazzy_dir/docs/$version" docs/
cp -r "docs/$version" docs/current
git add --all docs
echo '<html><head><meta http-equiv="refresh" content="0; url=docs/current/CoreMetrics/index.html" /></head></html>' > index.html
Expand Down

0 comments on commit ab3f3ff

Please sign in to comment.