Merge "Migrate Global JJB docs to RST"
authorThanh Ha <thanh.ha@linuxfoundation.org>
Fri, 20 Oct 2017 20:43:32 +0000 (20:43 +0000)
committerGerrit Code Review <gerrit@linuxfoundation.org>
Fri, 20 Oct 2017 20:43:32 +0000 (20:43 +0000)
1  2 
jjb/lf-ci-jobs.yaml
jjb/lf-macros.yaml

diff --combined jjb/lf-ci-jobs.yaml
@@@ -2,9 -2,6 +2,6 @@@
  - job-group:
      name: '{project-name}-ci-jobs'
  
-     # This job group contains all the recommended jobs that should be deployed
-     # for any project ci.
      jjb-version: 1.6.2
  
      jobs:
@@@ -15,9 -12,6 +12,6 @@@
  - job-group:
      name: '{project-name}-github-ci-jobs'
  
-     # This job group contains all the recommended jobs that should be deployed
-     # for any project ci that is using github.
      jjb-version: 1.6.2
  
      jobs:
        - github-jjb-merge
        - github-jjb-verify
  
  - job-group:
      name: '{project-name}-packer-jobs'
  
-     # This job group contains all the recommended jobs that should be deployed
-     # for any project ci that is using packer.
 -    packer-version: 1.0.2
 +    packer-version: 1.1.1
  
      jobs:
        - gerrit-packer-merge
  - job-group:
      name: '{project-name}-github-packer-jobs'
  
-     # This job group contains all the recommended jobs that should be deployed
-     # for any project ci that is using packer.
 -    packer-version: 1.0.2
 +    packer-version: 1.1.1
  
      jobs:
        - github-packer-merge
  - lf_jjb_deploy_job: &lf_jjb_deploy_job
      name: lf-jjb-deploy-job
  
-     # Deploy jobs to jenkins-sandbox system via code review comment
-     #
-     # This job checks out the current code review patch and then runs a
-     # `jenkins-jobs update` to push a patch defined by the comment.
-     #
-     # Comment Trigger: jjb-deploy JOB_NAME
-     #
-     # JOB_NAME can include the * wildcard character to push multiple jobs
-     # matching the pattern. For example `jjb-deploy builder-jjb-*`` will push
-     # all builder-jjb-* jobs to the sandbox system.
-     #
-     # Required parameters:
-     #
-     #     :build-node: The node to run build on.
-     #     :jenkins-ssh-credential: Credential to use for SSH. (Generally should
-     #         be configured in defaults.yaml)
-     #
-     # Optional parameters:
-     #
-     #     :git-url: URL clone project from. (default: $GIT_URL/$PROJECT)
-     #     :gerrit_jjb_deploy_job_triggers: Override Gerrit Triggers.
      ######################
      # Default parameters #
      ######################
  - lf_jjb_merge: &lf_jjb_merge
      name: lf-jjb-merge
  
-     # JJB Merge job runs `jenkins-jobs update` to update production job configuration
-     #
-     # Required parameters:
-     #
-     #     :build-node: The node to run build on.
-     #     :jenkins-ssh-credential: Credential to use for SSH. (Generally should
-     #         be configured in defaults.yaml)
-     #     :mvn-settings: The name of settings file containing credentials for
-     #         the project.
-     #
-     # Optional parameters:
-     #
-     #     :branch: Git branch to fetch for the build. (default: master)
-     #     :build-days-to-keep: Days to keep build logs in Jenkins. (default: 7)
-     #     :build-timeout: Timeout in seconds before aborting build. (default: 10)
-     #     :git-url: URL clone project from. (default: $GIT_URL/$PROJECT)
-     #     :stream: Keyword that can be used to represent a release code-name.
-     #         Often the same as the branch. (default: master)
-     #     :submodule-recursive: Whether to checkout submodules recursively.
-     #         (default: true)
-     #
-     #     :gerrit_merge_triggers: Override Gerrit Triggers.
-     #     :gerrit_trigger_file_paths: Override file paths which can be used to
-     #         filter which file modifications will trigger a build.
-     #         (default defined by lf_jjb_common)
      ######################
      # Default parameters #
      ######################
  - lf_jjb_verify: &lf_jjb_verify
      name: lf-jjb-verify
  
-     # JJB Verify job runs `jenkins-jobs test` to validate JJB syntax
-     #
-     # Required parameters:
-     #
-     #     :build-node: The node to run build on.
-     #     :jenkins-ssh-credential: Credential to use for SSH. (Generally should
-     #         be configured in defaults.yaml)
-     #     :mvn-settings: The name of settings file containing credentials for
-     #         the project.
-     #
-     # Optional parameters:
-     #
-     #     :branch: Git branch to fetch for the build. (default: master)
-     #     :build-days-to-keep: Days to keep build logs in Jenkins. (default: 7)
-     #     :build-timeout: Timeout in seconds before aborting build. (default: 10)
-     #     :git-url: URL clone project from. (default: $GIT_URL/$PROJECT)
-     #     :stream: Keyword that can be used to represent a release code-name.
-     #         Often the same as the branch. (default: master)
-     #     :submodule-recursive: Whether to checkout submodules recursively.
-     #         (default: true)
-     #
-     #     :gerrit_verify_triggers: Override Gerrit Triggers.
-     #     :gerrit_trigger_file_paths: Override file paths which can be used to
-     #         filter which file modifications will trigger a build.
-     #         (default defined by lf_jjb_common)
      ######################
      # Default parameters #
      ######################
  - lf_packer_merge: &lf_packer_merge
      name: lf-packer-merge
  
-     # Packer Merge job runs `packer build` to build system images in the cloud.
-     #
-     # Required parameters:
-     #
-     #     :build-node: The node to run build on.
-     #     :jenkins-ssh-credential: Credential to use for SSH. (Generally should
-     #         be configured in defaults.yaml)
-     #     :mvn-settings: The name of settings file containing credentials for
-     #         the project.
-     #     :platforms: Platform or distribution to build. Typically json file
-     #         found in the packer/vars directory. (Example: centos)
-     #     :template: System template to build. Typically shell script found in
-     #         the packer/provision directory. (Example: java-builder)
-     #
-     # Optional parameters:
-     #
-     #     :branch: Git branch to fetch for the build. (default: master)
-     #     :build-days-to-keep: Days to keep build logs in Jenkins. (default: 7)
-     #     :build-timeout: Timeout in seconds before aborting build. (default: 10)
-     #     :git-url: URL clone project from. (default: $GIT_URL/$PROJECT)
-     #     :packer-cloud-settings: Name of settings file containing credentials
-     #         for the cloud that packer will build on. (default: packer-cloud-env)
-     #     :packer-version: Version of packer to install / use in build. (default: 1.0.2)
-     #     :stream: Keyword that can be used to represent a release code-name.
-     #         Often the same as the branch. (default: master)
-     #     :submodule-recursive: Whether to checkout submodules recursively.
-     #         (default: true)
-     #
-     #     :gerrit_verify_triggers: Override Gerrit Triggers.
      ######################
      # Default parameters #
      ######################
  - lf_packer_verify: &lf_packer_verify
      name: lf-packer-verify
  
-     # Packer Verify job runs `packer validate` to verify packer configuration.
-     #
-     # Required parameters:
-     #
-     #     :build-node: The node to run build on.
-     #     :jenkins-ssh-credential: Credential to use for SSH. (Generally should
-     #         be configured in defaults.yaml)
-     #     :mvn-settings: The name of settings file containing credentials for
-     #         the project.
-     #
-     # Optional parameters:
-     #
-     #     :branch: Git branch to fetch for the build. (default: master)
-     #     :build-days-to-keep: Days to keep build logs in Jenkins. (default: 7)
-     #     :build-timeout: Timeout in seconds before aborting build. (default: 10)
-     #     :git-url: URL clone project from. (default: $GIT_URL/$PROJECT)
-     #     :packer-cloud-settings: Name of settings file containing credentials
-     #         for the cloud that packer will build on. (default: packer-cloud-env)
-     #     :packer-version: Version of packer to install / use in build. (default: 1.0.2)
-     #     :stream: Keyword that can be used to represent a release code-name.
-     #         Often the same as the branch. (default: master)
-     #     :submodule-recursive: Whether to checkout submodules recursively.
-     #         (default: true)
-     #
-     #     :gerrit_verify_triggers: Override Gerrit Triggers.
-     #     :gerrit_trigger_file_paths: Override file paths which can be used to
-     #         filter which file modifications will trigger a build.
      ######################
      # Default parameters #
      ######################
diff --combined jjb/lf-macros.yaml
@@@ -5,13 -5,6 +5,6 @@@
  
  - builder:
      name: lf-fetch-dependent-patches
-     # Fetches all patches provided via comment trigger
-     #
-     # This macro will fetch all patches provided via comment trigger and will
-     # create a list of projects from those patches via environment variable
-     # called DEPENDENCY_BUILD_ORDER which can be used if necessary to build
-     # projects in the specified order. The order is determined by first patch
-     # instance for a project in the patch list.
      builders:
        - shell: !include-raw: ../shell/gerrit-fetch-dependencies.sh
        - inject:
@@@ -19,9 -12,6 +12,6 @@@
  
  - builder:
      name: lf-infra-create-netrc
-     # Macro to create a ~/.netrc file from a Maven settings.xml
-     # Parameters:
-     #     {server-id} The id of a server as defined in settings.xml
      builders:
        - inject:
            properties-content: 'SERVER_ID={server-id}'
  
  - builder:
      name: lf-infra-docker-login
-     # Login into a custom hosted docker registry and / or docker.io
-     #
-     # The Jenkins system should have the following global variables defined
-     #
-     # DOCKER_REGISTRY : Optional
-     #                   The DNS address of the registry (IP or FQDN)
-     #                   ex: nexus3.example.com
-     #
-     # REGISTRY_PORTS  : Required if DOCKER_REGISTRY is set
-     #                   Space separated listing of the registry ports to login
-     #                   to
-     #                   ex: 10001 10002 10003 10004
-     #
-     # DOCKERHUB_EMAIL : Optional
-     #                   If this variable is set then an attempt to login to
-     #                   DockerHub (docker.io) will be also made. It should be
-     #                   set to the email address for the credentials that will
-     #                   get looked up. Only _one_ credential will ever be found
-     #                   in the maven settings file for DockerHub
      builders:
        - lf-provide-maven-settings:
            global-settings-file: '{global-settings-file}'
  
  - builder:
      name: lf-infra-gpg-verify-git-signature
-     # Verify gpg signature of the latest commit message in $WORKSPACE
-     #
-     # This command assumes that $WORKSPACE is a git repo.
-     #
      # TODO: Verify signature after downloading users public key from a locally
      # created repository instead of the public keymesh. This requires a process
      # in place to get ODL developers public keys into a local repository without
  
  - builder:
      name: lf-infra-deploy-maven-file
-     # Deploy files to a repository.
-     #
-     # The builder requires passing the following parameters
-     # REPO_ID:           Repository ID
-     # GROUP_ID:          Group ID of the repository
-     # UPLOAD_FILES_PATH: Path to directory containing one or more files
      builders:
        - lf-maven-install:
            mvn-version: '{mvn-version}'
  
  - builder:
      name: lf-maven-install
-     # call maven-target builder with a goal of --version to force Jenkins to
-     # install the needed maven version
      builders:
        # Create a $HOME/.wgetrc to make the Maven download quiet.
        - shell: 'echo "quiet=on" > "$HOME/.wgetrc"'
  
  - builder:
      name: lf-provide-maven-settings
-     # Push a global settings and user settings maven files
      builders:
        - config-file-provider:
            files:
  
  - builder:
      name: lf-pip-install
-     # Call pip install to install packages into a virtualenv
-     # The first package listed in PIP_PACKAGES is used as the virtualenv name.
      builders:
        - inject:
            properties-content: PIP_PACKAGES={pip-packages}
  
  - builder:
      name: lf-provide-maven-settings-cleanup
-     # Clear maven settings files after we are done using them
      builders:
        - shell: |
            #!/bin/bash
  - parameter:
      name: lf-infra-maven-parameters
      parameters:
 +      - string:
 +          name: M2_HOME
 +          # Sets an env var for shell scripts to be able to call the dynamically
 +          # installed maven without having to calculate the M2_HOME themselves.
 +          default: '/w/tools/hudson.tasks.Maven_MavenInstallation/{mvn-version}'
 +          description: 'Maven selector to be used by shell scripts'
        - string:
            name: MAVEN_OPTS
            default: '{mvn-opts}'
  
  - parameter:
      name: lf-infra-node-parameters
-     # Parameters for NodeJS
      parameters:
        - string:
            name: NODE_DIR
  
  - parameter:
      name: lf-infra-tox-parameters
-     # Useful parameters when working with TOX
-     # https://tox.readthedocs.io/
      parameters:
        - string:
            name: TOX_DIR