Added tagging/versioning/publishing job templates

- Uses the CORD-style versioning workflow described here:
  https://guide.opencord.org/developer/test_release_software.html#versioning-projects
  but with refactoring and renaming for clarification.

- Added trellis-docs test/publish jobs using these templates

- Cleanup of defaults.yaml file

- Added rsync and virtualenv to ubuntu basebuild

Change-Id: I03692460a5b6eee6b8f131f0fbcc9c5957819ddd
diff --git a/jjb/defaults.yaml b/jjb/defaults.yaml
index b4babc4..65ade31 100644
--- a/jjb/defaults.yaml
+++ b/jjb/defaults.yaml
@@ -10,33 +10,56 @@
     # lf-infra-defaults
     jenkins-ssh-credential: 'onos-jenkins-ssh'
 
-    # build discards
-    build-days-to-keep: 30
-
     # Timeout in minutes
     #TODO deprecate this (should be project template specific)
     build-timeout: 360
-    #TODO this should be the most common executor
-    build-node: centos7-basebuild-1c-1g
+
+    # How long to keep builds and artifacts
+    build-days-to-keep: 60
+    artifact-num-to-keep: 30
+
+    # The most frequently used type of build node
+    # see other build node types under "Cloud > Amazon EC2" at
+    #  https://jenkins.onosproject.org/configure
+    build-node: ubuntu16.04-basebuild-1c-1g
 
     # default gerrit server definition
     #server-name: 'ONOS Project Gerrit'
     gerrit-server-name: 'ONOS Project Gerrit'
 
+    # User account with gerrit SSH credentials
+    gerrit-ssh-credential: 'onos-gerrit-ssh'
+
+    # Java glob of artifacts to archive
     archive-artifacts: ''
 
-    # Set default maven version used for everything
-    mvn-version: 'mvn33'
+    # by default, don't depend on other jobs
+    dependency-jobs: ''
 
-    # Default maven goals
-    mvn-goals: 'clean install'
-    mvn-opts: ''
+    # used to rename jobs if required
+    name-extension: ''
 
-    # Maven / Java
-    edgex-infra-mvn-opts: |
-        --show-version
-        --batch-mode
-        -Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn
-        -Djenkins
-        -Dmaven.repo.local=/tmp/r
-        -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r
+    # regexes for branch matching
+    all-branches-regexp: '.*'
+    supported-branches-regexp: '.*'
+
+    # regexes for file matching
+    all-files-regexp: '.*'
+
+    # strictness of version checks - if set to 1, then only allow SemVer versioning
+    semver-strict: 0
+
+    # Make test targets
+    # List of targets to run when testing a patchset, run with make
+    # defaults to just 'test', multiple targets should be space separated
+    make-test-targets: 'test'
+
+    # whether to "keep going" on multiple tests if one fails
+    # maps to the `-k` option passed to make in make-test.yaml
+    make-test-keep-going: false
+
+    # golang specific variables
+    # dest-gopath handles checking out patchsets and putting them into a GOPATH
+    # This portion of the path should be included: `$GOPATH/src/<dest-gopath>/<project>"
+    # If blank, golang related variables won't be set
+    dest-gopath: ''