aboutsummaryrefslogtreecommitdiffstats
path: root/Makefile
AgeCommit message (Collapse)AuthorFilesLines
2019-12-04build: fix make test with distributed srcDave Wallace1-19/+5
This patch addresses the functionality that is missing for distributed make test source files. In addition it extends the concept of colocating test source code with functional source code (eg. src/vcl/test). It also cleans up deficiencies in the make test makefiles. NOTE: Due to the way sphinx document tools work, all test, all of the make test python code is gathered using soft links into the directory: .../build-root/build-test/src Change summary: - Remove 'make test' help details from main makefile help output to reduce clutter and redundant help output - Move all generated build output to .../build-root/build-test - Move test_vcl.py as first usecase for distributed core feature make test code - Add test-wipe-all target and fix wipe targets to remove all generated files - Fix 'make test-doc' to generate module documentation for all source files - Remove unused targets in test/doc/Makefile - Fix 'make test-shell' - Fix test/ext Makefile to not generate bogus output Type: fix Fixes: a43c93f8554ad7418e31be3791b3fb71232f60ac Change-Id: Icc2ddb81d474081c3ede4548ecd7a0624651f62d Signed-off-by: Dave Wallace <dwallacelf@gmail.com>
2019-11-21build: Update missing packagePaul Vinciguerra1-0/+1
CI jobs are being marked as unstable. 18:02:47 ---> python-tools-install.sh 18:02:47 Listing pip packages 18:02:48 DEPRECATION: The default format will switch to columns in the future. You can use --format=(legacy|columns) (or define a format=(legacy|columns) in your pip.conf under the [list] section) to disable this warning. 18:02:48 Generating Requirements File 18:02:48 The virtual environment was not created successfully because ensurepip is not 18:02:48 available. On Debian/Ubuntu systems, you need to install the python3-venv 18:02:48 package using the following command. 18:02:48 18:02:48 apt-get install python3-venv 18:02:48 18:02:48 You may need to use sudo with that command. After installing the python3-venv 18:02:48 package, recreate your virtual environment. Type: fix Signed-off-by: Paul Vinciguerra <pvinci@vinciconsulting.com> Change-Id: Ifb9e8547bce2310f1ce6d9b70f11ceef6f0a8576
2019-11-15build: fix docs/doxygen targetsDave Wallace1-3/+4
- Add missing dependencies - Fix clean/wipe to remove generated files - Fix doxygen src variable Type: fix Signed-off-by: Dave Wallace <dwallacelf@gmail.com> Change-Id: If6b2797e8af3f2e735759fab5841a0b4576ed7cc
2019-11-15build: make checkstyle-* targets and cleanupDave Wallace1-17/+104
- Add new make targets: checkstyle-commit checkstyle-test (alias test-checkstyle) checkstyle-all test-wipe-papi (papi-wipe deprecated) retest-all retest-all-debug install-deps (alias install-dep) install-ext-dep (alias install-ext-deps) - Fix .PHONY dependencies - Cleanup redundant target commands Type: refactor Change-Id: I08b0ef459d421a09fb929aee5cd6baec329931b7 Signed-off-by: Dave Wallace <dwallacelf@gmail.com>
2019-11-13build: Revert "build: fix make checkstyle"Dave Wallace1-1/+1
This reverts commit 069e2a734cf75f4d151efe49d1efc51bc82cedb2. Reason for revert: The vpp-verify-checkstyle-master build executor now runs 'make install-dep' Type: fix Signed-off-by: Dave Wallace <dwallacelf@gmail.com> Change-Id: I2ab6bee642b7ed631d2aa06203c76c3d0ca01c9e
2019-11-13build: fix make checkstyleFlorin Coras1-1/+1
Type: fix Comment out yamllint for now. Change-Id: Id40a5aef3fa15b2c6e9d7fe6fd6201923593b4cd Signed-off-by: Florin Coras <fcoras@cisco.com>
2019-11-07build: Fix 3rd party CI systems.Paul Vinciguerra1-1/+4
Commit https://gerrit.fd.io/r/#/c/15525/ breaks 3rd party CI jobs. This suggests an alternative solution that supports both use cases. Type: feature Change-Id: I966210cf4594651735e6a8bffa32dd52b4539a13 Signed-off-by: Paul Vinciguerra <pvinci@vinciconsulting.com>
2019-11-06build: add yaml file linting to make checkstylePaul Vinciguerra1-1/+3
Type: feature fts and trex rely on yaml config files. Verify that they are valid, so comitters can catch errors early. Change-Id: Ide0bb276659119c59bdbbc8b8155e37562a648b8 Signed-off-by: Paul Vinciguerra <pvinci@vinciconsulting.com>
2019-11-05docs: fix issues with src/scripts/fts.pyPaul Vinciguerra1-6/+17
- packaging issue - yaml deprecation - yaml formatting Type: fix Change-Id: Ia8808cbc83271a3067164f2db2418f071b35607a Signed-off-by: Paul Vinciguerra <pvinci@vinciconsulting.com>
2019-10-09build: clean up make help outputDave Wallace1-49/+49
This change is designed to help the uninformed find the right way to run extended tests by using the test-all[-debug] targets. 'make test EXTENDED_TESTS=y' fails to build as it has a dependency on 'vom-install' which is conveniently included in test-all[-debug]. - clarify test-all[-debug] description and make test-help description - Also align indentation of make help output Type: style Signed-off-by: Dave Wallace <dwallacelf@gmail.com> Change-Id: Ief54cc8a5af68c052aacb0d660237c5eb63451b5
2019-09-24build: pass 'no-pci' to autgenerated configDamjan Marion1-0/+1
Avoid aggresive hiijack of pci interfaces when 'make run' and 'make run-release' are used and there is no startup.conf present. Type: feature Change-Id: Id653b5f9ac3d2935a40299885e616960e75d4a95 Signed-off-by: Damjan Marion <damarion@cisco.com>
2019-09-18vppapigen: fix tests and run on verifyPaul Vinciguerra1-0/+2
- changes vppapigen to only process an import once. Type: fix Change-Id: Ifcbcfcc69fdfb80d63195a17701762d0c239d7b4 Signed-off-by: Paul Vinciguerra <pvinci@vinciconsulting.com> Signed-off-by: Ole Troan <ot@cisco.com>
2019-09-17build: fix rpm python 3 dependsEd Kern1-1/+1
Type: fix Change-Id: Ie6eaccb27779bb14c0a23764a16cd22f0a72e379 Signed-off-by: Ed Kern <ejk@cisco.com>
2019-07-28build: add option to wipe/rebuild papiPaul Vinciguerra1-0/+3
Previously, the only option was to wipe/rebuild all the test dependencies. Type: make Change-Id: Ia95d6e800f67bef033dcf614dbfa249c3e43159d Signed-off-by: Paul Vinciguerra <pvinci@vinciconsulting.com>
2019-07-17build: add targets for json api filesPaul Vinciguerra1-0/+8
Type: make Ticket: VPP-1715 Change-Id: I78497d679d9e793b47a06a0c5cb3b12d86b08489 Signed-off-by: Paul Vinciguerra <pvinci@vinciconsulting.com>
2019-07-16build: separate pkg builds from verify targetDave Wallace1-1/+3
- This patch is required to eliminate the use of .../vpp/extras/vagrant/build.sh by other projects in order to build VPP packages for verification/integration testing. Type: fix Change-Id: I63e08b27b715c0d40b44e2ce7b3e9a7ebf4f514b Signed-off-by: Dave Wallace <dwallacelf@gmail.com>
2019-07-12vom: build VOM package when CI buildsYohanPipereau1-0/+4
Commit 752f5b4302317e2ccfbd1903d31d3e857d719c4d added vom-pkg-{rpm,deb} instructions. This enables CI to package VOM and push it to packagecloud. Change-Id: I647b4ac6ae19d2414529697082cf5a81e724dfe0 Type: make Signed-off-by: YohanPipereau <ypiperea@cisco.com>
2019-06-27tests: pin python dependenciesAloys Augustin1-0/+4
This commit ensures that the tests always run with the exact same version for all the Python dependencies. It uses pip-tools to achieve that. Our top-level dependencies are specified in the requirements.txt file. From this file, pip-tools generates the requirements-{2,3}.txt file, which pins all the versions of all the recursive dependencies, and is used to install the packages in the test virtualenv. To change or add a top-level dependency, update requirements.txt and run make test as usual with python2 and python3. The requirements-{2,3}.txt file will be updated and you can verify that nothing breaks. Then add all requirements* files in your commit. To refresh the python packages (i.e. get new versions of the recursive dependencies, or of the dependencies that are not pinned in requirements.txt), just run: PYTHON=python2.7 make test-refresh-deps PYTHON=python3.6 make test-refresh-deps and this will update the requirements-{2,3}.txt files. Ideally we should run this after each release. Type: make Change-Id: Ic533de3d06ec4019ff38f5231208da6f1025bfc7 Signed-off-by: Aloys Augustin <aloaugus@cisco.com>
2019-06-27build: remove japi-install from MakefileNeale Ranns1-1/+1
Type: fix Change-Id: I63245280a0939d07f495b11005596ffdfe1d85c8 Signed-off-by: Neale Ranns <nranns@cisco.com>
2019-05-31tools: FEATURE.yaml meta-data infrastructureOle Troan1-3/+11
Add tooling for feature metadata configuration files. The main tool is in src/scripts/fts.py make checkfeaturelist to validate against schema. make featurelist to dump all feature lists to stdout. Example feature definition: name: IP in IP tunnelling maintainer: Ole Troan <ot@cisco.com> features: - IPv4/IPv6 over IPv4/IPv6 encapsulation: - Fragmentation and Reassembly - Configurable MTU - Inner to outer Traffic Class / TOS copy - Configurable Traffic Class / TOS - ICMPv4 / ICMPv6 proxying - 6RD (RFC5969): - Border Relay description: "Implements IP{v4,v6} over IP{v4,v6} tunnelling as described in RFC2473. This module also implement the border relay of 6RD (RFC5969)." state: production properties: [API, CLI, STATS, MULTITHREAD] missing: - Tunnel PMTUD - Tracking of FIB state for tunnel state - IPv6 extension headers (Tunnel encapsulation limit option) JSON schema is embedded in fts.py Example markdown: https://github.com/otroan/scratch/blob/master/features.md Change-Id: I903b4ee6b316a9378c259e86dc937092e5d4b7da Type: make Signed-off-by: Ole Troan <ot@cisco.com>
2019-05-29make: git commit templateOle Troan1-0/+1
Add a commit template for tagging of commits with a type. Later tooling can then process the commit log and generate reports of new features etc. Usage: The template is automatically added to the current repository by make install-dep. (git config commit.template .git_commit_template.txt) Type: make Change-Id: I485d61f9852b7390e4f0539d737ab210f7b0723a Signed-off-by: Ole Troan <ot@cisco.com>
2019-05-09add mactime plugin unit / code coverage testsDave Barach1-0/+4
The unit and code coverage tests are boring. The rest of the patch involves test and packet-generator infra cleanups. Teach the "make test-xxx" family of targets to set the api test plugin path correctly, to make "binary-api <api-message-name> <args>" debug CLI commands work correctly in the "make test" environment. Unfortunately involves both the top-level and test Makefiles. Add a minor pg cli feature, a CLI to manually set s->sw_if_index[VLIB_TX]. Consider the case where one configures an interface with both a device-input and an output feature. To test the output feature using the pg, it's necessary to inject packets into the interface output node with both b->sw_if_index[VLIB_TX] and b->sw_if_index[VLIB_RX] set correctly. For example: packet-generator new { name tx limit 15 size 128-128 interface local0 # rx: device input feature not configured on local0 tx-interface loop0 # tx: output node requires b->sw_if_index[VLIB_TX] node loop0-output data { hex 0x01005e7ffffa000dead0000008000102030405060708090a0b0c0d0e0f0102030405 } } Fix a longstanding bug in the packet generator stream setup. Remove kludges which set b->sw_if_index[VLIB_TX] to ~0 [in multiple places] instead of using the stream value s->sw_if_index[VLIB_TX], and setting THAT datum correctly. Change-Id: I1097a18e8db73661ded6b822c1d718f7e5cf36ed Signed-off-by: Dave Barach <dave@barachs.net>
2019-05-08Fix $(SUSE_NAME) in Makefile.Paul Vinciguerra1-3/+3
SUSE_NAME is now lowercase with dashes in place of spaces. grep '^NAME=' /etc/os-release | cut -f2- -d= | sed -e 's/\"//g' | sed -e 's/ /-/' | awk '{print tolower($0)}' opensuse-leap Change-Id: Ie547c2e5684f955529a010d14b9317bbbde4caf6 Signed-off-by: Paul Vinciguerra <pvinci@vinciconsulting.com>
2019-04-19build: fix fedora dependenciesBenoît Ganne1-2/+2
Update various python dependencies package names. Change-Id: I0f64f988f361adf4705fceaf4f2c147138024b1e Signed-off-by: Benoît Ganne <bganne@cisco.com>
2019-04-05Fix failing centos jobs due to yum replacing python34 with python36.Paul Vinciguerra1-2/+2
vppapigen is failing because the ply library is installed under python34. 09:04:49 Dependencies Resolved 09:04:49 09:04:49 ================================================================================ 09:04:49 Package Arch Version Repository Size 09:04:49 ================================================================================ 09:04:49 Installing: 09:04:49 python36 x86_64 3.6.6-5.el7 epel 66 k 09:04:49 replacing python34.x86_64 3.4.9-2.el7 09:04:49 python36-libs x86_64 3.6.6-5.el7 epel 8.5 M 09:04:49 replacing python34-libs.x86_64 3.4.9-2.el7 ---- 09:07:27 cd /w/workspace/vpp-verify-master-centos7/build-root/build-vpp-native/vpp/vlibmemory && mkdir -p /w/workspace/vpp-verify-master-centos7/build-root/build-vpp-native/vpp/vlibmemory && /w/workspace/vpp-verify-master-centos7/src/tools/vppapigen/vppapigen --includedir /w/workspace/vpp-verify-master-centos7/src --input /w/workspace/vpp-verify-master-centos7/src/vlibmemory/memclnt.api JSON --output /w/workspace/vpp-verify-master-centos7/build-root/build-vpp-native/vpp/vlibmemory/memclnt.api.json 09:07:27 Traceback (most recent call last): 09:07:27 File "/w/workspace/vpp-verify-master-centos7/src/tools/vppapigen/vppapigen", line 4, in <module> 09:07:27 import ply.lex as lex 09:07:27 ModuleNotFoundError: No module named 'ply' Change-Id: Ica3b408991d26262418576cffc848fb2a8cb0224 Signed-off-by: Paul Vinciguerra <pvinci@vinciconsulting.com>
2019-03-26Add missing OpenSUSE Leap 15.0 build depsBenoît Ganne1-1/+1
Fresh OpenSUSE Leap 15.0 containers are missing build dependencies. Change-Id: I9b62f36c658862d8f32db5547d2176e6f56df4ea Signed-off-by: Benoît Ganne <bganne@cisco.com>
2019-03-22add a "make test-gcov" targetDave Barach1-0/+4
add a line to "make help" Change-Id: I94c9e54832e959f35ee28adc1b37091c1473f687 Signed-off-by: Dave Barach <dave@barachs.net>
2019-03-15PAPI: Build python3 package for vpp_papiOle Troan1-1/+2
Change-Id: Iae53fe88a69b53b75a7439d159ae0f9d18545908 Signed-off-by: Ole Troan <ot@cisco.com>
2019-02-27Fix centos build and build documentationjdenisco1-1/+1
Change-Id: I326204d26b613254e39c6a0ffe9f9491981ba3c3 Signed-off-by: jdenisco <jdenisco@cisco.com>
2019-02-22Makefile: fix missing help instructionSteven Luong1-0/+2
make pkg-deb-debug and make vom-pkg-deb-debug were missing in the help instruction Change-Id: Ic49a7c29b3394ee9fc259bd40ecf0611470125c6 Signed-off-by: Steven Luong <sluong@cisco.com>
2019-02-20docs: use python3 for make docs.Paul Vinciguerra1-0/+1
Change-Id: If62b5ef563523b400fb5160d0343210407905094 Signed-off-by: Paul Vinciguerra <pvinci@vinciconsulting.com>
2019-02-19Makefile: correct opensuse 15.0 dep namingEd Kern1-2/+2
This covers both naming option for opensuse leap15 dep package naming Change-Id: I2ade004e44e75c08afde0f3af42b33cd97ce0ebc Signed-off-by: Ed Kern <ejk@cisco.com>
2019-02-19VPP-1504: Remove JVPPMichal Cmarada1-11/+4
As part of JVPP migration this removes JVPP completely from VPP. Change-Id: I6b74e7961aa474ae471e63fe43a624cd9fc3659b Signed-off-by: Michal Cmarada <mcmarada@cisco.com>
2019-02-14make test: make test-ext working againKlement Sekera1-0/+1
Change-Id: Ib30d0c6b8794488119f258f7617fce494aa28f1f Signed-off-by: Klement Sekera <ksekera@cisco.com>
2019-02-14deb-pkg: Add libvom package supportMohsin Kazmi1-0/+9
Change-Id: I370a5198ea5b768d8c505679662a19797bd2740d Signed-off-by: Mohsin Kazmi <sykazmi@cisco.com>
2019-02-06Fix borken install-dep on RHELYichen Wang1-0/+3
Change-Id: I247cca88e33f782e1acb72eb2c0e1515faf2f030 Signed-off-by: Yichen Wang <yicwang@cisco.com>
2019-02-02Python3: Move vppapigen to python3.Paul Vinciguerra1-7/+7
Change-Id: I26846d0c12211a29ccfca7c269b9094f6fdbd95c Signed-off-by: Paul Vinciguerra <pvinci@vinciconsulting.com>
2019-01-20Rework of debian packagingDamjan Marion1-3/+4
Change-Id: Ifede85d3af36f3ee6c6f8f92dcf5db0ed8f1bfeb Signed-off-by: Damjan Marion <damarion@cisco.com> Signed-off-by: Dave Barach <dave@barachs.net>
2019-01-17cmake3 exsit in epel(centos), install epel-releasedrenfong.wang1-1/+1
Change-Id: Ide06350dfb083ec25a52f6ef79f106abd80ccdbc Signed-off-by: drenfong.wang <drenfong.wang@intel.com>
2018-12-27install-dep: force osleap boost dep installFlorin Coras1-4/+4
Change-Id: I4a053f41eef138fc0e6db7e2650860c0ac999552 Signed-off-by: Florin Coras <fcoras@cisco.com> Signed-off-by: Paul Vinciguerra <pvinci@vinciconsulting.com>
2018-12-19vlib: support Hyper-v/Azure VMBusStephen Hemminger1-2/+3
This patch adds support for VMBus to the VPP infrastructure. Since the only device that matters is the netvsc Poll Mode Driver in DPDK, the infrastructure is much simpler than PCI. Change-Id: Ie96c897ad9c426716c2398e4528688ce2217419b Signed-off-by: Stephen Hemminger <stephen@networkplumber.org>
2018-12-18make wipe: Clean up *.api.json files.Paul Vinciguerra1-0/+1
Change-Id: I0cb1a1b5bf9003d7b5231452e85d535c9cb2b6ec Signed-off-by: Paul Vinciguerra <pvinci@vinciconsulting.com>
2018-12-18Build changes required for Fedora and CentOSThomas F Herbert1-11/+12
VPP-1511 cmake is the dep for Fedora but cmake3 is for CentOS 7. Centos: explicitly install epel-release on Centos. Epel requirement is now explicit for cmake3, and ninja-build. Remove references to Fedora 25 which is EOL. Change-Id: I1548ddf2e5421097ac0ddc2d99abce7582d0d593 Signed-off-by: Thomas F Herbert <therbert@redhat.com>
2018-11-29make test: create virtualenv under /test/Klement Sekera1-8/+7
instead of using build-root, use /test/venv directory for virtualenv similarly, don't pollute build-root with test-built binaries Change-Id: I1e63c04037eaee718b27b34ef16c9eb0252afa53 Signed-off-by: Klement Sekera <ksekera@cisco.com>
2018-11-23make test: remove test-ext, fix test*-all targetsKlement Sekera1-6/+2
build extended binaries, vom & friends when test*-all targets are run, remove unneeded test-ext target (which is semantically same as test-debug-all) Change-Id: Id710e061fdc93e286a4ed91be6a0cdcf75a2dafd Signed-off-by: Klement Sekera <ksekera@cisco.com>
2018-10-31Makefile: support both RHEL and CentOS in install-depYichen Wang1-2/+6
Change-Id: I31fd8700bfac462944b7621947edd3710fd247b9 Signed-off-by: Yichen Wang <yicwang@cisco.com>
2018-10-26Trivial: Fix Makefile typoPaul Vinciguerra1-1/+1
Change-Id: Ia108b0359cb2dc4ba2e773117ee7134274a98056 Signed-off-by: Paul Vinciguerra <pvinci@vinciconsulting.com>
2018-10-25Run 'make test' verify job on ubuntu 18.04 instead of 16.04Damjan Marion1-1/+1
Change-Id: If570bb8cc19b2eab5877a20c963e27e410ee7560 Signed-off-by: Damjan Marion <damarion@cisco.com>
2018-09-24Add the sphinx docs build optionsjdenisco1-0/+19
Change-Id: If7ac5b41ca4ac602a100b616b37d07f658fd6a90 Signed-off-by: jdenisco <jdenisco@cisco.com>
2018-09-20rename vpp-dpdk-dev to vpp-ext-depsDamjan Marion1-10/+14
We need to have new tenants in the development package. This is first of series of patches which will allow us to have multiple external libs and tools packaged for developer's convenience. Change-Id: I884bd75fba96005bbf8cea92774682b2228e0e22 Signed-off-by: Damjan Marion <damarion@cisco.com>