dotcloud/docker

View on GitHub
hack/validate/swagger-gen

Summary

Maintainability
Test Coverage
#!/usr/bin/env bash

SCRIPTDIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
source "${SCRIPTDIR}/.validate"

IFS=$'\n'
files=($(validate_diff --diff-filter=ACMR --name-only -- 'api/types/' 'api/swagger.yaml' || true))
unset IFS

if [ -n "${TEST_FORCE_VALIDATE:-}" ] || [ ${#files[@]} -gt 0 ]; then
    "${SCRIPTDIR}"/../generate-swagger-api.sh 2> /dev/null
    # Let see if the working directory is clean
    diffs="$(git diff -- api/types/)"
    if [ "$diffs" ]; then
        {
            echo 'The result of hack/generate-swagger-api.sh differs'
            echo
            echo "$diffs"
            echo
            echo 'Please update api/swagger.yaml with any API changes, then '
            echo 'run hack/generate-swagger-api.sh.'
        } >&2
        false
    else
        echo 'Congratulations!  All API changes are done the right way.'
    fi
else
    echo 'No api/types/ or api/swagger.yaml changes in diff.'
fi