summaryrefslogtreecommitdiffstats
path: root/config
AgeCommit message (Collapse)AuthorFilesLines
2019-06-24[fuel] net_macros: Allow interface proto overrideAlexandru Avadanii1-4/+4
For non-Debian systems, proto 'manual' is not a valid choice and we should be able to override it. e.g.: For CentOS, proto 'none' should be used instead. Change-Id: Id1b6d9d51de17ede0c1e2fdc7f845d74b2a4ab9d Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
2019-02-25Add port to remote management parametersFatih Degirmenci1-0/+2
This change proposes addition of a new optional parameter to PDF schema to add port to remote management parameters so one can use none-default ports if needed. Apart from the PODs that use none-default ports for remote managamene, n example to this use case is the virtual deployments that use virtualbmc for simulating BMC which requires calculation of ports on the fly which could be messy. By adding the port into PDF, it is straightforward to configure the tools to use none-default ports if needed. Change-Id: I4ce41c3977470576296a13dc668dec246fc29314 Signed-off-by: Fatih Degirmenci <fdegir@gmail.com>
2019-02-25Add privilege_level to remote management parametersFatih Degirmenci1-0/+2
This change proposes addition of a new optional parameter to PDF schema to make setting different privilege level for remote access possible via PDF. In certain cases, the users of a specific POD may not be granted ADMIN privileges to use remote management capabilities and instead they may be granted lower privileges such as OPERATOR. Even though this type of situations could be hanled in provisioning frameworks and can perhaps be pushed into IDF, it is more appropriate to put the privilege level setting into PDF next to other remote management parameters. Change-Id: I8486c0f8867d8dd54d1731876e0ffef33fb36a96 Signed-off-by: Fatih Degirmenci <fdegir@gmail.com>
2019-02-18[fuel] Skip baremetal cmp cfg if scenario lacks itAlexandru Avadanii1-1/+2
Some upcoming scenarios do not define any compute nodes, so skip adding the nodes to MaaS machine list too. Change-Id: I895d8c7cb54783a57667d20f672b8ff870105cfc Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
2019-02-11[fuel] Allow PODs with fewer nodesjenkins1-0/+2
Our hardcoded index for the compute role interferes with PODs having less than the hardcoded expected node count. Change-Id: Icb8915c257d2e3305793397a51b00f96ed260c5f Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
2018-12-29[IDF] fuel, dpdk: Switch to 1G pgsz on ThunderXAlexandru Avadanii1-5/+9
VPP requires 1G pagesizes on ThunderX nodes, so switch from 2M to 1G when DPDK is used. While at it, extend the Fuel j2 macro to accomodate different naming of virtual function network devices based on the driver used (vfio). Change-Id: Ic29ce04867955282b6f988ed69a44b316ffdc994 Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
2018-12-27[PDF] Fix link speed for virtual PODsAlexandru Avadanii1-0/+8
ethtool reports the link speed as 'unknown' for said devices. The only (current) consumer of this information is Fuel's new VPP support, which detects all these interfaces as 'Gigabit', so align our definitions in order to be able to dynamically construct the VPP interface names based on PDF (link speed) + IDF (PCI bus). While at it, add a new j2 macro helper to be used by Fuel installer. Change-Id: Id6a52bbb7b86bbe3db2a81bb91ac378c6876ffc0 Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
2018-12-11[fuel] IDF: Add idf.fuel.network.interface_mtuAlexandru Avadanii2-0/+3
Allow configuring cluster-level jumbo frames via IDF. All virtual PODs default to using jumbo frames, while baremetal PODs will keep using 1500 until we confirm all switches are properly configured. While at it, update net_macros to configure MTU for VLAN interfaces too. JIRA: FUEL-336 Change-Id: Id6c7ec9377b15d53e69c8cbb16fa469b52ab7e3a Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
2018-10-29[fuel] IA: Rename power_password to power_passAlexandru Avadanii1-1/+1
Align with MaaS expected variable naming after upstream change [1]. [1] https://github.com/salt-formulas/salt-formula-maas/commit/6096333 Change-Id: I0d4af1af1c54b40bf9a84ccf5f16847b9d39d456 Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
2018-10-12Provide opendaylight server with a public ipStamatis Katsaounis1-1/+2
JIRA: FUEL-393 This patch reserves a public ip for opendaylight. This ip is needed for running the test-case 3 of sdnvpn test-cases, which run as part of the bgpvpn scenario. Change-Id: I57288bbb42f4c75af19f3807f8f15b44482c066c Signed-off-by: Stamatis Katsaounis <mokats@intracom-telecom.com>
2018-09-28[fuel] IA: Reserve IP addresses for 3 ODL nodesAlexandru Avadanii1-1/+6
Change-Id: Ifcfd806d568c3cda375166b9c63381f66ee375c4 Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
2018-08-31[fuel] IA: sync maas:machines changesAlexandru Avadanii1-11/+21
Change-Id: Ib4859e4ada3d72e7e848114620ff5405c26b3126 Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
2018-08-21Fix trailing spaces issue when generates yml filesJulien2-5/+5
There are some missing coniguration in jinja2 template, which will cause the trailing spaces issues. Currently just add some comments in the end. Change-Id: I4fe250cda1192d7c6e7cead0251ac5e7978cd310 Signed-off-by: Julien <zhang.jun3g@zte.com.cn>
2018-08-21Fail to set the value in multiple linesJulien1-2/+2
refer to the log of Jenkins: https://build.opnfv.org/ci/view/pharos/job/ validate-pdf-jinja2-templates-master/326/console /home/jenkins-ci/opnfv/slave_root/workspace/ validate-pdf-jinja2-templates-master/config/utils/check-jinja2.sh: line 54: -i ./config/installers/apex: No such file or directory [GENERATE] [OK] [YAMLLINT] [OK] yamllint -s ./config/installers/apex/pod_config.yaml Change-Id: I13c220e7fba5355124ae2b41e7399140c5d92523 Signed-off-by: Julien <zhang.jun3g@zte.com.cn>
2018-08-13Complete osa and add kubespray to the idf schemaManuel Buil1-1/+21
Modify idf of lf pod4 to aoid -1 from Jenkins Change-Id: I4fbac6ed2859e79aeef61b070498833b182f2b5d Signed-off-by: Manuel Buil <mbuil@suse.com>
2018-08-08[idf.fuel] Add jumpserver.trunks for mgmtAlexandru Avadanii1-0/+7
Extend IDF schema for Fuel installer section to allow a new param, useful when jumpserver networks should be trunked for infra VMs. JIRA: FUEL-338 Change-Id: Ifda18ea017c069e29d25d48aea62a6b6b37e91b5 Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
2018-06-04Merge "[fuel] IA: Add PXE/admin static IPs"Alexandru Avadanii4-183/+244
2018-06-04[fuel] IA: Add PXE/admin static IPsAlexandru Avadanii4-183/+244
- check-jinja2.sh: Add template dir to include dirs; - add param definitions for PXE/admin static IP for each machine, moving MaaS DHCP range start after the new addresses, similar to public network; - drop 'opnfv_' prefix for compute parameters; - drop 'opnfv_jump_bridge_*' variables (deprecated); - drop 'opnfv_infra_maas_*' variables, handled directly in Fuel now; - add 'opnfv_net_*_mask' for all used networks in idf.net_config; - move all internal j2 variables to net_map.j2, so we can reuse them without pod_config; - refactor maas variables into a full `maas.region.machines` section when baremetal nodes are defined; - drop 'openstack_compute_*' reclass params in favor of direct expansion in reclass.storage definitions via j2 in Fuel@OPNFV; - add `net_macros.j2` for reclass linux.network reclass generation; - move all non-sensitive reclass parameters to Fuel@OPNFV; Change-Id: I495c6072d845b273b6607d45dc5152ec4ee767cf Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
2018-05-31[idf.fuel] Add NTP serversAlexandru Avadanii1-0/+4
Change-Id: Ib840995b085ec9d8a585d5cf2e2a84e5801875b6 Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
2018-04-30[PDF] Preparations for vPDF supportAlexandru Avadanii5-19/+44
- extend check-{jinja2,schema}.sh to scan vPDFs and construct proper IDF path for vPDFs; - add support for '/' in PDF fields, by default filtered by j2 template rendering; SPEC changes: - extend remote_management 'type' enum with 'libvirt'; SCHEMA changes: - add new enum value 'libvirt' according to SPEC update; - add separate handling of 'remote_management' for baremetal/virtual; - remote_management 'versions' and 'mac_address' are mandatory for all but 'libvirt' (used to be mandatory for all); Change-Id: Ib3f711cae807c3ab27920391402ba74844f155c3 Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
2018-04-18[fuel] Parameterize tenant VLAN rangesAlexandru Avadanii1-1/+1
- IDF: convert all tenant VLANs to ranges; - IA: convert 'M-N' to 'M:N' for `opnfv_net_tenant_vlan`; Change-Id: Ic9211235281c81ba082d10806651c35116ba4c35 Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
2018-04-12JOID PDF-IDF support for intel-pod18agardner1-126/+124
More info in gerrit comments. Remove joid from all other idfs other than intel/pod18 add installer: ['apex', 'compass4nfv', 'daisy', 'fuel'] where missing Change-Id: I2afc415599070e210736c5fc304f7cb150f05029 Signed-off-by: agardner <agardner@linuxfoundation.org>
2018-03-07[IDF, fuel] Add idf.net_config.*.ip-range supportAlexandru Avadanii1-0/+11
- labs: ericsson-pod1: Restrict management and public network IP ranges to exclude pre-existing infrastructe addresses; - fuel: Consume new ip-range network property in installer adapter; NOTE: For now, we only look at range start (and ignore end addr). JIRA: FUEL-351 Change-Id: If81d0214f896fd42dfd0855ae4cecb06335d2e00 Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
2018-03-06LF-POD4 PDF/IDFBlaisonneau David1-2/+5
PDF+IDF for LF POD4 inspired from securelab PDF and LF-pod2 XDFs. Change-Id: If7ee14efe5f279104a18d2a3281aa7b23bdf704a
2018-03-05Merge "config/installers: Adopt j2 'do' extension"Alexandru Avadanii2-13/+12
2018-03-05generate_config: minor code formatting updatesAlexandru Avadanii1-2/+4
Change-Id: If0ee12287f4257f2de315bd6ad82edb709e24492 Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
2018-03-03config/installers: Adopt j2 'do' extensionAlexandru Avadanii2-13/+12
Change-Id: Iffc473a4c90ff4ee8cfbcc304a3462559199fbe0 Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
2018-03-03[fuel] Fix missing space between yaml key:valAlexandru Avadanii1-1/+1
Change-Id: Icf0e5d386f593bb691f777704ac799c8729221ce Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
2018-03-02generate_config: New `-b` arg for batch processingAlexandru Avadanii1-14/+32
Sometimes, parsing multiple j2 templates based on the same PDF+IDF is needed, in which case we'd have to call generate_config once for each template. Add a new argument, `-b`, which allows batch processing of multiple templates in one go: - files ending in '.j2' (e.g. 'template.yml.j2') will be expanded to a file without the '.j2' suffix in the same directory as the source template (e.g. 'template.yml'); - templates not ending in '.j2' are skipped in batch mode; - in order to pass multiple templates, `-j` argument can now be passed multiple times, similar to `-i`; - although relative filepaths still work, it is highly recommended to use the full path (abspath) for j2 templates; - to avoid filename collisions, j2 parser will open '/' (as well as any directories specified via `-i`) and lookup each j2 template by its full path; Add a new argument, `-v` for verbose logging. While at it, import only needed functions from 'os.path' to make our code more compact and easier to read. Change-Id: I2291935d42e4196813cd75154d5b674bcc330183 Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
2018-03-02Merge "config/utils: YAML: Use C bindings if available"Alexandru Avadanii2-11/+16
2018-03-01generate_config: New `-i` arg for j2 includes dirAlexandru Avadanii1-1/+2
jinja2 does not support imports from parent directories, so in order for j2 to be able to use '{% from <some>.j2 import ... %}' constructs with included j2 residing on a separate dirpath than current j2, add support for explicitly adding directories to the templater search path. This also allows calling generate_config with only file basename as '-j' arg value, as long as the dirname is passed via '-i' (can be extended later to parsing multiple j2 files at once). Change-Id: I943fda9262a6f7de5ee6fcc3e7bc9828c339651a Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
2018-03-01generate_config: Enable 'do' j2 extensionAlexandru Avadanii1-1/+4
'do' is useful to avoid hacks like {% set _ = x.update(...) %}. Instead: {% do x.update(...) %}. [1] http://jinja.pocoo.org/docs/2.10/extensions/ Change-Id: I886beb97e0383ba11b81aa21cf12b11ebc4b05b2 Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
2018-03-01config/utils: YAML: Use C bindings if availableAlexandru Avadanii2-11/+16
Time diff before/after this change for the same template via generate_config expansion: -user 0m0.144s +user 0m0.096s Change-Id: Id574afcd8a74a530d791ebed8b72ccae53703611 Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
2018-02-26[fuel] Improved IP handling on config templateGuillermo Herrero1-137/+137
-New IP addressing. Starts on lower available addresses for better compatibilty for small networks. IPs assigned secuentially and independently on each network. -Switched to advanced IP generation filters. Defined integers are no longer end of the IP address part but host order on the IP network. -Dynamic generation of compute nodes JIRA:FUEL-335 Change-Id: Ie95b83af64cb21ba27749d5f5d1506bfbc9ddf15 Signed-off-by: Guillermo Herrero <guillermo.herrero@enea.com>
2018-02-23[fuel] IDF: Add DPDK parameters supportCristina Pauna1-0/+55
In order to enable DPDK for OVS scenarios in Armband, we need DPDK specific configuration to be parameterizable. The default DPDK configuration values will remain in Fuel repo and will be overriden with the values defined in IDF (only if present). Since hugepage config and CPU pinning also apply to non-DPDK scenarios, handle them together for 'common', respectively 'dpdk'. To keep things simple, we will reuse the format expected by Fuel's reclass model, so we can pass the whole config block as-is. - IDF schema: fuel: Add strict checking of new block's structure, while allowing the rvalues to be more or less freestyle; - arm-pod6 IDF: Add initial config block implementation; JIRA: ARMBAND-342 Change-Id: I9224f06bb6b9fb2387414eb2a1be35461c27fb99 Signed-off-by: Cristina Pauna <cristina.pauna@enea.com>
2018-02-22gen_config_lib: Add storage_size_num filterAlexandru Avadanii1-0/+19
New filter for converting PDF disk_capacity strings into a numeric only string (to bypass scientific notation), parsable as float. Change-Id: I779bec7db03ef1b3ce1bfd6ca239a3e7b4021eb2 Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
2018-02-20generate_config: Move filters to external libraryGuillermo Herrero2-43/+212
Clean and isolate main script logic from custom filters by moving all them to a external library file. Library has a function to load all the existing filters at once. New enhanced IP handling custom filters: - ipnet_hostaddr - ipnet_hostmin - ipnet_hostmax - ipnet_broadcast - ipnet_netmask - ipnet_contains_ip - ipnet_contains_iprange - ipnet_range_size ipnet filters work with proper IP network with prefixlen mask, ensuring consistent IP calculations and error handling. Previous IP handling filters should be deprecated. Change-Id: I83c41d7ad3c6bd1d9df1deca6cc5b9d2481ecf52 Signed-off-by: Guillermo Herrero <guillermo.herrero@enea.com>
2018-02-16Configure stacklight IP addressesDelia Popescu1-0/+13
Related to: https://gerrit.opnfv.org/gerrit/#/c/52043/ Change-Id: I8378070f9efedc24229efc3c3d5542b62808e1e6 Signed-off-by: Delia Popescu <delia.popescu@enea.com>
2018-02-05[IDF] Schema: Add OSA installer stubs6.0.0Alexandru Avadanii1-11/+21
While at it, order installers by name in IDF schema. Change-Id: I4bf1dd047a3f7a64b8bc928951fc18c4728a9b68 Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
2018-02-01[fuel] pod_config: Consume newly added MaaS propsAlexandru Avadanii1-0/+11
Change-Id: I23446e82dd148afd14d56717dd35fe0ee271d971 Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
2018-02-01[fuel] Allow MaaS timeout config via IDFAlexandru Avadanii1-0/+9
MaaS timeouts should be configurable on per-POD basis, since nodes in some labs take longer to comission/deploy than our default values. IDF SCHEMA: - add new properties to Fuel IDF section; Change-Id: Ife5ff85faeae683a8c1781cae8b29f09c1f07b82 Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
2018-01-30Merge changes from topics 'fuel-netmap', 'fix-check-jinja'Alexandru Avadanii4-57/+91
* changes: [fuel] Add net_map.j2 for net config abstraction [fuel] Explicitly blacklist incompatible labs [IDF] Add optional 'idf.installer' array
2018-01-29Merge "[fuel] Update IA for vPDF support"Alexandru Avadanii1-3/+9
2018-01-28[fuel] Add net_map.j2 for net config abstractionAlexandru Avadanii1-0/+47
This will be leveraged by other j2 templates in Fuel to construct scenario-specific network config files. Change-Id: Iba1fd99b23936fe42abe16af3cd80dce2a63d997 Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
2018-01-28[fuel] Explicitly blacklist incompatible labsAlexandru Avadanii1-42/+29
Previously, we used to silently refuse to construct 'pod_config' for PODs missing mandatory PDF/IDF configuration; and instead generated an empty output YAML. Retire safety checks in Fuel IA and explicitly blacklist Fuel via new 'idf.installer' where appropiate. The following PODs do not yet support Fuel due to missing 'idf.fuel': - ericsson-pod2 - huawei-pod1 - intel-pod18 - nokia-pod1 - zte-pod2 - zte-pod3 Change-Id: Ief62d62f99a79187303e3f15b83030289e5efdcb Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
2018-01-28[IDF] Add optional 'idf.installer' arrayAlexandru Avadanii2-15/+15
There is no easy way to determine automatically if a PDF/IDF set is compatible with a specific installer adapter. Most common incompatibilities are caused by: - installer adapters hardcode more network ports than nodes have defined in PDF; - installer adapters hardcode more nodes than PDF defines; Previous attempt at handling this dynamically (cd54edf) fails for recently added PODs, so let's handle this explicitly per-pod via a new optional IDF property, 'idf.installer'. If 'idf.installer' is defined, it will be used by `check-jinja2.sh` as a filter-in list of installer adapters to check against. The default (no 'idf.installer' present) is to check all IAs. Leverage the new property for: - arm-pod5: not enough network ports on computes for Compass, Joid; - arm-pod7: same as arm-pod5; - bii-pod1: no 'storage' network defined in IDF for Daisy; - zte-pod9: 3 cluster nodes are only supported by Daisy for now; SPEC changes: - net_config (previously mandatory for IDF version '0.1') is now mandatory only if 'idf.fuel' or 'idf.daisy' is defined; Fixes: cd54edf Change-Id: I706c05519e5491ad631069d7cc090e9c8bfd3011 Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
2018-01-28[fuel] Update IA for vPDF supportAlexandru Avadanii1-3/+9
- move gtw tenant addrs from {6,7,9} to {124,125,126} (e.g. 10.0.1.6 -> 10.0.1.124 for ericsson-virtual* PODs); - add gtw external (public) addresses, e.g. 10.16.0.124; - add ctl external (public) addresses, e.g. 10.16.0.11; JIRA: FUEL-322 Change-Id: Ice73aa3985831dca7427e496850d0865db71477e Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
2018-01-28[daisy] network template: Fix set inside loopAlexandru Avadanii1-1/+2
Previous implementation fails in older versions of py-jinja2. See related bug reports [1, 2]. Since `networks.update` on its own is enough, stop assigning its result back to 'networks'. [1] https://github.com/pallets/jinja/issues/641 [2] https://github.com/pallets/jinja/issues/164 Change-Id: I303388223bdec9ae43e49d988aee41b5b47c1562 Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
2018-01-28Merge "[joid] Refresh installer adapter for Pike"Alexandru Avadanii1-4/+4
2018-01-28Merge "[daisy] Use jump remote_management params"Alexandru Avadanii1-1/+1