| --- |
| # CORD GLOBAL jenkins job builder (JJB) defaults |
| |
| - defaults: |
| name: global |
| |
| # used to enable disable jobs if the job template contains |
| # disabled: '{disable-job}' |
| disable-job: false |
| |
| # lftools |
| lftools-version: '~=0.26.2' |
| |
| # git module config |
| # LF templates require these to be set in later versions of global-jjb for git module |
| choosing_strategy: 'default' |
| submodule-disable: false |
| submodule-recursive: false |
| submodule-timeout: 10 |
| |
| # name of the SSH key to use in most cases |
| jenkins-ssh-credential: 'cord-jenkins-ssh' |
| gerrit-ssh-credential: 'gerrit-jenkins-user' |
| |
| # by default, don't depend on other jobs |
| dependency-jobs: '' |
| |
| # SCM checkout locations within Jenkins Workspace |
| destination-dir: '' |
| basedir: '' |
| |
| # used to rename jobs as is required, if running same job more than once |
| # for a project |
| name-extension: '' |
| |
| # How long to keep builds and artifacts |
| build-days-to-keep: 60 |
| artifact-num-to-keep: 30 |
| |
| # How long to keep builds and artifacts for jobs that generate a lot of artifacts |
| big-build-days-to-keep: 10 |
| big-artifact-num-to-keep: 5 |
| |
| # list of artifacts to archive |
| archive-artifacts: '' |
| |
| # build timeout (minutes) |
| build-timeout: 20 |
| |
| # timed trigger defaults, crontab syntax |
| # H = random value hashed by name of job |
| every-hour: "H * * * *" |
| every-four-hours: "H */4 * * *" |
| every-six-hours: "H */6 * * *" |
| every-eight-hours: "H */8 * * *" |
| twice-a-day: "H */12 * * *" |
| once-a-day: "H 0 * * *" |
| |
| # The most frequently used type of Build Executor. Name is per the LF global-jjb. |
| # See build node types under "Cloud > Amazon EC2" at |
| # https://jenkins.opencord.org/configure |
| build-node: ubuntu18.04-basebuild-1c-1g |
| |
| # CORD Gerrit server definition, set in configuration |
| gerrit-server-name: 'CORD Gerrit' |
| |
| # URL for Gerrit server, for use with `repo` |
| gerrit-server-url: 'https://gerrit.opencord.org' |
| gerrit-server-ssh-url: 'ssh://jenkins@gerrit.opencord.org:29418' |
| |
| # name of the manifest git repos used with the `repo` cli tool |
| cord-repo-manifest: manifest.git |
| cordqa-manifest-repo: qa-manifest.git |
| go-manifest-repo: go-manifest.git |
| voltha-test-manifest-repo: voltha-test-manifest.git |
| |
| # default email address to send job failure messages |
| failure-email-address: 'cord-dev@opencord.org' |
| |
| # regexp for gerrit triggers |
| # list of supported branches, for branch-regexp |
| all-branches-regexp: '.*' |
| supported-branches-regexp: '^(master|cord-7.0|cord-6.1|seba-1.0|voltha-2.[0-9]+)$' |
| legacy-branches-regexp: '^(cord-5.0|cord-4.1|cord-4.0)$' |
| modern-branches-regexp: '^(master|cord-7.0|cord-6.1|cord-6.0|seba-1.0|voltha-2.3|voltha-2.4)$' |
| platform-branches-regexp: '^(master|cord-7.0|cord-6.1)$' |
| seba-branches-regexp: '^(master|cord-7.0|seba-1.0)$' |
| kind-voltha-regexp: '^(voltha-2.6|voltha-2.7)$' |
| |
| # matchs all project repos |
| all-projects-regexp: '.*' |
| |
| # strictness of version checks |
| semver-strict: 0 |
| |
| # matching repos that should be version tagged by the version-tag job |
| version-tag-projects-regexp: '^(?!aether)(xos.*|comac-helm-charts|automation-tools|cord-tester|chameleon|rcord|mcord|ecord|acordion|addressmanager|epc-service|exampleservice|fabric.*|globalxos|hippie-oss|hss_db|hypercache|internetemulator|kubernetes-service|monitoring|olt-service|onos-service|openstack|progran|sdn-controller|simpleexampleservice|templateservice|vEE|vEG|vBBU|venb|vHSS|vMME|vnaas|vPGWC|vPGWU|vrouter|vsg|vsg-hw|vSGW|vSM|vspgwc|vspgwu|vtn-service|vtr|.*-workflow-driver|ves-agent|voltha-bbsim|openolt|sadis-server|kafka-topic-exporter|pyvoltha||plyxproto|voltha-protos|alpine-grpc-base|cordctl|voltha-go|voltha-onos|device-management|cord-workflow.*|voltha-system-tests|openairinterface|omec-.*|bbsim|omci-sim|ponsim|pppoe.*|voltha-api-server|aaa|config|dhcpl2relay|igmp|igmpproxy|kafka-onos|mcast|olt|sadis|vtn|voltha-.*-adapter.*|voltha-lib-go|voltha-python-base|voltha-docker-tools|mn-stratum-siab|ofagent.*|bng|voltctl|openolt-scale-tester|nem-ondemand-proxy|multifabric|openolt-test|omci-lib-go|kind-voltha|mac-learning|goloxi|device-management-interface|bbsim-sadis-server|olttopology|opendm-agent|opendevice-manager|.*-robot)$' |
| |
| # List of all repos that contribute to the CORD guide |
| cord-guide-projects-regexp: '^(att-workflow-driver|cord-tester|cordctl|exampleservice|fabric|fabric-crossconnect|hippie-oss|kubernetes-service|olt-service|onos-service|openolt|openstack|rcord|simpleexampleservice|vrouter|vtn-service|xos|xos-gui|xos-tosca)$' |
| |
| # PyPI related publishing variables |
| # |
| # Pipe-separated list of directories relative to $WORKSPACE containing |
| # python modules to publish to PyPI. Default is current directory which is |
| # correct for simple modules |
| pypi-module-dirs: '.' |
| |
| # Which PyPI index to use. Corresponds to values in ~/.pypirc |
| # 'pypi' and 'testpypi' are current options. Default to testpypi, override |
| # in the job once testing is completed |
| pypi-index: 'testpypi' |
| |
| # Commands to run within the root of the checked out repo before running |
| # the `python setup.py sdist` to generate the distribution. |
| # Primarily used for autogenerating code before publishing a repo |
| pypi-prep-commands: '' |
| |
| # Name of the Docker repository (usually on DockerHub) that is the |
| # destination for images to be pushed to after building. |
| # Default is invalid - must be specified on every job. |
| docker-repo: 'default-and-invalid' |
| |
| # URL of the Docker registry (server running a docker registry) that is the |
| # destination for images to be pushed to after building. If set, must |
| # include trailing slash as a separator before the repo name. |
| # Default is blank, which maps to DockerHub. |
| docker-registry: '' |
| |
| # for matching files with file-include-regexp |
| all-files-regexp: '.*' |
| |
| # regex to allow docs-only patchsets w/version bumps to skip code-level |
| # tests. Have to also ignore the commit message on negative match, |
| # per: https://issues.jenkins-ci.org/browse/JENKINS-19891 |
| code-files-regexp: '^(?!docs|VERSION|\/COMMIT_MSG).*$' |
| api-test-files-regexp: '^(?!docs|VERSION|\/COMMIT_MSG|Jenkinsfile-*).*$' |
| |
| # siab helm-charts |
| siab-projects-regexp: '^(xos-core/.*|xos-profiles/seba-services/.*|xos-profiles/base-kubernetes/.*|xos-profiles/ponsim-pod/.*|workflows/att-workflow/.*|voltha/.*|onos/.*|mininet/.*|configs/seba-ponsim.yaml)$' |
| |
| # Optionally allow JUnit results to be empty when test framework is set up, |
| # but no tests exist. Default behavior is to fail when test results are |
| # empty. Also will not vote if no test output exists - good for repos where |
| # tests or test output generation may not yet exist. |
| junit-allow-empty-results: false |
| |
| # Allow xunit to not vote if no test files exist. Default is true because |
| # jUnit is the more commonly supported output format. |
| xunit-skip-if-no-test-files: true |
| |
| # Unit test targets |
| # List of targets to run when testing a patchset, run with make or similar |
| # defaults to just 'test', multiple targets should be space separated |
| unit-test-targets: 'test' |
| |
| # whether to "keep going" on multiple tests if one fails |
| # maps to the `-k` option passed to make in make-unit.yaml |
| unit-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: '' |
| |
| # github organization |
| # Specifies the github organization to operate on. Default is blank which |
| # may either be invalid, or specify that gerrit should be used instead. |
| # Currently used with: github-release |
| github-organization: '' |
| |
| # release targets |
| # List of targets run when creating a software release, run with make or |
| # similar. Default is "release", multiple targets may be space separated |
| # (when using make). |
| release-targets: 'release' |
| |
| # artifact glob |
| # Shell glob expression used to select which files are included as binaries |
| # in a release. |
| # Currently used with: github-release |
| artifact-glob: '' |
| |
| # JDK distribution to use |
| # Give the version of the JDK to use when building |
| # Parameter is used with `update-java-alternatives --set <jdk-distribution>` |
| jdk-distribution: 'java-11-amazon-corretto' |
| |
| # skip directories |
| # Used to skip directories in supported tests |
| skip-dirs: '' |
| |
| # maintainers |
| # Used to notify users in supported tests |
| maintainers: '' |
| |
| # karaf-home |
| # Use to grab the logs or onos-diagnostics |
| karaf-home: 'apache-karaf-4.2.14' |
| |
| # maven version |
| # Have to setup JAVA_HOME correctly if we upgrade to mvn36 |
| maven-version: mvn33 |