From f1e4bfeca8d0a03e4612f9f881712123bc77f48f Mon Sep 17 00:00:00 2001 From: Pranav Salunke Date: Fri, 6 Feb 2015 16:54:00 +0100 Subject: [PATCH] Porting presentations to Sphinx/Hieroglyph modifided tox.ini and requirements.txt to install hieroglyph, added some changes in the styles of the individual .rst files to support hiero Change-Id: Id2674e593857470cf4efa0706a4fbda33813f374 --- .gitignore | 1 + doc/upstream-training/LICENSE | 3 + doc/upstream-training/landslide.sh | 14 - .../{ => source}/01-release-cycle.rst | 64 +- .../{ => source}/02-relevant-actors.rst | 18 +- .../{ => source}/03-technical-committee.rst | 5 +- .../{ => source}/04-program-ecosystem.rst | 4 +- .../{ => source}/05-design-summit.rst | 8 +- .../{ => source}/06-irc-meetings.rst | 1 + .../{ => source}/11-devstack.rst | 1 + .../{ => source}/12-howtocontribute.rst | 1 + .../{ => source}/13-launchpad.rst | 0 .../{ => source}/14-gerrit.rst | 1 + .../{ => source}/15-branching-model.rst | 1 + .../{ => source}/16-reviewing.rst | 1 + .../{ => source}/17-commit-message.rst | 1 + .../{ => source}/18-jenkins.rst | 1 + .../19-training-contribution-process.rst | 1 + .../20-training-agile-for-contributors.rst | 9 +- doc/upstream-training/source/Makefile | 184 ++++++ .../{ => source}/_assets/01-01-release.png | Bin .../_assets/02-01-relevant-actors.png | Bin .../_assets/02-02-company-snapshot.png | Bin .../_assets/02-02-relevance-metrics.png | Bin .../_assets/02-03-company-snapshot.png | Bin .../_assets/02-04-individual-snapshot.png | Bin .../_assets/02-05-module-contributors.png | Bin .../_assets/02-06-your-management.jpg | Bin .../{ => source}/_assets/03-01-TC.png | Bin .../{ => source}/_assets/03-02-IRCmeeting.png | Bin .../{ => source}/_assets/04-01-lifecycle1.png | Bin .../{ => source}/_assets/04-02-lifecycle.png | Bin .../{ => source}/_assets/04-03-lifecycle.png | Bin .../{ => source}/_assets/04-04-lifecycle.png | Bin .../{ => source}/_assets/04-05-stackforge.png | Bin .../{ => source}/_assets/04-06-stackforge.png | Bin .../{ => source}/_assets/04-07-stackforge.png | Bin .../_assets/05-01-design-summit.png | Bin .../_assets/05-02-design-summit.png | Bin .../{ => source}/_assets/05-03-etherpads.png | Bin .../{ => source}/_assets/05-05-sessions.png | Bin .../_assets/06-01-irc-meetings.png | Bin .../_assets/06-02-irc-meetings-list.png | Bin .../_assets/06-03-meeting-agenda.png | Bin .../{ => source}/_assets/06-04-meetbot.png | Bin .../{ => source}/_assets/11-01-devstack.png | Bin .../_assets/11-02-rejoin-stack.png | Bin .../_assets/11-03-http-localhost.png | Bin .../{ => source}/_assets/11-04-git.png | Bin .../_assets/12-01-launchpad-net.png | Bin .../{ => source}/_assets/12-02-review.png | Bin .../{ => source}/_assets/12-03-signin.png | Bin .../_assets/12-04-no-agreement.png | Bin .../_assets/12-05-new-agreement.png | Bin .../_assets/12-06-individual-agreement.png | Bin .../_assets/12-07-signed-agreement.png | Bin .../{ => source}/_assets/13-01-launchpad.png | Bin .../{ => source}/_assets/14-01-review.png | Bin .../_assets/14-02-gerrit-workflow.png | Bin .../_assets/14-03-upload-ssh-key.png | Bin .../{ => source}/_assets/14-04-git-config.png | Bin .../{ => source}/_assets/14-05-install.png | Bin .../{ => source}/_assets/14-06-git-clone.png | Bin .../_assets/14-07-git-review-s.png | Bin .../_assets/14-08-git-checkout.png | Bin .../{ => source}/_assets/14-09-unit-tests.png | Bin .../_assets/14-11-invite-reviewers.png | Bin .../_assets/14-12-new-invite-reviewers.png | Bin .../_assets/14-13-git-commit-amend.png | Bin .../_assets/14-15-patchset-history.png | Bin .../_assets/14-16-new-patchset-history.png | Bin .../_assets/14-17-patchset-diffs.png | Bin .../{ => source}/_assets/15-01-inspired.png | Bin .../_assets/15-02-stable-branches.png | Bin .../_assets/15-03-branch-tags.png | Bin .../_assets/15-04-preparation.png | Bin .../{ => source}/_assets/15-05-review.png | Bin .../_assets/16-01-review-unified.png | Bin .../_assets/16-02-review-unified.png | Bin .../_assets/16-03-inline-comments.png | Bin .../_assets/16-04-draft-inline-comments.png | Bin .../_assets/16-05-regular-reviewer.png | Bin .../_assets/16-06-core-reviewer.png | Bin .../{ => source}/_assets/17-01-bad-two.png | Bin .../{ => source}/_assets/17-02-bad-new.png | Bin .../{ => source}/_assets/17-03-good.png | Bin .../_assets/17-04-commit-message.png | Bin .../{ => source}/_assets/18-01-triggered.png | Bin .../{ => source}/_assets/18-02-review.png | Bin .../_assets/18-03-error-report.png | Bin .../_assets/18-04-false-errors.png | Bin .../{ => source}/_assets/18-05-recheck.png | Bin .../_assets/19-01-goodworkflow.png | Bin .../_assets/19-02-badworkflow.png | Bin .../{ => source}/_assets/20-01-sprint.png | Bin .../source/_static/custom.css | 34 + .../{theme/css => source/_static}/screen.css | 0 doc/upstream-training/source/conf.py | 291 +++++++++ doc/upstream-training/source/index.rst | 37 ++ doc/upstream-training/theme/base.html | 182 ------ doc/upstream-training/theme/css/print.css | 108 ---- doc/upstream-training/theme/js/slides.js | 580 ------------------ setup.cfg | 23 + setup.py | 21 + test-requirements.txt | 6 +- tox.ini | 9 +- 106 files changed, 672 insertions(+), 938 deletions(-) create mode 100644 doc/upstream-training/LICENSE delete mode 100755 doc/upstream-training/landslide.sh rename doc/upstream-training/{ => source}/01-release-cycle.rst (75%) rename doc/upstream-training/{ => source}/02-relevant-actors.rst (87%) rename doc/upstream-training/{ => source}/03-technical-committee.rst (99%) rename doc/upstream-training/{ => source}/04-program-ecosystem.rst (98%) rename doc/upstream-training/{ => source}/05-design-summit.rst (96%) rename doc/upstream-training/{ => source}/06-irc-meetings.rst (98%) rename doc/upstream-training/{ => source}/11-devstack.rst (96%) rename doc/upstream-training/{ => source}/12-howtocontribute.rst (97%) rename doc/upstream-training/{ => source}/13-launchpad.rst (100%) rename doc/upstream-training/{ => source}/14-gerrit.rst (98%) rename doc/upstream-training/{ => source}/15-branching-model.rst (98%) rename doc/upstream-training/{ => source}/16-reviewing.rst (97%) rename doc/upstream-training/{ => source}/17-commit-message.rst (99%) rename doc/upstream-training/{ => source}/18-jenkins.rst (95%) rename doc/upstream-training/{ => source}/19-training-contribution-process.rst (98%) rename doc/upstream-training/{ => source}/20-training-agile-for-contributors.rst (96%) create mode 100644 doc/upstream-training/source/Makefile rename doc/upstream-training/{ => source}/_assets/01-01-release.png (100%) rename doc/upstream-training/{ => source}/_assets/02-01-relevant-actors.png (100%) rename doc/upstream-training/{ => source}/_assets/02-02-company-snapshot.png (100%) rename doc/upstream-training/{ => source}/_assets/02-02-relevance-metrics.png (100%) rename doc/upstream-training/{ => source}/_assets/02-03-company-snapshot.png (100%) rename doc/upstream-training/{ => source}/_assets/02-04-individual-snapshot.png (100%) rename doc/upstream-training/{ => source}/_assets/02-05-module-contributors.png (100%) rename doc/upstream-training/{ => source}/_assets/02-06-your-management.jpg (100%) rename doc/upstream-training/{ => source}/_assets/03-01-TC.png (100%) rename doc/upstream-training/{ => source}/_assets/03-02-IRCmeeting.png (100%) rename doc/upstream-training/{ => source}/_assets/04-01-lifecycle1.png (100%) rename doc/upstream-training/{ => source}/_assets/04-02-lifecycle.png (100%) rename doc/upstream-training/{ => source}/_assets/04-03-lifecycle.png (100%) rename doc/upstream-training/{ => source}/_assets/04-04-lifecycle.png (100%) rename doc/upstream-training/{ => source}/_assets/04-05-stackforge.png (100%) rename doc/upstream-training/{ => source}/_assets/04-06-stackforge.png (100%) rename doc/upstream-training/{ => source}/_assets/04-07-stackforge.png (100%) rename doc/upstream-training/{ => source}/_assets/05-01-design-summit.png (100%) rename doc/upstream-training/{ => source}/_assets/05-02-design-summit.png (100%) rename doc/upstream-training/{ => source}/_assets/05-03-etherpads.png (100%) rename doc/upstream-training/{ => source}/_assets/05-05-sessions.png (100%) rename doc/upstream-training/{ => source}/_assets/06-01-irc-meetings.png (100%) rename doc/upstream-training/{ => source}/_assets/06-02-irc-meetings-list.png (100%) rename doc/upstream-training/{ => source}/_assets/06-03-meeting-agenda.png (100%) rename doc/upstream-training/{ => source}/_assets/06-04-meetbot.png (100%) rename doc/upstream-training/{ => source}/_assets/11-01-devstack.png (100%) rename doc/upstream-training/{ => source}/_assets/11-02-rejoin-stack.png (100%) rename doc/upstream-training/{ => source}/_assets/11-03-http-localhost.png (100%) rename doc/upstream-training/{ => source}/_assets/11-04-git.png (100%) rename doc/upstream-training/{ => source}/_assets/12-01-launchpad-net.png (100%) rename doc/upstream-training/{ => source}/_assets/12-02-review.png (100%) rename doc/upstream-training/{ => source}/_assets/12-03-signin.png (100%) rename doc/upstream-training/{ => source}/_assets/12-04-no-agreement.png (100%) rename doc/upstream-training/{ => source}/_assets/12-05-new-agreement.png (100%) rename doc/upstream-training/{ => source}/_assets/12-06-individual-agreement.png (100%) rename doc/upstream-training/{ => source}/_assets/12-07-signed-agreement.png (100%) rename doc/upstream-training/{ => source}/_assets/13-01-launchpad.png (100%) rename doc/upstream-training/{ => source}/_assets/14-01-review.png (100%) rename doc/upstream-training/{ => source}/_assets/14-02-gerrit-workflow.png (100%) rename doc/upstream-training/{ => source}/_assets/14-03-upload-ssh-key.png (100%) rename doc/upstream-training/{ => source}/_assets/14-04-git-config.png (100%) rename doc/upstream-training/{ => source}/_assets/14-05-install.png (100%) rename doc/upstream-training/{ => source}/_assets/14-06-git-clone.png (100%) rename doc/upstream-training/{ => source}/_assets/14-07-git-review-s.png (100%) rename doc/upstream-training/{ => source}/_assets/14-08-git-checkout.png (100%) rename doc/upstream-training/{ => source}/_assets/14-09-unit-tests.png (100%) rename doc/upstream-training/{ => source}/_assets/14-11-invite-reviewers.png (100%) rename doc/upstream-training/{ => source}/_assets/14-12-new-invite-reviewers.png (100%) rename doc/upstream-training/{ => source}/_assets/14-13-git-commit-amend.png (100%) rename doc/upstream-training/{ => source}/_assets/14-15-patchset-history.png (100%) rename doc/upstream-training/{ => source}/_assets/14-16-new-patchset-history.png (100%) rename doc/upstream-training/{ => source}/_assets/14-17-patchset-diffs.png (100%) rename doc/upstream-training/{ => source}/_assets/15-01-inspired.png (100%) rename doc/upstream-training/{ => source}/_assets/15-02-stable-branches.png (100%) rename doc/upstream-training/{ => source}/_assets/15-03-branch-tags.png (100%) rename doc/upstream-training/{ => source}/_assets/15-04-preparation.png (100%) rename doc/upstream-training/{ => source}/_assets/15-05-review.png (100%) rename doc/upstream-training/{ => source}/_assets/16-01-review-unified.png (100%) rename doc/upstream-training/{ => source}/_assets/16-02-review-unified.png (100%) rename doc/upstream-training/{ => source}/_assets/16-03-inline-comments.png (100%) rename doc/upstream-training/{ => source}/_assets/16-04-draft-inline-comments.png (100%) rename doc/upstream-training/{ => source}/_assets/16-05-regular-reviewer.png (100%) rename doc/upstream-training/{ => source}/_assets/16-06-core-reviewer.png (100%) rename doc/upstream-training/{ => source}/_assets/17-01-bad-two.png (100%) rename doc/upstream-training/{ => source}/_assets/17-02-bad-new.png (100%) rename doc/upstream-training/{ => source}/_assets/17-03-good.png (100%) rename doc/upstream-training/{ => source}/_assets/17-04-commit-message.png (100%) rename doc/upstream-training/{ => source}/_assets/18-01-triggered.png (100%) rename doc/upstream-training/{ => source}/_assets/18-02-review.png (100%) rename doc/upstream-training/{ => source}/_assets/18-03-error-report.png (100%) rename doc/upstream-training/{ => source}/_assets/18-04-false-errors.png (100%) rename doc/upstream-training/{ => source}/_assets/18-05-recheck.png (100%) rename doc/upstream-training/{ => source}/_assets/19-01-goodworkflow.png (100%) rename doc/upstream-training/{ => source}/_assets/19-02-badworkflow.png (100%) rename doc/upstream-training/{ => source}/_assets/20-01-sprint.png (100%) create mode 100644 doc/upstream-training/source/_static/custom.css rename doc/upstream-training/{theme/css => source/_static}/screen.css (100%) create mode 100644 doc/upstream-training/source/conf.py create mode 100644 doc/upstream-training/source/index.rst delete mode 100644 doc/upstream-training/theme/base.html delete mode 100644 doc/upstream-training/theme/css/print.css delete mode 100644 doc/upstream-training/theme/js/slides.js create mode 100644 setup.cfg create mode 100755 setup.py diff --git a/.gitignore b/.gitignore index c2ec2f0a..ca00a04c 100644 --- a/.gitignore +++ b/.gitignore @@ -7,6 +7,7 @@ target/ publish-docs/ generated/ /build-*.log.gz +build/ # Ignore Vagrant Related Files acceptance_config.yml diff --git a/doc/upstream-training/LICENSE b/doc/upstream-training/LICENSE new file mode 100644 index 00000000..75a29c44 --- /dev/null +++ b/doc/upstream-training/LICENSE @@ -0,0 +1,3 @@ +This work is licensed under a Creative Commons Attribution 3.0 Unported License. + +http://creativecommons.org/licenses/by/3.0/legalcode diff --git a/doc/upstream-training/landslide.sh b/doc/upstream-training/landslide.sh deleted file mode 100755 index cac8bce9..00000000 --- a/doc/upstream-training/landslide.sh +++ /dev/null @@ -1,14 +0,0 @@ -#!/usr/bin/env bash - -which landslide -LANDSLIDE_MISSING=$? - -if [[ ${LANDSLIDE_MISSING} -ne 0 ]]; then - echo "landslide isn't on your path. Do you need to activate a virtual environment?" - exit 1 -fi - -for presentation in *.rst; do - presentation_name=$(basename "${presentation}" .rst) - landslide -i -d "${presentation_name}.html" "${presentation}" -done diff --git a/doc/upstream-training/01-release-cycle.rst b/doc/upstream-training/source/01-release-cycle.rst similarity index 75% rename from doc/upstream-training/01-release-cycle.rst rename to doc/upstream-training/source/01-release-cycle.rst index be6c88c7..858e5f7c 100644 --- a/doc/upstream-training/01-release-cycle.rst +++ b/doc/upstream-training/source/01-release-cycle.rst @@ -1,9 +1,7 @@ +======================= OpenStack Release Cycle ======================= -OpenStack Upstream Training ---------------------------- - @@ -12,28 +10,27 @@ OpenStack Upstream Training Planning : Design ================= -.. class:: colleft +.. rst-class:: colleft - Planning stage is at the start of a cycle - take a step back - focus on what we want to do for the next one -.. class:: colright .. image:: ./_assets/01-01-release.png + ---- Planning : Discuss ================== -.. class:: colleft +.. rst-class:: colleft - With our peers - feedback and comments - create the corresponding blueprint - 4 weeks, Design Summit on the third week -.. class:: colright .. image:: ./_assets/01-01-release.png ---- @@ -41,14 +38,15 @@ Planning : Discuss Planning : Target ================= -.. class:: colleft +.. rst-class:: colleft - file new blueprints and/or specs - set a target milestone - when in the cycle they intend to complete it - PTLs triage the submitted blueprints and set priority -.. class:: colright +.. rst-class:: colright + .. image:: ./_assets/01-01-release.png ---- @@ -56,14 +54,15 @@ Planning : Target Implementation : Milestone ========================== -.. class:: colleft +.. rst-class:: colleft - pushed to our Gerrit review - weeks before the milestone publication date - milestone-proposed branch - feature-frozen -.. class:: colright +.. rst-class:: colright + .. image:: ./_assets/01-01-release.png ---- @@ -71,32 +70,32 @@ Implementation : Milestone Implementation : freezes ======================== -.. class:: colleft +.. rst-class:: colleft -- Feature freeze +* Feature proposal freeze - - new features will not be accepted, only fixes + * not even proposals for features will be accepted + * focus on bug-fixing -- Feature proposal freeze +* Feature freeze - - not even proposals for features will be accepted - - read: focus on bug-fixing + * new features will not be accepted, only fixes -- String freeze +* String freeze - - all externally visible strings must be frozen - - this helps the translation and documentation program + * all externally visible strings must be frozen + * this helps the translation and documentation program + +.. rst-class:: colright -.. class:: colright .. image:: ./_assets/01-01-release.png - ---- Release Candidates ================== -.. class:: colleft +.. rst-class:: colleft - After the last milestone - file bugs about everything you find @@ -104,7 +103,8 @@ Release Candidates - write documentation - fix as many bugs as you can -.. class:: colright +.. rst-class:: colright + .. image:: ./_assets/01-01-release.png ---- @@ -112,7 +112,7 @@ Release Candidates Release candidate 1 =================== -.. class:: colleft +.. rst-class:: colleft - Between the last milestone and the RC1 - stop adding features and concentrate on bug fixes @@ -120,7 +120,9 @@ Release candidate 1 candidate for that project (RC1) - used as-is as the final release -.. class:: colright + +.. rst-class:: colright + .. image:: ./_assets/01-01-release.png ---- @@ -128,7 +130,7 @@ Release candidate 1 Other release candidates ======================== -.. class:: colleft +.. rst-class:: colleft - regressions and integration issues - new release-critical bugs @@ -136,7 +138,8 @@ Other release candidates - merged in the master branch first - repeated as many times as necessary -.. class:: colright +.. rst-class:: colright + .. image:: ./_assets/01-01-release.png ---- @@ -144,12 +147,13 @@ Other release candidates Release day =========== -.. class:: colleft +.. rst-class:: colleft - last published release candidate - published collectively as the OpenStack release -.. class:: colright +.. rst-class:: colright + .. image:: ./_assets/01-01-release.png ---- diff --git a/doc/upstream-training/02-relevant-actors.rst b/doc/upstream-training/source/02-relevant-actors.rst similarity index 87% rename from doc/upstream-training/02-relevant-actors.rst rename to doc/upstream-training/source/02-relevant-actors.rst index 807ba570..2aa02533 100644 --- a/doc/upstream-training/02-relevant-actors.rst +++ b/doc/upstream-training/source/02-relevant-actors.rst @@ -1,3 +1,12 @@ +=============== +Relevant actors +=============== + + + + +---- + Relevant actors =============== @@ -9,9 +18,7 @@ Relevant actors Relevance metrics ================= -.. image:: ./_assets/02-02-relevance-metrics.png - :align: right - :width: 55% +.. rst-class:: colleft - Commits - Completed blueprints @@ -21,6 +28,11 @@ Relevance metrics - Reviews - Mentoring +.. rst-class:: colright + +.. image:: ./_assets/02-02-relevance-metrics.png + + ---- Company snapshot diff --git a/doc/upstream-training/03-technical-committee.rst b/doc/upstream-training/source/03-technical-committee.rst similarity index 99% rename from doc/upstream-training/03-technical-committee.rst rename to doc/upstream-training/source/03-technical-committee.rst index bda58202..401f1de4 100644 --- a/doc/upstream-training/03-technical-committee.rst +++ b/doc/upstream-training/source/03-technical-committee.rst @@ -1,10 +1,7 @@ +============================= OpenStack Technical Committee ============================= -| - ------ - Technical Committee =================== diff --git a/doc/upstream-training/04-program-ecosystem.rst b/doc/upstream-training/source/04-program-ecosystem.rst similarity index 98% rename from doc/upstream-training/04-program-ecosystem.rst rename to doc/upstream-training/source/04-program-ecosystem.rst index 9e9fced4..399ba0a2 100644 --- a/doc/upstream-training/04-program-ecosystem.rst +++ b/doc/upstream-training/source/04-program-ecosystem.rst @@ -1,9 +1,7 @@ +=========================== OpenStack Program Ecosystem =========================== -| - ----- Lifecycle of a new Program ========================== diff --git a/doc/upstream-training/05-design-summit.rst b/doc/upstream-training/source/05-design-summit.rst similarity index 96% rename from doc/upstream-training/05-design-summit.rst rename to doc/upstream-training/source/05-design-summit.rst index 77162679..d088d537 100644 --- a/doc/upstream-training/05-design-summit.rst +++ b/doc/upstream-training/source/05-design-summit.rst @@ -1,13 +1,7 @@ +======================= OpenStack Design Summit ======================= -| - ----- - -Design Summit -============= - Where developers meet face to face to finalize planning for the next release cycle. diff --git a/doc/upstream-training/06-irc-meetings.rst b/doc/upstream-training/source/06-irc-meetings.rst similarity index 98% rename from doc/upstream-training/06-irc-meetings.rst rename to doc/upstream-training/source/06-irc-meetings.rst index d24b19e5..a2595912 100644 --- a/doc/upstream-training/06-irc-meetings.rst +++ b/doc/upstream-training/source/06-irc-meetings.rst @@ -1,3 +1,4 @@ +============ IRC meetings ============ diff --git a/doc/upstream-training/11-devstack.rst b/doc/upstream-training/source/11-devstack.rst similarity index 96% rename from doc/upstream-training/11-devstack.rst rename to doc/upstream-training/source/11-devstack.rst index aea452f6..6bd3dcbc 100644 --- a/doc/upstream-training/11-devstack.rst +++ b/doc/upstream-training/source/11-devstack.rst @@ -1,3 +1,4 @@ +============ devstack.org ============ diff --git a/doc/upstream-training/12-howtocontribute.rst b/doc/upstream-training/source/12-howtocontribute.rst similarity index 97% rename from doc/upstream-training/12-howtocontribute.rst rename to doc/upstream-training/source/12-howtocontribute.rst index c3a2ecd9..01d0f042 100644 --- a/doc/upstream-training/12-howtocontribute.rst +++ b/doc/upstream-training/source/12-howtocontribute.rst @@ -1,3 +1,4 @@ +===================== http://launchpad.net/ ===================== diff --git a/doc/upstream-training/13-launchpad.rst b/doc/upstream-training/source/13-launchpad.rst similarity index 100% rename from doc/upstream-training/13-launchpad.rst rename to doc/upstream-training/source/13-launchpad.rst diff --git a/doc/upstream-training/14-gerrit.rst b/doc/upstream-training/source/14-gerrit.rst similarity index 98% rename from doc/upstream-training/14-gerrit.rst rename to doc/upstream-training/source/14-gerrit.rst index e36f1331..db8b2891 100644 --- a/doc/upstream-training/14-gerrit.rst +++ b/doc/upstream-training/source/14-gerrit.rst @@ -1,3 +1,4 @@ +==================== review.openstack.org ==================== diff --git a/doc/upstream-training/15-branching-model.rst b/doc/upstream-training/source/15-branching-model.rst similarity index 98% rename from doc/upstream-training/15-branching-model.rst rename to doc/upstream-training/source/15-branching-model.rst index f405b299..eb04047e 100644 --- a/doc/upstream-training/15-branching-model.rst +++ b/doc/upstream-training/source/15-branching-model.rst @@ -1,3 +1,4 @@ +============= nvie inspired ============= diff --git a/doc/upstream-training/16-reviewing.rst b/doc/upstream-training/source/16-reviewing.rst similarity index 97% rename from doc/upstream-training/16-reviewing.rst rename to doc/upstream-training/source/16-reviewing.rst index 71589048..66d4fa61 100644 --- a/doc/upstream-training/16-reviewing.rst +++ b/doc/upstream-training/source/16-reviewing.rst @@ -1,3 +1,4 @@ +============== Review unified ============== diff --git a/doc/upstream-training/17-commit-message.rst b/doc/upstream-training/source/17-commit-message.rst similarity index 99% rename from doc/upstream-training/17-commit-message.rst rename to doc/upstream-training/source/17-commit-message.rst index d71b4b5a..46bff528 100644 --- a/doc/upstream-training/17-commit-message.rst +++ b/doc/upstream-training/source/17-commit-message.rst @@ -1,3 +1,4 @@ +=============== Commit messages =============== diff --git a/doc/upstream-training/18-jenkins.rst b/doc/upstream-training/source/18-jenkins.rst similarity index 95% rename from doc/upstream-training/18-jenkins.rst rename to doc/upstream-training/source/18-jenkins.rst index 2b507577..1a2b8830 100644 --- a/doc/upstream-training/18-jenkins.rst +++ b/doc/upstream-training/source/18-jenkins.rst @@ -1,3 +1,4 @@ +========================= Triggered on every commit ========================= diff --git a/doc/upstream-training/19-training-contribution-process.rst b/doc/upstream-training/source/19-training-contribution-process.rst similarity index 98% rename from doc/upstream-training/19-training-contribution-process.rst rename to doc/upstream-training/source/19-training-contribution-process.rst index 2cf0b50b..966654cc 100644 --- a/doc/upstream-training/19-training-contribution-process.rst +++ b/doc/upstream-training/source/19-training-contribution-process.rst @@ -1,3 +1,4 @@ +==================================== Overview of the contribution process ==================================== diff --git a/doc/upstream-training/20-training-agile-for-contributors.rst b/doc/upstream-training/source/20-training-agile-for-contributors.rst similarity index 96% rename from doc/upstream-training/20-training-agile-for-contributors.rst rename to doc/upstream-training/source/20-training-agile-for-contributors.rst index 6252eaa7..5b745f8b 100644 --- a/doc/upstream-training/20-training-agile-for-contributors.rst +++ b/doc/upstream-training/source/20-training-agile-for-contributors.rst @@ -1,9 +1,10 @@ +=========================================== Lego applied to Free Software contributions =========================================== | ----- +======= Agile manifesto =============== @@ -97,14 +98,16 @@ Communication | ----- +======= Diplomacy ========= | ----- +======= Time to play with Legos ======================= + +| diff --git a/doc/upstream-training/source/Makefile b/doc/upstream-training/source/Makefile new file mode 100644 index 00000000..cbbafe75 --- /dev/null +++ b/doc/upstream-training/source/Makefile @@ -0,0 +1,184 @@ +# Makefile for Sphinx documentation +# + +# You can set these variables from the command line. +SPHINXOPTS = +SPHINXBUILD = sphinx-build +PAPER = +BUILDDIR = ../_build + +# User-friendly check for sphinx-build +ifeq ($(shell which $(SPHINXBUILD) >/dev/null 2>&1; echo $$?), 1) +$(error The '$(SPHINXBUILD)' command was not found. Make sure you have Sphinx installed, then set the SPHINXBUILD environment variable to point to the full path of the '$(SPHINXBUILD)' executable. Alternatively you can add the directory with the executable to your PATH. If you don't have Sphinx installed, grab it from http://sphinx-doc.org/) +endif + +# Internal variables. +PAPEROPT_a4 = -D latex_paper_size=a4 +PAPEROPT_letter = -D latex_paper_size=letter +ALLSPHINXOPTS = -d $(BUILDDIR)/doctrees $(PAPEROPT_$(PAPER)) $(SPHINXOPTS) . +# the i18n builder cannot share the environment and doctrees with the others +I18NSPHINXOPTS = $(PAPEROPT_$(PAPER)) $(SPHINXOPTS) . + +.PHONY: help clean html dirhtml singlehtml pickle json htmlhelp qthelp devhelp epub latex latexpdf text man changes linkcheck doctest gettext + +help: + @echo "Please use \`make ' where is one of" + @echo " html to make standalone HTML files" + @echo " dirhtml to make HTML files named index.html in directories" + @echo " singlehtml to make a single large HTML file" + @echo " pickle to make pickle files" + @echo " json to make JSON files" + @echo " htmlhelp to make HTML files and a HTML help project" + @echo " qthelp to make HTML files and a qthelp project" + @echo " devhelp to make HTML files and a Devhelp project" + @echo " epub to make an epub" + @echo " latex to make LaTeX files, you can set PAPER=a4 or PAPER=letter" + @echo " latexpdf to make LaTeX files and run them through pdflatex" + @echo " latexpdfja to make LaTeX files and run them through platex/dvipdfmx" + @echo " text to make text files" + @echo " man to make manual pages" + @echo " texinfo to make Texinfo files" + @echo " info to make Texinfo files and run them through makeinfo" + @echo " gettext to make PO message catalogs" + @echo " changes to make an overview of all changed/added/deprecated items" + @echo " xml to make Docutils-native XML files" + @echo " pseudoxml to make pseudoxml-XML files for display purposes" + @echo " linkcheck to check all external links for integrity" + @echo " slides to create presentation slides HTML5" + @echo " doctest to run all doctests embedded in the documentation (if enabled)" + +clean: + rm -rf $(BUILDDIR)/* + +html: + $(SPHINXBUILD) -b html $(ALLSPHINXOPTS) $(BUILDDIR)/html + @echo + @echo "Build finished. The HTML pages are in $(BUILDDIR)/html." + +dirhtml: + $(SPHINXBUILD) -b dirhtml $(ALLSPHINXOPTS) $(BUILDDIR)/dirhtml + @echo + @echo "Build finished. The HTML pages are in $(BUILDDIR)/dirhtml." + +singlehtml: + $(SPHINXBUILD) -b singlehtml $(ALLSPHINXOPTS) $(BUILDDIR)/singlehtml + @echo + @echo "Build finished. The HTML page is in $(BUILDDIR)/singlehtml." + +pickle: + $(SPHINXBUILD) -b pickle $(ALLSPHINXOPTS) $(BUILDDIR)/pickle + @echo + @echo "Build finished; now you can process the pickle files." + +json: + $(SPHINXBUILD) -b json $(ALLSPHINXOPTS) $(BUILDDIR)/json + @echo + @echo "Build finished; now you can process the JSON files." + +htmlhelp: + $(SPHINXBUILD) -b htmlhelp $(ALLSPHINXOPTS) $(BUILDDIR)/htmlhelp + @echo + @echo "Build finished; now you can run HTML Help Workshop with the" \ + ".hhp project file in $(BUILDDIR)/htmlhelp." + +qthelp: + $(SPHINXBUILD) -b qthelp $(ALLSPHINXOPTS) $(BUILDDIR)/qthelp + @echo + @echo "Build finished; now you can run "qcollectiongenerator" with the" \ + ".qhcp project file in $(BUILDDIR)/qthelp, like this:" + @echo "# qcollectiongenerator $(BUILDDIR)/qthelp/OpenStackUpstreamTraining.qhcp" + @echo "To view the help file:" + @echo "# assistant -collectionFile $(BUILDDIR)/qthelp/OpenStackUpstreamTraining.qhc" + +devhelp: + $(SPHINXBUILD) -b devhelp $(ALLSPHINXOPTS) $(BUILDDIR)/devhelp + @echo + @echo "Build finished." + @echo "To view the help file:" + @echo "# mkdir -p $$HOME/.local/share/devhelp/OpenStackUpstreamTraining" + @echo "# ln -s $(BUILDDIR)/devhelp $$HOME/.local/share/devhelp/OpenStackUpstreamTraining" + @echo "# devhelp" + +epub: + $(SPHINXBUILD) -b epub $(ALLSPHINXOPTS) $(BUILDDIR)/epub + @echo + @echo "Build finished. The epub file is in $(BUILDDIR)/epub." + +latex: + $(SPHINXBUILD) -b latex $(ALLSPHINXOPTS) $(BUILDDIR)/latex + @echo + @echo "Build finished; the LaTeX files are in $(BUILDDIR)/latex." + @echo "Run \`make' in that directory to run these through (pdf)latex" \ + "(use \`make latexpdf' here to do that automatically)." + +latexpdf: + $(SPHINXBUILD) -b latex $(ALLSPHINXOPTS) $(BUILDDIR)/latex + @echo "Running LaTeX files through pdflatex..." + $(MAKE) -C $(BUILDDIR)/latex all-pdf + @echo "pdflatex finished; the PDF files are in $(BUILDDIR)/latex." + +latexpdfja: + $(SPHINXBUILD) -b latex $(ALLSPHINXOPTS) $(BUILDDIR)/latex + @echo "Running LaTeX files through platex and dvipdfmx..." + $(MAKE) -C $(BUILDDIR)/latex all-pdf-ja + @echo "pdflatex finished; the PDF files are in $(BUILDDIR)/latex." + +text: + $(SPHINXBUILD) -b text $(ALLSPHINXOPTS) $(BUILDDIR)/text + @echo + @echo "Build finished. The text files are in $(BUILDDIR)/text." + +man: + $(SPHINXBUILD) -b man $(ALLSPHINXOPTS) $(BUILDDIR)/man + @echo + @echo "Build finished. The manual pages are in $(BUILDDIR)/man." + +texinfo: + $(SPHINXBUILD) -b texinfo $(ALLSPHINXOPTS) $(BUILDDIR)/texinfo + @echo + @echo "Build finished. The Texinfo files are in $(BUILDDIR)/texinfo." + @echo "Run \`make' in that directory to run these through makeinfo" \ + "(use \`make info' here to do that automatically)." + +info: + $(SPHINXBUILD) -b texinfo $(ALLSPHINXOPTS) $(BUILDDIR)/texinfo + @echo "Running Texinfo files through makeinfo..." + make -C $(BUILDDIR)/texinfo info + @echo "makeinfo finished; the Info files are in $(BUILDDIR)/texinfo." + +gettext: + $(SPHINXBUILD) -b gettext $(I18NSPHINXOPTS) $(BUILDDIR)/locale + @echo + @echo "Build finished. The message catalogs are in $(BUILDDIR)/locale." + +changes: + $(SPHINXBUILD) -b changes $(ALLSPHINXOPTS) $(BUILDDIR)/changes + @echo + @echo "The overview file is in $(BUILDDIR)/changes." + +linkcheck: + $(SPHINXBUILD) -b linkcheck $(ALLSPHINXOPTS) $(BUILDDIR)/linkcheck + @echo + @echo "Link check complete; look for any errors in the above output " \ + "or in $(BUILDDIR)/linkcheck/output.txt." + +doctest: + $(SPHINXBUILD) -b doctest $(ALLSPHINXOPTS) $(BUILDDIR)/doctest + @echo "Testing of doctests in the sources finished, look at the " \ + "results in $(BUILDDIR)/doctest/output.txt." + +xml: + $(SPHINXBUILD) -b xml $(ALLSPHINXOPTS) $(BUILDDIR)/xml + @echo + @echo "Build finished. The XML files are in $(BUILDDIR)/xml." + +pseudoxml: + $(SPHINXBUILD) -b pseudoxml $(ALLSPHINXOPTS) $(BUILDDIR)/pseudoxml + @echo + @echo "Build finished. The pseudo-XML files are in $(BUILDDIR)/pseudoxml." + + +slides: + $(SPHINXBUILD) -b slides $(ALLSPHINXOPTS) $(BUILDDIR)/slides + @echo "Build finished. The HTML slides are in $(BUILDDIR)/slides." + diff --git a/doc/upstream-training/_assets/01-01-release.png b/doc/upstream-training/source/_assets/01-01-release.png similarity index 100% rename from doc/upstream-training/_assets/01-01-release.png rename to doc/upstream-training/source/_assets/01-01-release.png diff --git a/doc/upstream-training/_assets/02-01-relevant-actors.png b/doc/upstream-training/source/_assets/02-01-relevant-actors.png similarity index 100% rename from doc/upstream-training/_assets/02-01-relevant-actors.png rename to doc/upstream-training/source/_assets/02-01-relevant-actors.png diff --git a/doc/upstream-training/_assets/02-02-company-snapshot.png b/doc/upstream-training/source/_assets/02-02-company-snapshot.png similarity index 100% rename from doc/upstream-training/_assets/02-02-company-snapshot.png rename to doc/upstream-training/source/_assets/02-02-company-snapshot.png diff --git a/doc/upstream-training/_assets/02-02-relevance-metrics.png b/doc/upstream-training/source/_assets/02-02-relevance-metrics.png similarity index 100% rename from doc/upstream-training/_assets/02-02-relevance-metrics.png rename to doc/upstream-training/source/_assets/02-02-relevance-metrics.png diff --git a/doc/upstream-training/_assets/02-03-company-snapshot.png b/doc/upstream-training/source/_assets/02-03-company-snapshot.png similarity index 100% rename from doc/upstream-training/_assets/02-03-company-snapshot.png rename to doc/upstream-training/source/_assets/02-03-company-snapshot.png diff --git a/doc/upstream-training/_assets/02-04-individual-snapshot.png b/doc/upstream-training/source/_assets/02-04-individual-snapshot.png similarity index 100% rename from doc/upstream-training/_assets/02-04-individual-snapshot.png rename to doc/upstream-training/source/_assets/02-04-individual-snapshot.png diff --git a/doc/upstream-training/_assets/02-05-module-contributors.png b/doc/upstream-training/source/_assets/02-05-module-contributors.png similarity index 100% rename from doc/upstream-training/_assets/02-05-module-contributors.png rename to doc/upstream-training/source/_assets/02-05-module-contributors.png diff --git a/doc/upstream-training/_assets/02-06-your-management.jpg b/doc/upstream-training/source/_assets/02-06-your-management.jpg similarity index 100% rename from doc/upstream-training/_assets/02-06-your-management.jpg rename to doc/upstream-training/source/_assets/02-06-your-management.jpg diff --git a/doc/upstream-training/_assets/03-01-TC.png b/doc/upstream-training/source/_assets/03-01-TC.png similarity index 100% rename from doc/upstream-training/_assets/03-01-TC.png rename to doc/upstream-training/source/_assets/03-01-TC.png diff --git a/doc/upstream-training/_assets/03-02-IRCmeeting.png b/doc/upstream-training/source/_assets/03-02-IRCmeeting.png similarity index 100% rename from doc/upstream-training/_assets/03-02-IRCmeeting.png rename to doc/upstream-training/source/_assets/03-02-IRCmeeting.png diff --git a/doc/upstream-training/_assets/04-01-lifecycle1.png b/doc/upstream-training/source/_assets/04-01-lifecycle1.png similarity index 100% rename from doc/upstream-training/_assets/04-01-lifecycle1.png rename to doc/upstream-training/source/_assets/04-01-lifecycle1.png diff --git a/doc/upstream-training/_assets/04-02-lifecycle.png b/doc/upstream-training/source/_assets/04-02-lifecycle.png similarity index 100% rename from doc/upstream-training/_assets/04-02-lifecycle.png rename to doc/upstream-training/source/_assets/04-02-lifecycle.png diff --git a/doc/upstream-training/_assets/04-03-lifecycle.png b/doc/upstream-training/source/_assets/04-03-lifecycle.png similarity index 100% rename from doc/upstream-training/_assets/04-03-lifecycle.png rename to doc/upstream-training/source/_assets/04-03-lifecycle.png diff --git a/doc/upstream-training/_assets/04-04-lifecycle.png b/doc/upstream-training/source/_assets/04-04-lifecycle.png similarity index 100% rename from doc/upstream-training/_assets/04-04-lifecycle.png rename to doc/upstream-training/source/_assets/04-04-lifecycle.png diff --git a/doc/upstream-training/_assets/04-05-stackforge.png b/doc/upstream-training/source/_assets/04-05-stackforge.png similarity index 100% rename from doc/upstream-training/_assets/04-05-stackforge.png rename to doc/upstream-training/source/_assets/04-05-stackforge.png diff --git a/doc/upstream-training/_assets/04-06-stackforge.png b/doc/upstream-training/source/_assets/04-06-stackforge.png similarity index 100% rename from doc/upstream-training/_assets/04-06-stackforge.png rename to doc/upstream-training/source/_assets/04-06-stackforge.png diff --git a/doc/upstream-training/_assets/04-07-stackforge.png b/doc/upstream-training/source/_assets/04-07-stackforge.png similarity index 100% rename from doc/upstream-training/_assets/04-07-stackforge.png rename to doc/upstream-training/source/_assets/04-07-stackforge.png diff --git a/doc/upstream-training/_assets/05-01-design-summit.png b/doc/upstream-training/source/_assets/05-01-design-summit.png similarity index 100% rename from doc/upstream-training/_assets/05-01-design-summit.png rename to doc/upstream-training/source/_assets/05-01-design-summit.png diff --git a/doc/upstream-training/_assets/05-02-design-summit.png b/doc/upstream-training/source/_assets/05-02-design-summit.png similarity index 100% rename from doc/upstream-training/_assets/05-02-design-summit.png rename to doc/upstream-training/source/_assets/05-02-design-summit.png diff --git a/doc/upstream-training/_assets/05-03-etherpads.png b/doc/upstream-training/source/_assets/05-03-etherpads.png similarity index 100% rename from doc/upstream-training/_assets/05-03-etherpads.png rename to doc/upstream-training/source/_assets/05-03-etherpads.png diff --git a/doc/upstream-training/_assets/05-05-sessions.png b/doc/upstream-training/source/_assets/05-05-sessions.png similarity index 100% rename from doc/upstream-training/_assets/05-05-sessions.png rename to doc/upstream-training/source/_assets/05-05-sessions.png diff --git a/doc/upstream-training/_assets/06-01-irc-meetings.png b/doc/upstream-training/source/_assets/06-01-irc-meetings.png similarity index 100% rename from doc/upstream-training/_assets/06-01-irc-meetings.png rename to doc/upstream-training/source/_assets/06-01-irc-meetings.png diff --git a/doc/upstream-training/_assets/06-02-irc-meetings-list.png b/doc/upstream-training/source/_assets/06-02-irc-meetings-list.png similarity index 100% rename from doc/upstream-training/_assets/06-02-irc-meetings-list.png rename to doc/upstream-training/source/_assets/06-02-irc-meetings-list.png diff --git a/doc/upstream-training/_assets/06-03-meeting-agenda.png b/doc/upstream-training/source/_assets/06-03-meeting-agenda.png similarity index 100% rename from doc/upstream-training/_assets/06-03-meeting-agenda.png rename to doc/upstream-training/source/_assets/06-03-meeting-agenda.png diff --git a/doc/upstream-training/_assets/06-04-meetbot.png b/doc/upstream-training/source/_assets/06-04-meetbot.png similarity index 100% rename from doc/upstream-training/_assets/06-04-meetbot.png rename to doc/upstream-training/source/_assets/06-04-meetbot.png diff --git a/doc/upstream-training/_assets/11-01-devstack.png b/doc/upstream-training/source/_assets/11-01-devstack.png similarity index 100% rename from doc/upstream-training/_assets/11-01-devstack.png rename to doc/upstream-training/source/_assets/11-01-devstack.png diff --git a/doc/upstream-training/_assets/11-02-rejoin-stack.png b/doc/upstream-training/source/_assets/11-02-rejoin-stack.png similarity index 100% rename from doc/upstream-training/_assets/11-02-rejoin-stack.png rename to doc/upstream-training/source/_assets/11-02-rejoin-stack.png diff --git a/doc/upstream-training/_assets/11-03-http-localhost.png b/doc/upstream-training/source/_assets/11-03-http-localhost.png similarity index 100% rename from doc/upstream-training/_assets/11-03-http-localhost.png rename to doc/upstream-training/source/_assets/11-03-http-localhost.png diff --git a/doc/upstream-training/_assets/11-04-git.png b/doc/upstream-training/source/_assets/11-04-git.png similarity index 100% rename from doc/upstream-training/_assets/11-04-git.png rename to doc/upstream-training/source/_assets/11-04-git.png diff --git a/doc/upstream-training/_assets/12-01-launchpad-net.png b/doc/upstream-training/source/_assets/12-01-launchpad-net.png similarity index 100% rename from doc/upstream-training/_assets/12-01-launchpad-net.png rename to doc/upstream-training/source/_assets/12-01-launchpad-net.png diff --git a/doc/upstream-training/_assets/12-02-review.png b/doc/upstream-training/source/_assets/12-02-review.png similarity index 100% rename from doc/upstream-training/_assets/12-02-review.png rename to doc/upstream-training/source/_assets/12-02-review.png diff --git a/doc/upstream-training/_assets/12-03-signin.png b/doc/upstream-training/source/_assets/12-03-signin.png similarity index 100% rename from doc/upstream-training/_assets/12-03-signin.png rename to doc/upstream-training/source/_assets/12-03-signin.png diff --git a/doc/upstream-training/_assets/12-04-no-agreement.png b/doc/upstream-training/source/_assets/12-04-no-agreement.png similarity index 100% rename from doc/upstream-training/_assets/12-04-no-agreement.png rename to doc/upstream-training/source/_assets/12-04-no-agreement.png diff --git a/doc/upstream-training/_assets/12-05-new-agreement.png b/doc/upstream-training/source/_assets/12-05-new-agreement.png similarity index 100% rename from doc/upstream-training/_assets/12-05-new-agreement.png rename to doc/upstream-training/source/_assets/12-05-new-agreement.png diff --git a/doc/upstream-training/_assets/12-06-individual-agreement.png b/doc/upstream-training/source/_assets/12-06-individual-agreement.png similarity index 100% rename from doc/upstream-training/_assets/12-06-individual-agreement.png rename to doc/upstream-training/source/_assets/12-06-individual-agreement.png diff --git a/doc/upstream-training/_assets/12-07-signed-agreement.png b/doc/upstream-training/source/_assets/12-07-signed-agreement.png similarity index 100% rename from doc/upstream-training/_assets/12-07-signed-agreement.png rename to doc/upstream-training/source/_assets/12-07-signed-agreement.png diff --git a/doc/upstream-training/_assets/13-01-launchpad.png b/doc/upstream-training/source/_assets/13-01-launchpad.png similarity index 100% rename from doc/upstream-training/_assets/13-01-launchpad.png rename to doc/upstream-training/source/_assets/13-01-launchpad.png diff --git a/doc/upstream-training/_assets/14-01-review.png b/doc/upstream-training/source/_assets/14-01-review.png similarity index 100% rename from doc/upstream-training/_assets/14-01-review.png rename to doc/upstream-training/source/_assets/14-01-review.png diff --git a/doc/upstream-training/_assets/14-02-gerrit-workflow.png b/doc/upstream-training/source/_assets/14-02-gerrit-workflow.png similarity index 100% rename from doc/upstream-training/_assets/14-02-gerrit-workflow.png rename to doc/upstream-training/source/_assets/14-02-gerrit-workflow.png diff --git a/doc/upstream-training/_assets/14-03-upload-ssh-key.png b/doc/upstream-training/source/_assets/14-03-upload-ssh-key.png similarity index 100% rename from doc/upstream-training/_assets/14-03-upload-ssh-key.png rename to doc/upstream-training/source/_assets/14-03-upload-ssh-key.png diff --git a/doc/upstream-training/_assets/14-04-git-config.png b/doc/upstream-training/source/_assets/14-04-git-config.png similarity index 100% rename from doc/upstream-training/_assets/14-04-git-config.png rename to doc/upstream-training/source/_assets/14-04-git-config.png diff --git a/doc/upstream-training/_assets/14-05-install.png b/doc/upstream-training/source/_assets/14-05-install.png similarity index 100% rename from doc/upstream-training/_assets/14-05-install.png rename to doc/upstream-training/source/_assets/14-05-install.png diff --git a/doc/upstream-training/_assets/14-06-git-clone.png b/doc/upstream-training/source/_assets/14-06-git-clone.png similarity index 100% rename from doc/upstream-training/_assets/14-06-git-clone.png rename to doc/upstream-training/source/_assets/14-06-git-clone.png diff --git a/doc/upstream-training/_assets/14-07-git-review-s.png b/doc/upstream-training/source/_assets/14-07-git-review-s.png similarity index 100% rename from doc/upstream-training/_assets/14-07-git-review-s.png rename to doc/upstream-training/source/_assets/14-07-git-review-s.png diff --git a/doc/upstream-training/_assets/14-08-git-checkout.png b/doc/upstream-training/source/_assets/14-08-git-checkout.png similarity index 100% rename from doc/upstream-training/_assets/14-08-git-checkout.png rename to doc/upstream-training/source/_assets/14-08-git-checkout.png diff --git a/doc/upstream-training/_assets/14-09-unit-tests.png b/doc/upstream-training/source/_assets/14-09-unit-tests.png similarity index 100% rename from doc/upstream-training/_assets/14-09-unit-tests.png rename to doc/upstream-training/source/_assets/14-09-unit-tests.png diff --git a/doc/upstream-training/_assets/14-11-invite-reviewers.png b/doc/upstream-training/source/_assets/14-11-invite-reviewers.png similarity index 100% rename from doc/upstream-training/_assets/14-11-invite-reviewers.png rename to doc/upstream-training/source/_assets/14-11-invite-reviewers.png diff --git a/doc/upstream-training/_assets/14-12-new-invite-reviewers.png b/doc/upstream-training/source/_assets/14-12-new-invite-reviewers.png similarity index 100% rename from doc/upstream-training/_assets/14-12-new-invite-reviewers.png rename to doc/upstream-training/source/_assets/14-12-new-invite-reviewers.png diff --git a/doc/upstream-training/_assets/14-13-git-commit-amend.png b/doc/upstream-training/source/_assets/14-13-git-commit-amend.png similarity index 100% rename from doc/upstream-training/_assets/14-13-git-commit-amend.png rename to doc/upstream-training/source/_assets/14-13-git-commit-amend.png diff --git a/doc/upstream-training/_assets/14-15-patchset-history.png b/doc/upstream-training/source/_assets/14-15-patchset-history.png similarity index 100% rename from doc/upstream-training/_assets/14-15-patchset-history.png rename to doc/upstream-training/source/_assets/14-15-patchset-history.png diff --git a/doc/upstream-training/_assets/14-16-new-patchset-history.png b/doc/upstream-training/source/_assets/14-16-new-patchset-history.png similarity index 100% rename from doc/upstream-training/_assets/14-16-new-patchset-history.png rename to doc/upstream-training/source/_assets/14-16-new-patchset-history.png diff --git a/doc/upstream-training/_assets/14-17-patchset-diffs.png b/doc/upstream-training/source/_assets/14-17-patchset-diffs.png similarity index 100% rename from doc/upstream-training/_assets/14-17-patchset-diffs.png rename to doc/upstream-training/source/_assets/14-17-patchset-diffs.png diff --git a/doc/upstream-training/_assets/15-01-inspired.png b/doc/upstream-training/source/_assets/15-01-inspired.png similarity index 100% rename from doc/upstream-training/_assets/15-01-inspired.png rename to doc/upstream-training/source/_assets/15-01-inspired.png diff --git a/doc/upstream-training/_assets/15-02-stable-branches.png b/doc/upstream-training/source/_assets/15-02-stable-branches.png similarity index 100% rename from doc/upstream-training/_assets/15-02-stable-branches.png rename to doc/upstream-training/source/_assets/15-02-stable-branches.png diff --git a/doc/upstream-training/_assets/15-03-branch-tags.png b/doc/upstream-training/source/_assets/15-03-branch-tags.png similarity index 100% rename from doc/upstream-training/_assets/15-03-branch-tags.png rename to doc/upstream-training/source/_assets/15-03-branch-tags.png diff --git a/doc/upstream-training/_assets/15-04-preparation.png b/doc/upstream-training/source/_assets/15-04-preparation.png similarity index 100% rename from doc/upstream-training/_assets/15-04-preparation.png rename to doc/upstream-training/source/_assets/15-04-preparation.png diff --git a/doc/upstream-training/_assets/15-05-review.png b/doc/upstream-training/source/_assets/15-05-review.png similarity index 100% rename from doc/upstream-training/_assets/15-05-review.png rename to doc/upstream-training/source/_assets/15-05-review.png diff --git a/doc/upstream-training/_assets/16-01-review-unified.png b/doc/upstream-training/source/_assets/16-01-review-unified.png similarity index 100% rename from doc/upstream-training/_assets/16-01-review-unified.png rename to doc/upstream-training/source/_assets/16-01-review-unified.png diff --git a/doc/upstream-training/_assets/16-02-review-unified.png b/doc/upstream-training/source/_assets/16-02-review-unified.png similarity index 100% rename from doc/upstream-training/_assets/16-02-review-unified.png rename to doc/upstream-training/source/_assets/16-02-review-unified.png diff --git a/doc/upstream-training/_assets/16-03-inline-comments.png b/doc/upstream-training/source/_assets/16-03-inline-comments.png similarity index 100% rename from doc/upstream-training/_assets/16-03-inline-comments.png rename to doc/upstream-training/source/_assets/16-03-inline-comments.png diff --git a/doc/upstream-training/_assets/16-04-draft-inline-comments.png b/doc/upstream-training/source/_assets/16-04-draft-inline-comments.png similarity index 100% rename from doc/upstream-training/_assets/16-04-draft-inline-comments.png rename to doc/upstream-training/source/_assets/16-04-draft-inline-comments.png diff --git a/doc/upstream-training/_assets/16-05-regular-reviewer.png b/doc/upstream-training/source/_assets/16-05-regular-reviewer.png similarity index 100% rename from doc/upstream-training/_assets/16-05-regular-reviewer.png rename to doc/upstream-training/source/_assets/16-05-regular-reviewer.png diff --git a/doc/upstream-training/_assets/16-06-core-reviewer.png b/doc/upstream-training/source/_assets/16-06-core-reviewer.png similarity index 100% rename from doc/upstream-training/_assets/16-06-core-reviewer.png rename to doc/upstream-training/source/_assets/16-06-core-reviewer.png diff --git a/doc/upstream-training/_assets/17-01-bad-two.png b/doc/upstream-training/source/_assets/17-01-bad-two.png similarity index 100% rename from doc/upstream-training/_assets/17-01-bad-two.png rename to doc/upstream-training/source/_assets/17-01-bad-two.png diff --git a/doc/upstream-training/_assets/17-02-bad-new.png b/doc/upstream-training/source/_assets/17-02-bad-new.png similarity index 100% rename from doc/upstream-training/_assets/17-02-bad-new.png rename to doc/upstream-training/source/_assets/17-02-bad-new.png diff --git a/doc/upstream-training/_assets/17-03-good.png b/doc/upstream-training/source/_assets/17-03-good.png similarity index 100% rename from doc/upstream-training/_assets/17-03-good.png rename to doc/upstream-training/source/_assets/17-03-good.png diff --git a/doc/upstream-training/_assets/17-04-commit-message.png b/doc/upstream-training/source/_assets/17-04-commit-message.png similarity index 100% rename from doc/upstream-training/_assets/17-04-commit-message.png rename to doc/upstream-training/source/_assets/17-04-commit-message.png diff --git a/doc/upstream-training/_assets/18-01-triggered.png b/doc/upstream-training/source/_assets/18-01-triggered.png similarity index 100% rename from doc/upstream-training/_assets/18-01-triggered.png rename to doc/upstream-training/source/_assets/18-01-triggered.png diff --git a/doc/upstream-training/_assets/18-02-review.png b/doc/upstream-training/source/_assets/18-02-review.png similarity index 100% rename from doc/upstream-training/_assets/18-02-review.png rename to doc/upstream-training/source/_assets/18-02-review.png diff --git a/doc/upstream-training/_assets/18-03-error-report.png b/doc/upstream-training/source/_assets/18-03-error-report.png similarity index 100% rename from doc/upstream-training/_assets/18-03-error-report.png rename to doc/upstream-training/source/_assets/18-03-error-report.png diff --git a/doc/upstream-training/_assets/18-04-false-errors.png b/doc/upstream-training/source/_assets/18-04-false-errors.png similarity index 100% rename from doc/upstream-training/_assets/18-04-false-errors.png rename to doc/upstream-training/source/_assets/18-04-false-errors.png diff --git a/doc/upstream-training/_assets/18-05-recheck.png b/doc/upstream-training/source/_assets/18-05-recheck.png similarity index 100% rename from doc/upstream-training/_assets/18-05-recheck.png rename to doc/upstream-training/source/_assets/18-05-recheck.png diff --git a/doc/upstream-training/_assets/19-01-goodworkflow.png b/doc/upstream-training/source/_assets/19-01-goodworkflow.png similarity index 100% rename from doc/upstream-training/_assets/19-01-goodworkflow.png rename to doc/upstream-training/source/_assets/19-01-goodworkflow.png diff --git a/doc/upstream-training/_assets/19-02-badworkflow.png b/doc/upstream-training/source/_assets/19-02-badworkflow.png similarity index 100% rename from doc/upstream-training/_assets/19-02-badworkflow.png rename to doc/upstream-training/source/_assets/19-02-badworkflow.png diff --git a/doc/upstream-training/_assets/20-01-sprint.png b/doc/upstream-training/source/_assets/20-01-sprint.png similarity index 100% rename from doc/upstream-training/_assets/20-01-sprint.png rename to doc/upstream-training/source/_assets/20-01-sprint.png diff --git a/doc/upstream-training/source/_static/custom.css b/doc/upstream-training/source/_static/custom.css new file mode 100644 index 00000000..11232e6c --- /dev/null +++ b/doc/upstream-training/source/_static/custom.css @@ -0,0 +1,34 @@ +.slide { + background: -webkit-gradient(linear, left bottom, left top, from(#eef3f5), to(#fff)); + background-color: #eee; + background: -moz-linear-gradient(bottom, #eef3f5, #fff); + -webkit-transition: margin 0.25s ease-in-out; + -moz-transition: margin 0.25s ease-in-out; + -o-transition: margin 0.25s ease-in-out; + border-top-left-radius: 20px; + -moz-border-radius-topleft: 20px; + -webkit-border-top-left-radius: 20px; + border-top-right-radius: 20px; + -moz-border-radius-topright: 20px; + -webkit-border-top-right-radius: 20px; + border-bottom-right-radius: 20px; + -moz-border-radius-bottomright: 20px; + -webkit-border-bottom-right-radius: 20px; + border-bottom-left-radius: 20px; + -moz-border-radius-bottomleft: 20px; + -webkit-border-bottom-left-radius: 20px; +} + +.colleft { + float: left; + max-width: 48%; + height: 600px; + padding-left: 0; +} + +.colright { + float: right; + max-width: 48%; + height: 600px; + padding: 0; +} diff --git a/doc/upstream-training/theme/css/screen.css b/doc/upstream-training/source/_static/screen.css similarity index 100% rename from doc/upstream-training/theme/css/screen.css rename to doc/upstream-training/source/_static/screen.css diff --git a/doc/upstream-training/source/conf.py b/doc/upstream-training/source/conf.py new file mode 100644 index 00000000..8e1db7dc --- /dev/null +++ b/doc/upstream-training/source/conf.py @@ -0,0 +1,291 @@ +# -*- coding: utf-8 -*- +# +# OpenStack Upstream Training documentation build configuration file, created by +# sphinx-quickstart on Sat Nov 1 14:32:31 2014. +# +# This file is execfile()d with the current directory set to its +# containing dir. +# +# Note that not all possible configuration values are present in this +# autogenerated file. +# +# All configuration values have a default; values that are commented out +# serve to show the default. + +import sys +import os + +# If extensions (or modules to document with autodoc) are in another directory, +# add these directories to sys.path here. If the directory is relative to the +# documentation root, use os.path.abspath to make it absolute, like shown here. +#sys.path.insert(0, os.path.abspath('.')) + +# -- General configuration ------------------------------------------------ + +# If your documentation needs a minimal Sphinx version, state it here. +#needs_sphinx = '1.0' + +# Add any Sphinx extension module names here, as strings. They can be +# extensions coming with Sphinx (named 'sphinx.ext.*') or your custom +# ones. +extensions = [ + 'sphinx.ext.doctest', + 'sphinx.ext.intersphinx', + 'sphinx.ext.todo', + 'sphinx.ext.coverage', + 'sphinx.ext.pngmath', + 'sphinx.ext.ifconfig', +] + +# Add any paths that contain templates here, relative to this directory. +templates_path = ['_templates'] + +# The suffix of source filenames. +source_suffix = '.rst' + +# The encoding of source files. +#source_encoding = 'utf-8-sig' + +# The master toctree document. +master_doc = 'index' + +# General information about the project. +project = u'OpenStack Upstream Training' +copyright = u'2014, Loic, Stefano and others' + +# The version info for the project you're documenting, acts as replacement for +# |version| and |release|, also used in various other places throughout the +# built documents. +# +# The short X.Y version. +version = '2014.11.01' +# The full version, including alpha/beta/rc tags. +release = '2014.11.01' + +# The language for content autogenerated by Sphinx. Refer to documentation +# for a list of supported languages. +#language = None + +# There are two options for replacing |today|: either, you set today to some +# non-false value, then it is used: +#today = '' +# Else, today_fmt is used as the format for a strftime call. +#today_fmt = '%B %d, %Y' + +# List of patterns, relative to source directory, that match files and +# directories to ignore when looking for source files. +exclude_patterns = ['build'] + +# The reST default role (used for this markup: `text`) to use for all +# documents. +#default_role = None + +# If true, '()' will be appended to :func: etc. cross-reference text. +#add_function_parentheses = True + +# If true, the current module name will be prepended to all description +# unit titles (such as .. function::). +#add_module_names = True + +# If true, sectionauthor and moduleauthor directives will be shown in the +# output. They are ignored by default. +#show_authors = False + +# The name of the Pygments (syntax highlighting) style to use. +pygments_style = 'sphinx' + +# A list of ignored prefixes for module index sorting. +#modindex_common_prefix = [] + +# If true, keep warnings as "system message" paragraphs in the built documents. +#keep_warnings = False + + +# -- Options for HTML output ---------------------------------------------- + +# The theme to use for HTML and HTML Help pages. See the documentation for +# a list of builtin themes. +html_theme = 'default' + +# Theme options are theme-specific and customize the look and feel of a theme +# further. For a list of options available for each theme, see the +# documentation. +#html_theme_options = {} + +# Add any paths that contain custom themes here, relative to this directory. +#html_theme_path = [] + +# The name for this set of Sphinx documents. If None, it defaults to +# " v documentation". +#html_title = None + +# A shorter title for the navigation bar. Default is the same as html_title. +#html_short_title = None + +# The name of an image file (relative to this directory) to place at the top +# of the sidebar. +#html_logo = None + +# The name of an image file (within the static path) to use as favicon of the +# docs. This file should be a Windows icon file (.ico) being 16x16 or 32x32 +# pixels large. +#html_favicon = None + +# Add any paths that contain custom static files (such as style sheets) here, +# relative to this directory. They are copied after the builtin static files, +# so a file named "default.css" will overwrite the builtin "default.css". +html_static_path = ['_static'] + +# Add any extra paths that contain custom files (such as robots.txt or +# .htaccess) here, relative to this directory. These files are copied +# directly to the root of the documentation. +#html_extra_path = [] + +# If not '', a 'Last updated on:' timestamp is inserted at every page bottom, +# using the given strftime format. +#html_last_updated_fmt = '%b %d, %Y' + +# If true, SmartyPants will be used to convert quotes and dashes to +# typographically correct entities. +#html_use_smartypants = True + +# Custom sidebar templates, maps document names to template names. +#html_sidebars = {} + +# Additional templates that should be rendered to pages, maps page names to +# template names. +#html_additional_pages = {} + +# If false, no module index is generated. +#html_domain_indices = True + +# If false, no index is generated. +#html_use_index = True + +# If true, the index is split into individual pages for each letter. +#html_split_index = False + +# If true, links to the reST sources are added to the pages. +#html_show_sourcelink = True + +# If true, "Created using Sphinx" is shown in the HTML footer. Default is True. +#html_show_sphinx = True + +# If true, "(C) Copyright ..." is shown in the HTML footer. Default is True. +#html_show_copyright = True + +# If true, an OpenSearch description file will be output, and all pages will +# contain a tag referring to it. The value of this option must be the +# base URL from which the finished HTML is served. +#html_use_opensearch = '' + +# This is the file name suffix for HTML files (e.g. ".xhtml"). +#html_file_suffix = None + +# Output file base name for HTML help builder. +htmlhelp_basename = 'OpenStackUpstreamTrainingdoc' + + +# -- Options for LaTeX output --------------------------------------------- + +latex_elements = { +# The paper size ('letterpaper' or 'a4paper'). +#'papersize': 'letterpaper', + +# The font size ('10pt', '11pt' or '12pt'). +#'pointsize': '10pt', + +# Additional stuff for the LaTeX preamble. +#'preamble': '', +} + +# Grouping the document tree into LaTeX files. List of tuples +# (source start file, target name, title, +# author, documentclass [howto, manual, or own class]). +latex_documents = [ + ('index', 'OpenStackUpstreamTraining.tex', u'OpenStack Upstream Training Documentation', + u'Loic, Stefano and others', 'manual'), +] + +# The name of an image file (relative to this directory) to place at the top of +# the title page. +#latex_logo = None + +# For "manual" documents, if this is true, then toplevel headings are parts, +# not chapters. +#latex_use_parts = False + +# If true, show page references after internal links. +#latex_show_pagerefs = False + +# If true, show URL addresses after external links. +#latex_show_urls = False + +# Documents to append as an appendix to all manuals. +#latex_appendices = [] + +# If false, no module index is generated. +#latex_domain_indices = True + + +# -- Options for manual page output --------------------------------------- + +# One entry per manual page. List of tuples +# (source start file, name, description, authors, manual section). +#man_pages = [ +# ('index', 'openstackupstreamtraining', u'OpenStack Upstream Training Documentation', +# [u'Loic, Stefano and others'], 1) +#] + +# If true, show URL addresses after external links. +#man_show_urls = False + + +# -- Options for Texinfo output ------------------------------------------- + +# Grouping the document tree into Texinfo files. List of tuples +# (source start file, target name, title, author, +# dir menu entry, description, category) +#texinfo_documents = [ +# ('index', 'OpenStackUpstreamTraining', u'OpenStack Upstream Training Documentation', +# u'Loic, Stefano and others', 'OpenStackUpstreamTraining', 'One line description of project.', +# 'Miscellaneous'), +#] + +# Documents to append as an appendix to all manuals. +#texinfo_appendices = [] + +# If false, no module index is generated. +#texinfo_domain_indices = True + +# How to display URL addresses: 'footnote', 'no', or 'inline'. +#texinfo_show_urls = 'footnote' + +# If true, do not generate a @detailmenu in the "Top" node's menu. +#texinfo_no_detailmenu = False + + +# -- Hieroglyph Slide Configuration ------------ + +extensions += [ + 'hieroglyph', +] + +#slide_theme = 'slides' +slide_theme = 'single-level' +slide_levels = 3 + +# Place custom static assets in the _static directory and uncomment +# the following lines to include them + +slide_theme_options = { + 'custom_css': 'custom.css', + } +#'custom_js': 'custom.js', + +# ---------------------------------------------- + + + +# Example configuration for intersphinx: refer to the Python standard library. +intersphinx_mapping = {'http://docs.python.org/': None} diff --git a/doc/upstream-training/source/index.rst b/doc/upstream-training/source/index.rst new file mode 100644 index 00000000..cd2c3552 --- /dev/null +++ b/doc/upstream-training/source/index.rst @@ -0,0 +1,37 @@ +.. Upstream Training documentation master file, created by + sphinx-quickstart on Sat Nov 1 12:04:55 2014. + You can adapt this file completely to your liking, but it should at least + contain the root `toctree` directive. + +Welcome to Upstream Training's documentation! +============================================= + +Contents: + +.. toctree:: + :maxdepth: 1 + + 01-release-cycle + 02-relevant-actors + 03-technical-committee + 04-program-ecosystem + 05-design-summit + 06-irc-meetings + 11-devstack + 12-howtocontribute + 13-launchpad + 14-gerrit + 15-branching-model + 16-reviewing + 17-commit-message + 18-jenkins + 19-training-contribution-process + 20-training-agile-for-contributors + +Indices and tables +================== + +* :ref:`genindex` +* :ref:`modindex` +* :ref:`search` + diff --git a/doc/upstream-training/theme/base.html b/doc/upstream-training/theme/base.html deleted file mode 100644 index 142de52b..00000000 --- a/doc/upstream-training/theme/base.html +++ /dev/null @@ -1,182 +0,0 @@ - - - - - - - {{ head_title }} - - {% if embed %} - - - {% else %} - - - {% endif %} - {% for css in user_css %} - {% if embed %} - - {% else %} - - {% endif %} - {% endfor %} - - - {% if embed %} - - {% else %} - - {% endif %} - {% for js in user_js %} - {% if embed %} - - {% else %} - - {% endif %} - {% endfor %} - - - -
-
-
-
-
-
- {% for slide in slides %} - -
-
-
- {% if slide.header %} -
{{ slide.header }}
- {% endif %} - {% if slide.content %} -
{{ slide.content }}
- {% endif %} -
-
-

Presenter Notes

-
- {% if slide.presenter_notes %} - {{ slide.presenter_notes }} - {% endif %} -
-
- -
-
- {% endfor %} -
-
- {% if toc %} - - {% endif %} - - - - diff --git a/doc/upstream-training/theme/css/print.css b/doc/upstream-training/theme/css/print.css deleted file mode 100644 index f91e7477..00000000 --- a/doc/upstream-training/theme/css/print.css +++ /dev/null @@ -1,108 +0,0 @@ -* { - margin: 0; - padding: 0; -} - -@page { - size: landscape; -} - -body { - font: 100% "Lucida Grande", "Trebuchet MS", Verdana, sans-serif; - padding: 0; - margin: 0; -} - -div.slide { - min-width: 800px; - min-height: 600px; - padding: 1em; - overflow: hidden; - page-break-after: always; - border: 1px solid black; - border-radius: 20px; -} - -div.slide div.inner { - width: 800px; - height: 600px; - margin: auto; - display: table-cell; -} - -h1 { - font-size: 2.4em; -} - -h2 { - font-size: 1.4em; -} - -h3 { - margin: 1em 0; -} - -ul { - margin: 0; - padding: 0; -} - -p, li, pre { - margin: 1em 0; -} - -li { - margin-left: 2em; -} - -a { - color: #000000; -} - -pre, code { - max-width: 800px; - background: #eee; - font-family: Monaco, monospace; - font-size: 90%; -} - -pre { - padding: .2em .5em; - overflow: hidden; - border-radius: .8em; -} - -code { - padding: 0 .2em; -} - -.slide header:only-child h1 { - line-height: 180%; - text-align: center; - display: table-cell; - vertical-align: middle; - height: 600px; - width: 800px; - font-size: 48px; - margin-top:100px; - margin-bottom:100px; -} - -#toc, #help, .slide aside, .slide footer, .slide .notes, -.presenter_notes, #current_presenter_notes, #presenter_note { - display: none; -} - -.colleft { - float: left; - max-width: 48%; - height: 550px; - padding-left: 2em; -} - -.colright { - float: right; - max-width: 48%; - height: 550px; - padding: 0; -} diff --git a/doc/upstream-training/theme/js/slides.js b/doc/upstream-training/theme/js/slides.js deleted file mode 100644 index e7ae40c5..00000000 --- a/doc/upstream-training/theme/js/slides.js +++ /dev/null @@ -1,580 +0,0 @@ -function main() { - // Since we don't have the fallback of attachEvent and - // other IE only stuff we won't try to run JS for IE. - // It will run though when using Google Chrome Frame - if (document.all) { return; } - - var currentSlideNo; - var notesOn = false; - var expanded = false; - var hiddenContext = false; - var blanked = false; - var slides = document.getElementsByClassName('slide'); - var touchStartX = 0; - var spaces = /\s+/, a1 = ['']; - var tocOpened = false; - var helpOpened = false; - var overviewActive = false; - var modifierKeyDown = false; - var scale = 1; - var showingPresenterView = false; - var presenterViewWin = null; - var isPresenterView = false; - - var str2array = function(s) { - if (typeof s == 'string' || s instanceof String) { - if (s.indexOf(' ') < 0) { - a1[0] = s; - return a1; - } else { - return s.split(spaces); - } - } - return s; - }; - - var trim = function(str) { - return str.replace(/^\s\s*/, '').replace(/\s\s*$/, ''); - }; - - var addClass = function(node, classStr) { - classStr = str2array(classStr); - var cls = ' ' + node.className + ' '; - for (var i = 0, len = classStr.length, c; i < len; ++i) { - c = classStr[i]; - if (c && cls.indexOf(' ' + c + ' ') < 0) { - cls += c + ' '; - } - } - node.className = trim(cls); - }; - - var removeClass = function(node, classStr) { - var cls; - if (!node) { - throw 'no node provided'; - } - if (classStr !== undefined) { - classStr = str2array(classStr); - cls = ' ' + node.className + ' '; - for (var i = 0, len = classStr.length; i < len; ++i) { - cls = cls.replace(' ' + classStr[i] + ' ', ' '); - } - cls = trim(cls); - } else { - cls = ''; - } - if (node.className != cls) { - node.className = cls; - } - }; - - var getSlideEl = function(slideNo) { - if (slideNo > 0) { - return slides[slideNo - 1]; - } else { - return null; - } - }; - - var getSlideTitle = function(slideNo) { - var el = getSlideEl(slideNo); - if (el) { - var headers = el.getElementsByTagName('header'); - if (headers.length > 0) { - return el.getElementsByTagName('header')[0].innerText; - } - } - return null; - }; - - var getSlidePresenterNote = function(slideNo) { - var el = getSlideEl(slideNo); - if (el) { - var n = el.getElementsByClassName('presenter_notes'); - if (n.length > 0) { - return n[0]; - } - } - return null; - }; - - var changeSlideElClass = function(slideNo, className) { - var el = getSlideEl(slideNo); - if (el) { - removeClass(el, 'far-past past current future far-future'); - addClass(el, className); - } - }; - - var updateSlideClasses = function(updateOther) { - window.location.hash = (isPresenterView ? "presenter" : "slide") + currentSlideNo; - - for (var i=1; i 1) { - currentSlideNo--; - } - updateSlideClasses(true); - }; - - var showNotes = function() { - var notes = getSlideEl(currentSlideNo).getElementsByClassName('notes'); - for (var i = 0, len = notes.length; i < len; i++) { - notes.item(i).style.display = (notesOn) ? 'none':'block'; - } - notesOn = !notesOn; - }; - - var showSlideNumbers = function() { - var asides = document.getElementsByClassName('page_number'); - var hidden = asides[0].style.display != 'block'; - for (var i = 0; i < asides.length; i++) { - asides.item(i).style.display = hidden ? 'block' : 'none'; - } - }; - - var showSlideSources = function() { - var asides = document.getElementsByClassName('source'); - var hidden = asides[0].style.display != 'block'; - for (var i = 0; i < asides.length; i++) { - asides.item(i).style.display = hidden ? 'block' : 'none'; - } - }; - - var showToc = function() { - if (helpOpened) { - showHelp(); - } - var toc = document.getElementById('toc'); - if (toc) { - toc.style.marginLeft = tocOpened ? '-' + (toc.clientWidth + 20) + 'px' : '0px'; - tocOpened = !tocOpened; - } - updateOverview(); - }; - - var showHelp = function() { - if (tocOpened) { - showToc(); - } - - var help = document.getElementById('help'); - - if (help) { - help.style.marginLeft = helpOpened ? '-' + (help.clientWidth + 20) + 'px' : '0px'; - helpOpened = !helpOpened; - } - }; - - var showPresenterView = function() { - if (isPresenterView) { return; } - - if (showingPresenterView) { - presenterViewWin.close(); - presenterViewWin = null; - showingPresenterView = false; - } else { - presenterViewWin = open(window.location.pathname + "#presenter" + currentSlideNo, 'presenter_notes', - 'directories=no,location=no,toolbar=no,menubar=no,copyhistory=no'); - showingPresenterView = true; - } - }; - - var switch3D = function() { - if (document.body.className.indexOf('three-d') == -1) { - document.getElementsByClassName('presentation')[0].style.webkitPerspective = '1000px'; - document.body.className += ' three-d'; - } else { - window.setTimeout('document.getElementsByClassName(\'presentation\')[0].style.webkitPerspective = \'0\';', 2000); - document.body.className = document.body.className.replace(/three-d/, ''); - } - }; - - var toggleOverview = function() { - if (!overviewActive) { - addClass(document.body, 'expose'); - overviewActive = true; - setScale(1); - } else { - removeClass(document.body, 'expose'); - overviewActive = false; - if (expanded) { - setScale(scale); // restore scale - } - } - processContext(); - updateOverview(); - }; - - var updateOverview = function() { - try { - var presentation = document.getElementsByClassName('presentation')[0]; - } catch (e) { - return; - } - - if (isPresenterView) { - var action = overviewActive ? removeClass : addClass; - action(document.body, 'presenter_view'); - } - - var toc = document.getElementById('toc'); - - if (!toc) { - return; - } - - if (!tocOpened || !overviewActive) { - presentation.style.marginLeft = '0px'; - presentation.style.width = '100%'; - } else { - presentation.style.marginLeft = toc.clientWidth + 'px'; - presentation.style.width = (presentation.clientWidth - toc.clientWidth) + 'px'; - } - }; - - var computeScale = function() { - var cSlide = document.getElementsByClassName('current')[0]; - var sx = cSlide.clientWidth / window.innerWidth; - var sy = cSlide.clientHeight / window.innerHeight; - return 1 / Math.max(sx, sy); - }; - - var setScale = function(scale) { - var presentation = document.getElementsByClassName('slides')[0]; - var transform = 'scale(' + scale + ')'; - presentation.style.MozTransform = transform; - presentation.style.WebkitTransform = transform; - presentation.style.OTransform = transform; - presentation.style.msTransform = transform; - presentation.style.transform = transform; - }; - - var expandSlides = function() { - if (overviewActive) { - return; - } - if (expanded) { - setScale(1); - expanded = false; - } else { - scale = computeScale(); - setScale(scale); - expanded = true; - } - }; - - var showContext = function() { - try { - var presentation = document.getElementsByClassName('slides')[0]; - removeClass(presentation, 'nocontext'); - } catch (e) {} - }; - - var hideContext = function() { - try { - var presentation = document.getElementsByClassName('slides')[0]; - addClass(presentation, 'nocontext'); - } catch (e) {} - }; - - var processContext = function() { - if (hiddenContext) { - hideContext(); - } else { - showContext(); - } - }; - - var toggleContext = function() { - hiddenContext = !hiddenContext; - processContext(); - }; - - var toggleBlank = function() { - blank_elem = document.getElementById('blank'); - - blank_elem.style.display = blanked ? 'none' : 'block'; - - blanked = !blanked; - }; - - var isModifierKey = function(keyCode) { - switch (keyCode) { - case 16: // shift - case 17: // ctrl - case 18: // alt - case 91: // command - return true; - break; - default: - return false; - break; - } - }; - - var checkModifierKeyUp = function(event) { - if (isModifierKey(event.keyCode)) { - modifierKeyDown = false; - } - }; - - var checkModifierKeyDown = function(event) { - if (isModifierKey(event.keyCode)) { - modifierKeyDown = true; - } - }; - - var handleBodyKeyDown = function(event) { - switch (event.keyCode) { - case 13: // Enter - if (overviewActive) { - toggleOverview(); - } - break; - case 27: // ESC - toggleOverview(); - break; - case 37: // left arrow - case 33: // page up - event.preventDefault(); - prevSlide(); - break; - case 39: // right arrow - case 32: // space - case 34: // page down - event.preventDefault(); - nextSlide(); - break; - case 50: // 2 - if (!modifierKeyDown) { - showNotes(); - } - break; - case 51: // 3 - if (!modifierKeyDown && !overviewActive) { - switch3D(); - } - break; - case 190: // . - case 48: // 0 - case 66: // b - if (!modifierKeyDown && !overviewActive) { - toggleBlank(); - } - break; - case 67: // c - if (!modifierKeyDown && !overviewActive) { - toggleContext(); - } - break; - case 69: // e - if (!modifierKeyDown && !overviewActive) { - expandSlides(); - } - break; - case 72: // h - showHelp(); - break; - case 78: // n - if (!modifierKeyDown && !overviewActive) { - showSlideNumbers(); - } - break; - case 80: // p - if (!modifierKeyDown && !overviewActive) { - showPresenterView(); - } - break; - case 83: // s - if (!modifierKeyDown && !overviewActive) { - showSlideSources(); - } - break; - case 84: // t - showToc(); - break; - } - }; - - var handleWheel = function(event) { - if (tocOpened || helpOpened || overviewActive) { - return; - } - - var delta = 0; - - if (!event) { - event = window.event; - } - - if (event.wheelDelta) { - delta = event.wheelDelta/120; - if (window.opera) delta = -delta; - } else if (event.detail) { - delta = -event.detail/3; - } - - if (delta && delta <0) { - nextSlide(); - } else if (delta) { - prevSlide(); - } - }; - - var addSlideClickListeners = function() { - for (var i=0; i < slides.length; i++) { - var slide = slides.item(i); - slide.num = i + 1; - slide.addEventListener('click', function(e) { - if (overviewActive) { - currentSlideNo = this.num; - toggleOverview(); - updateSlideClasses(true); - e.preventDefault(); - } - return false; - }, true); - } - }; - - var addRemoteWindowControls = function() { - window.addEventListener("message", function(e) { - if (e.data.indexOf("slide#") != -1) { - currentSlideNo = Number(e.data.replace('slide#', '')); - updateSlideClasses(false); - } - }, false); - }; - - var addTouchListeners = function() { - document.addEventListener('touchstart', function(e) { - touchStartX = e.touches[0].pageX; - }, false); - document.addEventListener('touchend', function(e) { - var pixelsMoved = touchStartX - e.changedTouches[0].pageX; - var SWIPE_SIZE = 150; - if (pixelsMoved > SWIPE_SIZE) { - nextSlide(); - } - else if (pixelsMoved < -SWIPE_SIZE) { - prevSlide(); - } - }, false); - }; - - var addTocLinksListeners = function() { - var toc = document.getElementById('toc'); - if (toc) { - var tocLinks = toc.getElementsByTagName('a'); - for (var i=0; i < tocLinks.length; i++) { - tocLinks.item(i).addEventListener('click', function(e) { - currentSlideNo = Number(this.attributes['href'].value.replace('#slide', '')); - updateSlideClasses(true); - e.preventDefault(); - }, true); - } - } - }; - - // initialize - - (function() { - if (window.location.hash == "") { - currentSlideNo = 1; - } else if (window.location.hash.indexOf("#presenter") != -1) { - currentSlideNo = Number(window.location.hash.replace('#presenter', '')); - isPresenterView = true; - showingPresenterView = true; - presenterViewWin = window; - addClass(document.body, 'presenter_view'); - } else { - currentSlideNo = Number(window.location.hash.replace('#slide', '')); - } - - document.addEventListener('keyup', checkModifierKeyUp, false); - document.addEventListener('keydown', handleBodyKeyDown, false); - document.addEventListener('keydown', checkModifierKeyDown, false); - document.addEventListener('DOMMouseScroll', handleWheel, false); - - window.onmousewheel = document.onmousewheel = handleWheel; - window.onresize = expandSlides; - - for (var i = 0, el; el = slides[i]; i++) { - addClass(el, 'slide far-future'); - } - updateSlideClasses(false); - - // add support for finger events (filter it by property detection?) - addTouchListeners(); - - addTocLinksListeners(); - - addSlideClickListeners(); - - addRemoteWindowControls(); - })(); -} diff --git a/setup.cfg b/setup.cfg new file mode 100644 index 00000000..cbc6ff44 --- /dev/null +++ b/setup.cfg @@ -0,0 +1,23 @@ +[metadata] +name = training-guides +summary = OpenStack Project Training Guides +description-file = + README.rst +author = OpenStack +author-email = openstack-dev@lists.openstack.org +home-page = http://www.openstack.org/ +classifier = + Intended Audience :: Developers + License :: OSI Approved :: Apache Software License + Operating System :: POSIX :: Linux + +[build_sphinx] +all_files = 1 +build-dir = doc/upstream-training/build +source-dir = doc/upstream-training/source + +[pbr] +warnerrors = True + +[wheel] +universal = 1 diff --git a/setup.py b/setup.py new file mode 100755 index 00000000..c0a24eab --- /dev/null +++ b/setup.py @@ -0,0 +1,21 @@ +#!/usr/bin/env python +# Copyright (c) 2013 Hewlett-Packard Development Company, L.P. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or +# implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import setuptools + +setuptools.setup( + setup_requires=['pbr'], + pbr=True) diff --git a/test-requirements.txt b/test-requirements.txt index 55b1396a..c43dfd1e 100644 --- a/test-requirements.txt +++ b/test-requirements.txt @@ -1,5 +1,9 @@ # The order of packages is significant, because pip processes them in the order # of appearance. Changing the order has an impact on the overall integration # process, which may cause wedges in the gate later. -openstack-doc-tools>=0.21.1 +openstack-doc-tools>=0.23 doc8 # Apache-2.0 +pbr>=0.6,<1.0 +oslosphinx +sphinx>=1.1.2,<1.2 +hieroglyph>=0.5 diff --git a/tox.ini b/tox.ini index cbedc831..f357325d 100644 --- a/tox.ini +++ b/tox.ini @@ -5,8 +5,8 @@ skipsdist = True [testenv] basepython = python2 -setenv = - VIRTUAL_ENV={envdir} +setenv = VIRTUAL_ENV={envdir} +install_command = pip install -U {opts} {packages} deps = -r{toxinidir}/test-requirements.txt whitelist_externals = bash @@ -32,5 +32,8 @@ commands = [doc8] # Settings for doc8: # File extensions to use -extensions = .rst,.txt +extension = .rst,.txt +ignore-path = doc/upstream-training/build/* +[testenv:hiero-slides] +commands = sphinx-build -b slides doc/upstream-training/source/ doc/upstream-training/build/slides