chore(docs): change api root to latest stable

This commit is contained in:
Brian Dennis
2016-07-18 18:10:14 -05:00
parent cca3309f4c
commit f4fac225fa
7 changed files with 46 additions and 16 deletions

View File

@ -19,14 +19,18 @@ function run {
VERSION=$(readJsonProp "package.json" "version") VERSION=$(readJsonProp "package.json" "version")
if [[ "$OLD_VERSION" != "$VERSION" ]]; then if [[ "$OLD_VERSION" != "$VERSION" ]]; then
# ./scripts/bump/release.sh --new-version="$VERSION" ./scripts/bump/release.sh --new-version="$VERSION"
IS_RELEASE=true IS_RELEASE=true
VERSION_NAME=$(readJsonProp "package.json" "version") VERSION_NAME=$(readJsonProp "package.json" "version")
else else
# ./scripts/bump/nightly.sh --build-number=$BUILD_NUMBER ./scripts/bump/nightly.sh --build-number=$BUILD_NUMBER
IS_RELEASE=false
VERSION_NAME="nightly" VERSION_NAME="nightly"
fi fi
export IS_RELEASE=$IS_RELEASE
export OLD_VERSION=$OLD_VERSION
# Install gulp globally for site deploy script. # Install gulp globally for site deploy script.
# npm install -g gulp # npm install -g gulp

View File

@ -22,11 +22,31 @@ function run {
#compile API Demos #compile API Demos
./node_modules/.bin/gulp demos --production=true ./node_modules/.bin/gulp demos --production=true
# process new docs # if release, copy old version to seperate folder and blow out docs root api
if $IS_RELEASE; then
echo "BUILDING RELEASE DOCS"
if [ -d "$DOCS_DEST/api" ]; then if [ -d "$DOCS_DEST/api" ]; then
rm -R $DOCS_DEST/api rm -R $DOCS_DEST/api
fi fi
if [ -d "$DOCS_DEST/nightly/api" ]; then
rm -R $DOCS_DEST/nightly/api
fi
./node_modules/.bin/gulp docs --doc-version="$VERSION_NAME" --initial-build true
./node_modules/.bin/gulp docs --doc-version="$VERSION_NAME" ./node_modules/.bin/gulp docs --doc-version="$VERSION_NAME"
./node_modules/.bin/gulp docs --doc-version="nightly"
else
if [ -d "$DOCS_DEST/nightly/api" ]; then
rm -R $DOCS_DEST/nightly/api
fi
./node_modules/.bin/gulp docs --doc-version="$VERSION_NAME"
fi
# compile sass vars json for ionic-site docs # compile sass vars json for ionic-site docs
./node_modules/.bin/gulp docs.sass-variables ./node_modules/.bin/gulp docs.sass-variables

View File

@ -11,7 +11,7 @@ var _ = require('lodash');
var config = require('../config.json'); var config = require('../config.json');
// Define the dgeni package for generating the docs // Define the dgeni package for generating the docs
module.exports = function(currentVersion) { module.exports = function(currentVersion, initialVersionBuild) {
return new Package('ionic-v2-docs', return new Package('ionic-v2-docs',
[jsdocPackage, nunjucksPackage, typescriptPackage, [jsdocPackage, nunjucksPackage, typescriptPackage,
@ -70,10 +70,10 @@ module.exports = function(currentVersion) {
//First semver valid version is latest //First semver valid version is latest
var latestVersion = _.find(versions, semver.valid); var latestVersion = _.find(versions, semver.valid);
versions = versions.map(function(version) { versions = versions.map(function(version) {
//Latest version is in docs root // Set nightly as docs root
//var folder = version == latestVersion ? '' : version; //var folder = version == 'nightly' ? '' : version;
// Instead set nightly as docs root //Instead set latest version in docs root if not initial build
var folder = version == 'nightly' ? '' : version; var folder = (version == latestVersion) && !initialVersionBuild ? '' : version;
return { return {
href: path.join('/' + config.v2DocsDir, folder), href: path.join('/' + config.v2DocsDir, folder),
folder: folder, folder: folder,
@ -84,7 +84,8 @@ module.exports = function(currentVersion) {
var versionData = { var versionData = {
list: versions, list: versions,
current: _.find(versions, { name: currentVersion }), current: _.find(versions, { name: currentVersion }),
latest: _.find(versions, {name: latestVersion}) || _.first(versions) latest: _.find(versions, {name: latestVersion}) || _.first(versions),
initialVersionBuild: initialVersionBuild
}; };
renderDocsProcessor.extraData.version = versionData; renderDocsProcessor.extraData.version = versionData;

View File

@ -5,12 +5,13 @@ module.exports = function(gulp, flags) {
var semver = require('semver'); var semver = require('semver');
var docVersion = flags['doc-version'] || 'nightly'; var docVersion = flags['doc-version'] || 'nightly';
var initialVersionBuild = flags['initial-build'] || false;
if (docVersion != 'nightly' && !semver.valid(docVersion)) { if (docVersion != 'nightly' && !semver.valid(docVersion)) {
console.log('Usage: gulp docs --doc-version=(nightly|versionName)\nversionName must be a valid semver version.'); console.log('Usage: gulp docs --doc-version=(nightly|versionName)\nversionName must be a valid semver version.');
return process.exit(1); return process.exit(1);
} }
try { try {
var ionicPackage = require('./dgeni-config')(docVersion); var ionicPackage = require('./dgeni-config')(docVersion, initialVersionBuild);
var dgeni = new Dgeni([ionicPackage]); var dgeni = new Dgeni([ionicPackage]);
return dgeni.generate(); return dgeni.generate();
} catch (err) { } catch (err) {

View File

@ -10,7 +10,9 @@ module.exports = function indexPage(renderDocsProcessor) {
var currentVersion = versionData.current.name; var currentVersion = versionData.current.name;
var latestVersion = versionData.latest.name; var latestVersion = versionData.latest.name;
var versionPath = currentVersion == 'nightly' ? '' : currentVersion; // var versionPath = currentVersion == 'nightly' ? '' : currentVersion;
// If latest and not initial build, set path to docs root
var versionPath = (currentVersion == latestVersion) && !versionData.initialVersionBuild ? '' : currentVersion;
docs.push({ docs.push({
docType: 'index-page', docType: 'index-page',

View File

@ -1,12 +1,14 @@
<@ for ver in version.list @> <@ for ver in version.list @>
<@ if ver.name != version.latest.name @>
<@ if loop.first @> <@ if loop.first @>
{% if page.versionHref == "<$ ver.href $>" %} {% if page.versionHref == "<$ ver.href $>" %}
<@ else @> <@ else @>
{% elsif page.versionHref == "<$ ver.href $>" %} {% elsif page.versionHref == "<$ ver.href $>" %}
<@ endif @> <@ endif @>
{% include v2_fluid/api_menu_flat_<$ ver.name $>.html %} {% include v2_fluid/api_menu_flat_<$ ver.name $>.html %}
<@ endif @>
<@ endfor @> <@ endfor @>
<# make the last case always be to show latest version #> <# make the last case always be to show latest version #>
{% else %} {% else %}
{% include v2_fluid/api_menu_flat_nightly.html %} {% include v2_fluid/api_menu_flat_<$ version.latest.name $>.html %}
{% endif %} {% endif %}