Skip to content

Commit 1d149ff

Browse files
Documentation: Fixes broken links and standardizes headers.
Signed-off-by: Kevin Putnam <[email protected]>
1 parent 429770c commit 1d149ff

File tree

12 files changed

+163
-167
lines changed

12 files changed

+163
-167
lines changed

DEVEL.md

+8-9
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,7 @@
1-
How to develop simple device plugins
2-
====================================
1+
# Development
2+
3+
4+
## How to develop simple device plugins
35

46
To create a simple device plugin without the hassle of developing your own gRPC
57
server, you can use a package included in this repository called
@@ -62,8 +64,7 @@ Optionally, your device plugin may also implement the
6264
before they are sent to `kubelet`. To see an example, refer to the FPGA
6365
plugin which implements this interface to annotate its responses.
6466

65-
Logging
66-
-------
67+
### Logging
6768

6869
The framework uses [`klog`](https://github.com/kubernetes/klog) as its logging
6970
framework. It is encouraged for plugins to also use `klog` to maintain uniformity
@@ -84,8 +85,7 @@ The default is to not log `Info()` calls. This can be changed using the plugin c
8485
line `-v` parameter. The additional annotations prepended to log lines by 'klog' can be disabled
8586
with the `-skip_headers` option.
8687

87-
Error Conventions
88-
-----------------
88+
### Error Conventions
8989

9090
The framework has a convention for producing and logging errors. Ideally plugins will also adhere
9191
to the convention.
@@ -122,8 +122,7 @@ Otherwise, they can be logged as simple values:
122122
klog.Warningf("Example of a warning due to an external error: %v", err)
123123
```
124124

125-
How to build against a newer version of Kubernetes
126-
==================================================
125+
## How to build against a newer version of Kubernetes
127126

128127
First you need to update module dependencies. The easiest way is to use the
129128
script copied from https://github.com/kubernetes/kubernetes/issues/79384#issuecomment-521493597:
@@ -163,4 +162,4 @@ $ make generate
163162
$ make test
164163
```
165164

166-
and fix all new compilation issues.
165+
and fix all new compilation issues.

README.md

+8-11
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,14 @@
1-
# Intel® Device Plugins for Kubernetes
1+
# Overview
22
[![Build Status](https://github.com/intel/intel-device-plugins-for-kubernetes/workflows/CI/badge.svg?branch=master)](https://github.com/intel/intel-device-plugins-for-kubernetes/actions?query=workflow%3ACI)
33
[![Go Report Card](https://goreportcard.com/badge/github.com/intel/intel-device-plugins-for-kubernetes)](https://goreportcard.com/report/github.com/intel/intel-device-plugins-for-kubernetes)
44
[![GoDoc](https://godoc.org/github.com/intel/intel-device-plugins-for-kubernetes/pkg/deviceplugin?status.svg)](https://godoc.org/github.com/intel/intel-device-plugins-for-kubernetes/pkg/deviceplugin)
55

6-
## Table of Contents
6+
This repository contains a framework for developing plugins for the Kubernetes
7+
[device plugins framework](https://kubernetes.io/docs/concepts/extend-kubernetes/compute-storage-net/device-plugins/),
8+
along with a number of device plugin implementations utilising that framework.
9+
10+
Table of Contents
711

8-
* [About](#about)
912
* [Prerequisites](#prerequisites)
1013
* [Plugins](#plugins)
1114
* [GPU device plugin](#gpu-device-plugin)
@@ -22,12 +25,6 @@
2225
* [Supported Kubernetes versions](#supported-kubernetes-versions)
2326
* [Related code](#related-code)
2427

25-
## About
26-
27-
This repository contains a framework for developing plugins for the Kubernetes
28-
[device plugins framework](https://kubernetes.io/docs/concepts/extend-kubernetes/compute-storage-net/device-plugins/),
29-
along with a number of device plugin implementations utilising that framework.
30-
3128
## Prerequisites
3229

3330
Prerequisites for building and running these device plugins include:
@@ -212,7 +209,7 @@ $ KUBEBUILDER_ASSETS=${HOME}/work/kubebuilder-assets make envtest
212209

213210
## Supported Kubernetes versions
214211

215-
Releases are made under the github [releases area](../../releases). Supported releases and
212+
Releases are made under the github [releases area](https://github.com/intel/intel-device-plugins-for-kubernetes/releases). Supported releases and
216213
matching Kubernetes versions are listed below:
217214

218215
| Branch | Kubernetes branch/version |
@@ -227,4 +224,4 @@ matching Kubernetes versions are listed below:
227224

228225
## Related code
229226

230-
A related Intel SRIOV network device plugin can be found in [this repository](https://github.com/intel/sriov-network-device-plugin)
227+
A related Intel SRIOV network device plugin can be found in [this repository](https://github.com/intel/sriov-network-device-plugin)

cmd/fpga_admissionwebhook/README.md

+12-12
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# Intel FPGA admission controller for Kubernetes
22

3-
# Table of Contents
3+
Table of Contents
44

55
* [Introduction](#introduction)
66
* [Dependencies](#dependencies)
@@ -10,7 +10,7 @@
1010
* [Mappings](#mappings)
1111
* [Next steps](#next-steps)
1212

13-
# Introduction
13+
## Introduction
1414

1515
The FPGA admission controller is one of the components used to add support for Intel FPGA
1616
devices to Kubernetes.
@@ -31,7 +31,7 @@ The admission controller also keeps the user from bypassing namespaced mapping r
3131
by denying admission of any pods that are trying to use internal knowledge of InterfaceID or
3232
Bitstream ID environment variables used by the prestart hook.
3333

34-
# Dependencies
34+
## Dependencies
3535

3636
This component is one of a set of components that work together. You may also want to
3737
install the following:
@@ -42,12 +42,12 @@ install the following:
4242
All components have the same basic dependencies as the
4343
[generic plugin framework dependencies](../../README.md#about)
4444

45-
# Installation
45+
## Installation
4646

4747
The following sections detail how to obtain, build and deploy the admission
4848
controller webhook plugin.
4949

50-
## Pre-requisites
50+
### Pre-requisites
5151

5252
The webhook depends on having [cert-manager](https://cert-manager.io/)
5353
installed:
@@ -89,7 +89,7 @@ spec:
8989
...
9090
```
9191

92-
## Deployment
92+
### Deployment
9393

9494
To deploy the webhook, run
9595

@@ -108,7 +108,7 @@ issuer.cert-manager.io/intelfpgawebhook-selfsigned-issuer created
108108
```
109109
Now you can deploy your mappings.
110110

111-
# Mappings
111+
## Mappings
112112

113113
Mappings is a an essential part of the setup that gives a flexible instrument to a cluster
114114
administrator to manage FPGA bitstreams and to control access to them. Being a set of
@@ -148,12 +148,12 @@ bitstream to a region before the container is started.
148148

149149
Mappings of resource names are configured with objects of `AcceleratorFunction` and
150150
`FpgaRegion` custom resource definitions found respectively in
151-
[`./deployment/fpga_admissionwebhook/crd/bases/fpga.intel.com_af.yaml`](../../deployment/fpga_admissionwebhook/crd/bases/fpga.intel.com_af.yaml)
152-
and [`./deployment/fpga_admissionwebhook/crd/bases/fpga.intel.com_region.yaml`](../../deployment/fpga_admissionwebhook/crd/bases/fpga.intel.com_region.yaml).
151+
[`./deployment/fpga_admissionwebhook/crd/bases/fpga.intel.com_af.yaml`](/deployments/fpga_admissionwebhook/crd/bases/fpga.intel.com_acceleratorfunctions.yaml)
152+
and [`./deployment/fpga_admissionwebhook/crd/bases/fpga.intel.com_region.yaml`](/deployments/fpga_admissionwebhook/crd/bases/fpga.intel.com_fpgaregions.yaml).
153153

154154
Mappings between 'names' and 'ID's are controlled by the admission controller
155155
mappings collection file found in
156-
[`./deployments/fpga_admissionwebhook/mappings-collection.yaml`](../../deployments/fpga_admissionwebhook/mappings-collection.yaml).
156+
[`./deployments/fpga_admissionwebhook/mappings-collection.yaml`](/deployments/fpga_admissionwebhook/mappings-collection.yaml).
157157
This mappings file can be deployed with
158158

159159
```bash
@@ -163,6 +163,6 @@ $ kubectl apply -f https://raw.githubusercontent.com/intel/intel-device-plugins-
163163
Note that the mappings are scoped to the namespaces they were created in
164164
and they are applicable to pods created in the corresponding namespaces.
165165

166-
# Next steps
166+
## Next steps
167167

168-
Continue with [FPGA prestart CRI-O hook](../fpga_crihook/README.md).
168+
Continue with [FPGA prestart CRI-O hook](../fpga_crihook/README.md).

cmd/fpga_crihook/README.md

+11-11
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# Intel FPGA prestart CRI-O webhook for Kubernetes
22

3-
# Table of Contents
3+
Table of Contents
44

55
* [Introduction](#introduction)
66
* [Dependencies](#dependencies)
@@ -9,27 +9,27 @@
99
* [Building the image](#building-the-image)
1010
* [Configuring CRI-O](#configuring-cri-o)
1111

12-
# Introduction
12+
## Introduction
1313

1414
The FPGA CRI-O webhook is one of the components used to add support for Intel FPGA
1515
devices to Kubernetes.
1616

1717
The FPGA prestart CRI-O hook is triggered by container annotations, such as set by the
18-
[FPGA device plugin](../fpga_plugin). It performs discovery of the requested FPGA
18+
[FPGA device plugin](../fpga_plugin/README.md). It performs discovery of the requested FPGA
1919
function bitstream and then programs FPGA devices based on the environment variables
2020
in the workload description.
2121

2222
The CRI-O prestart hook is only *required* when the
23-
[FPGA admission webhook](../fpga_admissionwebhook) is configured for orchestration
23+
[FPGA admission webhook](../fpga_admissionwebhook/README.md) is configured for orchestration
2424
programmed mode, and is benign (un-used) otherwise.
2525

2626
> **Note:** The fpga CRI-O webhook is usually installed by the same DaemonSet as the
2727
> FPGA device plugin. If building and installing the CRI-O webhook by hand, it is
2828
> recommended you reference the
29-
> [fpga plugin DaemonSet YAML](../../deployments/fpga_plugin/base/intel-fpga-plugin-daemonset.yaml) for
29+
> [fpga plugin DaemonSet YAML](/deployments/fpga_plugin/base/intel-fpga-plugin-daemonset.yaml ) for
3030
> more details.
3131
32-
# Dependencies
32+
## Dependencies
3333

3434
This component is one of a set of components that work together. You may also want to
3535
install the following:
@@ -40,19 +40,19 @@ install the following:
4040
All components have the same basic dependencies as the
4141
[generic plugin framework dependencies](../../README.md#about)
4242

43-
# Building
43+
## Building
4444

4545
The following sections detail how to obtain, build and deploy the CRI-O
4646
prestart hook.
4747

48-
## Getting the source code
48+
### Getting the source code
4949

5050
```bash
5151
$ export INTEL_DEVICE_PLUGINS_SRC=/path/to/intel-device-plugins-for-kubernetes
5252
$ git clone https://github.com/intel/intel-device-plugins-for-kubernetes ${INTEL_DEVICE_PLUGINS_SRC}
5353
```
5454

55-
## Building the image
55+
### Building the image
5656

5757
```bash
5858
$ cd ${INTEL_DEVICE_PLUGINS_SRC}
@@ -61,11 +61,11 @@ $ make intel-fpga-initcontainer
6161
Successfully tagged intel/intel-fpga-initcontainer:devel
6262
```
6363

64-
# Configuring CRI-O
64+
## Configuring CRI-O
6565

6666
Recent versions of [CRI-O](https://github.com/cri-o/cri-o) are shipped with default configuration
6767
file that prevents CRI-O to discover and configure hooks automatically.
6868
For FPGA orchestration programmed mode, the OCI hooks are the key component.
6969
Please ensure that your `/etc/crio/crio.conf` parameter `hooks_dir` is either unset
7070
(to enable default search paths for OCI hooks configuration) or contains the directory
71-
`/etc/containers/oci/hooks.d`.
71+
`/etc/containers/oci/hooks.d`.

0 commit comments

Comments
 (0)