Build system: Add phpDoc list
This commit is contained in:
parent
4c0366fa49
commit
79a14799bb
3 changed files with 96 additions and 5 deletions
|
@ -37,12 +37,20 @@ generate-phpdoc.sh \
|
|||
[ $? -eq 0 ] || exit 1
|
||||
[ -n "$(git status --porcelain "$DEPLOYMENT_DIR/phpDoc/$DEPLOYMENT_ID.cache")" ] || exit 0
|
||||
|
||||
# update phpDoc list
|
||||
update-phpdoc-list.sh \
|
||||
"$DEPLOYMENT_DIR/_data/phpDoc.yml" \
|
||||
"$TRAVIS_BRANCH" "branch" "\`$TRAVIS_BRANCH\` branch" "$(date +%s)"
|
||||
|
||||
# commit phpDocs
|
||||
echo "Committing changes..."
|
||||
git add "$DEPLOYMENT_DIR/phpDoc/$DEPLOYMENT_ID.cache" "$DEPLOYMENT_DIR/phpDoc/$DEPLOYMENT_ID"
|
||||
git add \
|
||||
"$DEPLOYMENT_DIR/phpDoc/$DEPLOYMENT_ID.cache" "$DEPLOYMENT_DIR/phpDoc/$DEPLOYMENT_ID" \
|
||||
"$DEPLOYMENT_DIR/_data/phpDoc.yml"
|
||||
git commit \
|
||||
--message="Update phpDocumentor class docs for $TRAVIS_BRANCH branch @ $TRAVIS_COMMIT" \
|
||||
"$DEPLOYMENT_DIR/phpDoc/$DEPLOYMENT_ID.cache" "$DEPLOYMENT_DIR/phpDoc/$DEPLOYMENT_ID"
|
||||
"$DEPLOYMENT_DIR/phpDoc/$DEPLOYMENT_ID.cache" "$DEPLOYMENT_DIR/phpDoc/$DEPLOYMENT_ID" \
|
||||
"$DEPLOYMENT_DIR/_data/phpDoc.yml"
|
||||
[ $? -eq 0 ] || exit 1
|
||||
echo
|
||||
|
||||
|
|
|
@ -35,13 +35,18 @@ if [ "$DEPLOY_PHPDOC_RELEASES" == "true" ]; then
|
|||
"Pico 1.0 API Documentation ($TRAVIS_TAG)"
|
||||
[ $? -eq 0 ] || exit 1
|
||||
|
||||
# commit phpDocs
|
||||
if [ -n "$(git status --porcelain "$DEPLOYMENT_DIR/phpDoc/$DEPLOYMENT_ID")" ]; then
|
||||
# update phpDoc list
|
||||
update-phpdoc-list.sh \
|
||||
"$DEPLOYMENT_DIR/_data/phpDoc.yml" \
|
||||
"$TRAVIS_TAG" "version" "Pico ${TRAVIS_TAG#v}" "$(date +%s)"
|
||||
|
||||
# commit phpDocs
|
||||
echo "Committing phpDoc changes..."
|
||||
git add "$DEPLOYMENT_DIR/phpDoc/$DEPLOYMENT_ID"
|
||||
git add "$DEPLOYMENT_DIR/phpDoc/$DEPLOYMENT_ID" "$DEPLOYMENT_DIR/_data/phpDoc.yml"
|
||||
git commit \
|
||||
--message="Update phpDocumentor class docs for $TRAVIS_TAG" \
|
||||
"$DEPLOYMENT_DIR/phpDoc/$DEPLOYMENT_ID"
|
||||
"$DEPLOYMENT_DIR/phpDoc/$DEPLOYMENT_ID" "$DEPLOYMENT_DIR/_data/phpDoc.yml"
|
||||
[ $? -eq 0 ] || exit 1
|
||||
echo
|
||||
fi
|
||||
|
|
78
_build/update-phpdoc-list.sh
Executable file
78
_build/update-phpdoc-list.sh
Executable file
|
@ -0,0 +1,78 @@
|
|||
#!/usr/bin/env bash
|
||||
|
||||
##
|
||||
# Updates the phpDoc list
|
||||
#
|
||||
# @author Daniel Rudolf
|
||||
# @link http://picocms.org
|
||||
# @license http://opensource.org/licenses/MIT
|
||||
#
|
||||
|
||||
set -e
|
||||
|
||||
# parameters
|
||||
LIST_FILE_PATH="$1" # target file path
|
||||
LIST_ID="$2" # phpDoc ID
|
||||
LIST_TYPE="$3" # phpDoc type
|
||||
LIST_TITLE="$4" # phpDoc title
|
||||
LIST_LAST_UPDATE="$5" # phpDoc last update
|
||||
|
||||
# print parameters
|
||||
echo "Updating phpDoc list..."
|
||||
printf 'LIST_FILE_PATH="%s"\n' "$LIST_FILE_PATH"
|
||||
printf 'LIST_ID="%s"\n' "$LIST_ID"
|
||||
printf 'LIST_TYPE="%s"\n' "$LIST_TYPE"
|
||||
printf 'LIST_TITLE="%s"\n' "$LIST_TITLE"
|
||||
printf 'LIST_LAST_UPDATE="%s"\n' "$LIST_LAST_UPDATE"
|
||||
echo
|
||||
|
||||
# create temporary file
|
||||
printf 'Creating temporary file...\n'
|
||||
LIST_TMP_FILE="$(mktemp)"
|
||||
[ -n "$LIST_TMP_FILE" ] || exit 1
|
||||
|
||||
exec 3> "$LIST_TMP_FILE"
|
||||
|
||||
# walk through phpDoc list
|
||||
printf 'Walking through phpDoc list...\n'
|
||||
|
||||
DO_REPLACE="no"
|
||||
DID_REPLACE="no"
|
||||
while IFS='' read -r LINE || [[ -n "$LINE" ]]; do
|
||||
if [ "$DO_REPLACE" == "yes" ]; then
|
||||
# skip lines until next entry is reached
|
||||
[ "${LINE:0:2}" == " " ] && continue
|
||||
DO_REPLACE="no"
|
||||
|
||||
elif [ "$LINE" == "- id: $LIST_ID" ]; then
|
||||
# update existing entry
|
||||
printf 'Updating existing entry...\n'
|
||||
printf -- '- id: %s\n' "$LIST_ID" >&3
|
||||
printf -- ' type: %s\n' "$LIST_TYPE" >&3
|
||||
printf -- ' title: %s\n' "$LIST_TITLE" >&3
|
||||
printf -- ' last_update: %s\n' "$LIST_LAST_UPDATE" >&3
|
||||
|
||||
DO_REPLACE="yes"
|
||||
DID_REPLACE="yes"
|
||||
continue
|
||||
fi
|
||||
|
||||
echo "$LINE" >&3
|
||||
done < "$LIST_FILE_PATH"
|
||||
|
||||
# add new entry
|
||||
if [ "$DID_REPLACE" == "no" ]; then
|
||||
printf 'Adding new entry...\n'
|
||||
printf -- '- id: %s\n' "$LIST_ID" >&3
|
||||
printf -- ' type: %s\n' "$LIST_TYPE" >&3
|
||||
printf -- ' title: %s\n' "$LIST_TITLE" >&3
|
||||
printf -- ' last_update: %s\n' "$LIST_LAST_UPDATE" >&3
|
||||
fi
|
||||
|
||||
exec 3>&-
|
||||
|
||||
# move temporary file
|
||||
printf 'Replacing phpDoc list...\n'
|
||||
mv "$LIST_TMP_FILE" "$LIST_FILE_PATH"
|
||||
|
||||
echo
|
Loading…
Add table
Reference in a new issue