Tungsten Fabric is an open source network virtualization solution for providing connectivity and security for virtual, containerized or bare-metal workloads.
Tungsten Fabric supports integrations with the following orchestrators:
Openstack Kubernetes Openshift vCenter BYOO [Bring your own orchestrator]
Tungsten Fabric is now part of the Linux Foundation.
Start using Tungsten Fabric
Becoming a contributor
Whether you want to fix a typo in comments or introduce a brand new feature, there are a few steps which make the process smoother:
Subscribe to the firstname.lastname@example.org mailing list.
Temporarily, subscribe to the email@example.com mailing list in order to get access to the Tungsten Fabric Community Drive. There you can find legal and technical docs, event decks and similar resources to boost your understanding of Tungsten Fabric. This material will eventually be moving to [https://wiki.tungsten.io] or Git repositories but currently there is useful info that is only available on the Community Drive.
Join Slack. Post your questions to relevant channels, don’t abuse @here, get help and help others. The mailing list works best for long-running discussions; Slack is great for ad-hoc conversations.
Create a Launchpad account, if you don’t have one yet. Tungsten Fabric uses Launchpad as a tracker and planning vehicle.
If you’ve found a bug, file a bug report against the respective release at Launchpad. Be sure to describe both expected and actual behavior. You’ll need the bug ID later, so please do this even if you feel the change is trivial.
If you plan to develop a new feature, go to Launchpad as well, but this time create a blueprint and a ticket associated with it. A blueprint is a short piece of text describing which feature do you propose, why it is good to have it in Tungsten Fabric, and who will be developing it. Blueprints should link to a more technical and more detailed specification document. However, these specifications don’t go to the Launchpad: they ends up in the dedicated repository, contrail-specs.
Although contrail-specs and other Tungsten Fabric repositories are hosted on Github, they are managed with Gerrit. Please don’t send Pull Requests to the Github repositories, and go to https://review.opencontrail.org instead. Blueprint specs are submitted this way as well.
After getting Gerrit access as described below, clone the specs repository with the command:
git clone https://review.opencontrail.org/Juniper/contrail-specsand install the git-review extension which will allow you to submit specs as well as code changes. In order to write a spec, start by copying the template
blueprint_template.mdto a meaningful name in the appropriate subdirectory for the release that you would like to target.
Login to Gerrit with your Launchpad account. Before you push anything, you’ll need to sign a Contributor License Agreement or CLA: either Individual CLA (ICLA) if you are an independent contributor, or Corporate CLA (CCLA). We suggest you sign a CCLA if you are employed at a company which pays you for your Tungsten Fabric-related work. CCLA also simplifies things if your teammates plan to contribute as well. Both ICLA and CCLA are legal documents, and you may want to read them carefully or pass to your company’s legal department for analysis. You can find the documents in the Tungsten Fabric Community Drive.
With all of these in place, you are now ready to submit your specs and code to Tungsten Fabric! How to write these specs and code is a different story though, but we hope the links in the next section will help you to get started. You may also want to consult a more detailed how-to available here, in the contrail-community-docs repo. And of course, feel free to ask questions on the mailing list and in Slack channels!
Start developing Tungsten Fabric
NOTE: The columns and dates below are subject to change. An effort is still underway to reconcile Tungsten Fabric processes and previously established Juniper practices with respect to Contrail development timelines.
|Release||Blueprint Due||Specification Due||Dev Complete||GA Release|
- Release: The numeric identifier of the release
- Blueprint Due: Tungsten Fabric currently uses Launchpad, so the blueprint due here refers to the Launchpad Blueprint which will be reviewed by the TSC for strategic alignment and release planning.
- Specification Due: The specification or “spec” is design document with section headings that should be filled in, or at least though about and decided to be non-applicable. Specs should be submitted as described earlier in this document.
- Dev Complete: This column may be considered synonymous with “feature freeze” and is intended to mark the transition from “new development” to “testing, debugging and making production-ready”.
- GA Release: This column is the target release date. Historically Contrail has usually missed release dates in order to finish incomplete features. Tungsten Fabric will attempt to move to a time based release model, but this is still under discussion.