cwielenb/CNCF-Dataset huggingface dataset:
Project: Traefik Mesh (Orchestration & Management / Service Mesh)
File: CODE_OF_CONDUCT.md

In the interest of fostering an open and welcoming environment, we as contributors and maintainers pledge to making participation in our project and our community a harassment-free experience for everyone, regardless of age, body size, disability, ethnicity, gender identity and expression, level of experience,nationality, personal appearance, race, religion, or sexual identity and orientation. Examples of behavior that contributes to creating a positive environment include: Using welcoming and inclusive language Being respectful of differing viewpoints and experiences Gracefully accepting constructive criticism Focusing on what is best for the community Showing empathy towards other community members Examples of unacceptable behavior by participants include: The use of sexualized language or imagery and unwelcome sexual attention or advances Trolling, insulting/derogatory comments, and personal or political attacks Public or private harassment Publishing others' private information, such as a physical or electronic address, without explicit permission Other conduct which could reasonably be considered inappropriate in a professional setting Project maintainers are responsible for clarifying the standards of acceptable behavior and are expected to take appropriate and fair corrective action in response to any instances of unacceptable behavior. Project maintainers have the right and responsibility to remove, edit, or reject comments, commits, code, wiki edits, issues, and other contributions that are not aligned to this Code of Conduct, or to ban temporarily or permanently any contributor for other behaviors that they deem inappropriate, threatening, offensive, or harmful. This Code of Conduct applies both within project spaces and in public spaces when an individual is representing the project or its community. Examples of representing a project or community include using an official project e-mail address, posting via an official social media account, or acting as an appointed representative at an online or offline event. Representation of a project may be further defined and clarified by project maintainers. Instances of abusive, harassing, or otherwise unacceptable behavior may be reported by contacting the project team at contact@traefik.io All complaints will be reviewed and investigated and will result in a response that is deemed necessary and appropriate to the circumstances. The project team is obligated to maintain confidentiality with regard to the reporter of an incident. Further details of specific enforcement policies may be posted separately. Project maintainers who do not follow or enforce the Code of Conduct in good faith may face temporary or permanent repercussions as determined by other members of the project's leadership. This Code of Conduct is adapted from the , version 1.4, available at
Project: Volcano (Orchestration & Management / Scheduling & Orchestration)
File: node-priority.md

This feature allows `kube-batch` to schedule workloads based on the priority of the Nodes, Workloads will be scheduled on Nodes with higher priority and these priorities will be calculated based on different parameters like `ImageLocality`, `Most/Least Requested Nodes`...etc. A basic flow for the Node priority functions is depicted below. Currently in kube-batch `Session` is opened every 1 sec and the workloads which are there in Queue goes through `Predicate` to find a suitable set of Nodes where workloads can be scheduled and after that it goes through `Allocate` function to assign the Pods to the Nodes and then goes to `Preempt` if applicable. Node Priority can be introduced in the current flow for `Allocate` and `Preempt` function. Once we have set of Nodes where we can scheduled the workloads then flow will go through `Prioritize` function which will do the following things : Run all the priority functions on all the list Nodes which is given by `Predicate` function in a parallel go-routine. Score the Node based on whether the `Priority Rule` satisfies the Workload scheduling criteria. Once the scores are returned from all the `PriorityFn` then aggregate the scoring and identify the Node with highest scoring. Delegate this selected Node in last step to `AllocateFn` to Bind the workload to the Node. Currently there are multiple `PriorityFn` available with default Scheduler of Kubernetes. Going forward with each release we will implement all the priority functions in kube-batch based on their importance to batch scheduling.
Project: Linkerd (Orchestration & Management / Service Mesh)
File: CODE_OF_CONDUCT.md

As a CNCF project, we follow the [CNCF Contributor Code of Conduct](https://github.com/cncf/foundation/blob/master/code-of-conduct.md). Additionally, we are committed to the following guidelines adapted from the : Our goal is to foster an inclusive and diverse community of technology enthusiasts. Try to be your best self. Treat your fellow community members with kindness and empathy. We welcome disagreements when they are conducted respectfully and without personal attacks. We ask that you keep unstructured critique to a minimum. Disparaging remarks about the project are unnecessary and a drain on community morale. Feedback should be constructive and relevant. Having passionately held opinions on what should improve is encouraged! We hope you will use that enthusiasm to roll up your sleeves and get involved by submitting pull requests. We have additional guidelines on [how to ask constructive questions](https://github.com/linkerd/linkerd/wiki/How-To-Ask-Questions-in-Slack). We don't tolerate insults, spamming, trolling, flaming, baiting, or harassment. We don't tolerate sexual language, imagery, or unwanted advances. Private harassment is also unacceptable. We do our best to avoid : small actions that make others feel uncomfortable. If you witness a subtle-ism, you may respectfully point it out to the person publicly or privately, or you may ask a moderator to say something. Accidentally saying something biased is common, expected, and readily forgiven. It is not in and of itself a bannable offense. If you feel that a channel needs moderation, please message one of the directly. Moderators will issue a warning to users who don't follow the code of conduct. A second offense results in a temporary ban, a third warrants a permanent ban. It's at the moderator's discretion to un-ban a remorseful user, or immediately ban a toxic user without warning. Unjustified bans can be appealed by contacting <banhammer@buoyant.io>.
Project: Traefik (Orchestration & Management / API Gateway)
File: LICENSE.md

The MIT License (MIT) Copyright (c) 2016-2020 Containous SAS; 2020-2024 Traefik Labs Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
Project: Gloo (Orchestration & Management / API Gateway)
File: glooctl_install_gateway_enterprise.md

title: "glooctl install gateway enterprise" weight: 5 install the Gloo Enterprise Gateway on Kubernetes requires kubectl to be installed ``` glooctl install gateway enterprise [flags] ``` ``` --create-namespace Create the namespace to install gloo into (default true) -d, --dry-run Dump the raw installation yaml instead of applying it to kubernetes -f, --file string Install Gloo from this Helm chart archive file rather than from a release -h, --help help for enterprise --license-key string License key to activate GlooE features -n, --namespace string namespace to install gloo into (default "gloo-system") --release-name string helm release name (default "gloo") --values strings List of files with value overrides for the Gloo Helm chart, (e.g. --values file1,file2 or --values file1 --values file2) --version string version to install (e.g. 1.4.0, defaults to latest) --with-gloo-fed Install Gloo-Fed alongside Gloo Enterprise (default true) ``` ``` -c, --config string set the path to the glooctl config file (default "<home_directory>/.gloo/glooctl-config.yaml") --consul-address string address of the Consul server. Use with --use-consul (default "127.0.0.1:8500") --consul-allow-stale-reads Allows reading using Consul's stale consistency mode. --consul-datacenter string Datacenter to use. If not provided, the default agent datacenter is used. Use with --use-consul --consul-root-key string key prefix for for Consul key-value storage. (default "gloo") --consul-scheme string URI scheme for the Consul server. Use with --use-consul (default "http") --consul-token string Token is used to provide a per-request ACL token which overrides the agent's default token. Use with --use-consul -i, --interactive use interactive mode --kube-context string kube context to use when interacting with kubernetes --kubeconfig string kubeconfig to use, if not standard one --use-consul use Consul Key-Value storage as the backend for reading and writing config (VirtualServices, Upstreams, and Proxies) -v, --verbose If true, output from kubectl commands will print to stdout/stderr ``` - install the Gloo Gateway on Kubernetes
Project: Xline (Orchestration & Management / Coordination & Service Discovery)
File: key_based_channel_optimization.md

The key based channel has two critical bottlenecks: Locking: Currently, we use a big Mutex to protect internal structures, which can be quite inefficient when the contention is high. We should look for a lock-free solution. Algorithm: Currently, we use a dependency graph to maintain the order of key based messages. When a msg is inserted, we will iterate through all uncompleted msgs(have not been marked done yet). The msg will be inserted to the buffer as the successor of another msg if there is conflict. However, the iteration will be time-consuming if the number of uncompleted msgs is high. Thus, instead of iterating through all uncompleted msgs, we should build an index to accelerate the lookup; i.e., store each key's uncompleted msgs. Many excellent channel implementations(e.g., crossbeam, flume, and tokio's mpsc) achieve superb performance by adopting sophisticated optimizing techniques. We can leverage channels to do away with locks in our implementation. ```rust use std::{iter, time::Duration}; use tokio::task::JoinHandle; use mpmc::betterkeympmc::{self, KeyBasedMessage}; const NMSGPER_SENDER: usize = 10000; const SENDER_CNT: usize = 2; const RECEIVER_CNT: usize = 4; async fn main() { let (senders, receivers) = { let (tx, rx) = betterkeympmc::channel::<String, String>(); let senders: Vec<JoinHandle<()>> = iter::repeat(tx) .take(SENDER_CNT) .enumerate() .map(|(t, tx)| { tokio::spawn(async move { // let mut rng = thread_rng(); let start = t * NMSGPER_SENDER; let end = t * NMSGPERSENDER + NMSGPERSENDER; (start..end).for_each(|i| { let msg = KeyBasedMessage::new(vec![i.tostring()], i.tostring()); tx.send(msg).unwrap() }) }) }) .collect(); let receivers: Vec<JoinHandle<usize>> = iter::repeat(rx) .take(RECEIVER_CNT) .map(|rx| { tokio::spawn(async move { let mut sum = 0; while let Ok(Ok((id, _msg, done))) = // I add a timeout here so that the receiver can stop automatically tokio::time::timeout(Duration::frommillis(10), rx.recvasync()) .await { // while let Ok((id, msg, done)) = rx.recvasync().await { done.send(id).unwrap(); sum += 1; } sum }) }) .collect(); (senders, receivers) }; for handle in senders { handle.await.unwrap(); } let mut sum = 0; for handle in receivers { sum += handle.await.unwrap(); } asserteq!(sum, SENDERCNT * NMSGPER_SENDER); } ``` tokio mpsc + key based spmc: key based mpmc: single-thread key filter + flume channel: The result should be even better in practice because in `better_mpmc`, I had to add an additional timeout for the channel to stop.
Project: Gloo (Orchestration & Management / API Gateway)
File: glooctl_get_routetable.md

title: "glooctl get routetable" weight: 5 read a route table or list route tables in a namespace usage: glooctl get routetable [NAME] [--namespace=namespace] [-o FORMAT] ``` glooctl get routetable [flags] ``` ``` -h, --help help for routetable ``` ``` -c, --config string set the path to the glooctl config file (default "<home_directory>/.gloo/glooctl-config.yaml") --consul-address string address of the Consul server. Use with --use-consul (default "127.0.0.1:8500") --consul-allow-stale-reads Allows reading using Consul's stale consistency mode. --consul-datacenter string Datacenter to use. If not provided, the default agent datacenter is used. Use with --use-consul --consul-root-key string key prefix for for Consul key-value storage. (default "gloo") --consul-scheme string URI scheme for the Consul server. Use with --use-consul (default "http") --consul-token string Token is used to provide a per-request ACL token which overrides the agent's default token. Use with --use-consul -i, --interactive use interactive mode --kube-context string kube context to use when interacting with kubernetes --kubeconfig string kubeconfig to use, if not standard one --name string name of the resource to read or write -n, --namespace string namespace for reading or writing resources (default "gloo-system") -o, --output OutputType output format: (yaml, json, table, kube-yaml, wide) (default table) --use-consul use Consul Key-Value storage as the backend for reading and writing config (VirtualServices, Upstreams, and Proxies) ``` - Display one or a list of Gloo resources
Project: BFE (Orchestration & Management / Service Proxy)
File: mod_trace.md

mod_trace enables tracing for requests based on defined rules. conf/modtrace/modtrace.conf | Config Item | Description | | | --| | Basic.DataPath | String<br>Path of rule configuration | | Basic.ServiceName | String<br>Service name | | Basic.TraceAgent | String<br>Which trace agent to use (jaeger/zipkin) | | Log.OpenDebug | Boolean<br>Debug flag of module | | Config Item | Description | | | --| | Zipkin.HTTPEndpoint | String<br>Http endpoint to report traces to | | Zipkin.SameSpan | String<br>Whether to use Zipkin SameSpan RPC style traces | | Zipkin.ID128Bit | String<br>Whether to use 128 bit root span IDs | | Zipkin.SampleRate | Float<br>The rate between 0.0001 and 1.0 of requests to trace | | Config Item | Description | | | --| | Jaeger.SamplingServerURL | String<br>The address of jaeger-agent's HTTP sampling server | | Jaeger.SamplingType | String<br>The type of the sampler: const, probabilistic, rateLimiting, or remote | | Jaeger.SamplingParam | Float<br>Param passed to the sampler | | Jaeger.LocalAgentHostPort | String<br>The address of jaeger-agent which receives spans | | Jaeger.Propagation | String<br>Which propagation format to use (jaeger/b3) | | Jaeger.Gen128Bit | Boolean<br>Whether to use 128 bit root span IDs | | Jaeger.TraceContextHeaderName | String<br>The http header name used to propagate tracing context | | Jaeger.CollectorEndpoint | String<br>The address of jaeger-collector | | Jaeger.CollectorUser | String<br>Basic http authentication when sending spans to jaeger-collector | | Jaeger.CollectorPassword | String<br>Basic http authentication when sending spans to jaeger-collector | | Config Item | Description | | | --| | Elastic.ServerURL | String<br>Set the URL of the Elastic APM server | | Elastic.SecretToken | String<br>Set the token used to connect to Elastic APM Server | ```ini [Basic] DataPath = modtrace/tracerule.data ServiceName = bfe TraceAgent = zipkin [Log] OpenDebug = false [Zipkin] HTTPEndpoint = http://127.0.0.1:9411/api/v2/spans SameSpan = false ID128Bit = true SampleRate = 1.0 ``` ```ini [Basic] DataPath = modtrace/tracerule.data ServiceName = bfe TraceAgent = jaeger [Log] OpenDebug = false [Jaeger] SamplingServerURL = http://127.0.0.1:5778/sampling SamplingType = const SamplingParam = 1.0 LocalAgentHostPort = 127.0.0.1:6831 Propagation = jaeger Gen128Bit = true TraceContextHeaderName = uber-trace-id CollectorEndpoint = "" CollectorUser = "" CollectorPassword = "" ``` ```ini [Basic] DataPath = modtrace/tracerule.data ServiceName = bfe TraceAgent = elastic [Log] OpenDebug = false [Elastic] ServerURL = http://127.0.0.1:8200 SecretToken = "" ``` conf/modtrace/tracerule.data | Config Item | Description | | -- | -- | | Version | String<br>Version of the config file | | Config | Object<br>Trace rules for each product | | Config[k] | String<br>Product name | | Config[v] | Object<br>A list of trace rules | | Config | Object<br>A trace rule | | Config | | Config.Enable | Boolean<br>Enable trace | ```json { "Version": "20200218210000", "Config": { "example_product": [ { "Cond": "reqhostin(\"example.org\")", "Enable": true } ] } } ```
Project: Contour (Orchestration & Management / Service Proxy)
File: CHANGELOG-v1.16.1.md

We are delighted to present version 1.16.1 of Contour, our layer 7 HTTP reverse proxy for Kubernetes clusters. As an additional mitigation for , has been backported to this release. Previously an ExternalName service with an address of `localhost` and port matching the Envoy admin interface listener port could expose admin endpoints that would allow an attacker to shut down Envoy remotely. Contour's bootstrap command now configures Envoy to listen on a Unix domain socket to ensure an ExternalName service cannot expose the "writable" endpoints of the admin interface. For backwards compatibility Contour now configures an additional Envoy listener to expose endpoints useful for debugging. This listener does not expose any endpoints that can be used to modify data, set Envoy healthcheck status, or shut down Envoy. See for some more detail. Note: While this fix does mitigate some aspects of CVE-2021-32783, ExternalName service usage is still discouraged as they can still be used to expose services across namespaces. If you have been using the Contour example YAMLs to deploy Contour and Envoy, no changes are required except to deploy the updated YAMLs for release 1.16.1. If you are managing your Envoy DaemonSet using another method, be sure to inspect the . An is required and it must be mounted in the and containers to ensure both have access to the Unix domain socket Envoy is now configured to listen on. Upgrades the default Envoy version to 1.18.4 for security and bug fixes. See the for more details.
Project: Gravitee.io (Orchestration & Management / API Gateway)
File: management-api-plans.md

Retrieve all your registered plans. To subscribe to an API, you must publish one or more Plans. A Plan will allow you to gain access of the API operations. 3 modes are available for plans: Staging mode With a plan in staging mode, you can make changes to the configuration and preview the changes before you make the plan active. Published mode The plan is in active state and consumers can use it to subscribe to the API. Closed mode Plan is closed and cannot be used anymore by the API consumers. The (+) button let you create a new plan.
Project: Gloo (Orchestration & Management / API Gateway)
File: glooctl_delete_proxy.md

title: "glooctl delete proxy" weight: 5 delete a proxy usage: glooctl delete proxy [NAME] [--namespace=namespace] ``` glooctl delete proxy [flags] ``` ``` -h, --help help for proxy ``` ``` -c, --config string set the path to the glooctl config file (default "<home_directory>/.gloo/glooctl-config.yaml") --consul-address string address of the Consul server. Use with --use-consul (default "127.0.0.1:8500") --consul-allow-stale-reads Allows reading using Consul's stale consistency mode. --consul-datacenter string Datacenter to use. If not provided, the default agent datacenter is used. Use with --use-consul --consul-root-key string key prefix for for Consul key-value storage. (default "gloo") --consul-scheme string URI scheme for the Consul server. Use with --use-consul (default "http") --consul-token string Token is used to provide a per-request ACL token which overrides the agent's default token. Use with --use-consul -i, --interactive use interactive mode --kube-context string kube context to use when interacting with kubernetes --kubeconfig string kubeconfig to use, if not standard one --name string name of the resource to read or write -n, --namespace string namespace for reading or writing resources (default "gloo-system") --use-consul use Consul Key-Value storage as the backend for reading and writing config (VirtualServices, Upstreams, and Proxies) ``` - Delete a Gloo resource
Project: Gloo (Orchestration & Management / API Gateway)
File: stages.proto.sk.md

title: "stages.proto" weight: 5 <!-- Code generated by solo-kit. DO NOT EDIT. --> FilterStage allows configuration of where in a filter chain a given HTTP filter is inserted, relative to one of the pre-defined stages. ```yaml "stage": .filters.gloo.solo.io.FilterStage.Stage "predicate": .filters.gloo.solo.io.FilterStage.Predicate ``` | Field | Type | Description | | -- | - | -- | | `stage` | | Stage of the filter chain in which the selected filter should be added. | | `predicate` | | How this filter should be placed relative to the stage. | List of filter stages which can be selected for a HTTP filter. | Name | Description | | -- | -- | | `FaultStage` | | | `CorsStage` | | | `WafStage` | | | `AuthNStage` | | | `AuthZStage` | | | `RateLimitStage` | | | `AcceptedStage` | | | `OutAuthStage` | | | `RouteStage` | | Desired placement of the HTTP filter relative to the stage. The default is `During`. | Name | Description | | -- | -- | | `During` | | | `Before` | | | `After` | | <!-- Start of HubSpot Embed Code --> <script type="text/javascript" id="hs-script-loader" async defer src="//js.hs-scripts.com/5130874.js"></script> <!-- End of HubSpot Embed Code -->