Skip to content

Commit f6a58dc

Browse files
committed
[release] Release including updated Dockerfiles
1 parent 6d8b3c8 commit f6a58dc

File tree

1,294 files changed

+329176
-0
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

1,294 files changed

+329176
-0
lines changed

images/supported/.appveyor.yml

Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
clone_folder: c:\gopath\src\github.com\containernetworking\plugins
2+
3+
environment:
4+
GOPATH: c:\gopath
5+
6+
install:
7+
- echo %PATH%
8+
- echo %GOPATH%
9+
- set PATH=%GOPATH%\bin;c:\go\bin;%PATH%
10+
- go version
11+
- go env
12+
13+
build: off
14+
15+
test_script:
16+
- ps: |
17+
go list ./... | Select-String -Pattern (Get-Content "./plugins/linux_only.txt") -NotMatch > "to_test.txt"
18+
echo "Will test:"
19+
Get-Content "to_test.txt"
20+
foreach ($pkg in Get-Content "to_test.txt") {
21+
if ($pkg) {
22+
echo $pkg
23+
go test -v $pkg
24+
if ($LastExitCode -ne 0) {
25+
throw "test failed"
26+
}
27+
}
28+
}

images/supported/.gitignore

Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
# Compiled Object files, Static and Dynamic libs (Shared Objects)
2+
*.o
3+
*.a
4+
*.so
5+
6+
# Folders
7+
_obj
8+
_test
9+
10+
# Architecture specific extensions/prefixes
11+
*.[568vq]
12+
[568vq].out
13+
14+
*.cgo1.go
15+
*.cgo2.c
16+
_cgo_defun.c
17+
_cgo_gotypes.go
18+
_cgo_export.*
19+
20+
_testmain.go
21+
22+
*.exe
23+
*.test
24+
*.prof
25+
26+
bin/
27+
gopath/
28+
.vagrant

images/supported/.travis.yml

Lines changed: 37 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,37 @@
1+
language: go
2+
sudo: required
3+
dist: trusty
4+
5+
go:
6+
- 1.8.x
7+
- 1.9.x
8+
9+
env:
10+
global:
11+
- PATH=$GOROOT/bin:$GOPATH/bin:$PATH
12+
matrix:
13+
- TARGET=amd64
14+
- TARGET=arm
15+
- TARGET=arm64
16+
- TARGET=ppc64le
17+
- TARGET=s390x
18+
19+
matrix:
20+
fast_finish: true
21+
22+
install:
23+
- go get github.com/onsi/ginkgo/ginkgo
24+
25+
script:
26+
- |
27+
if [ "${TARGET}" == "amd64" ]; then
28+
GOARCH="${TARGET}" ./test.sh
29+
else
30+
GOARCH="${TARGET}" ./build.sh
31+
fi
32+
33+
notifications:
34+
email: false
35+
36+
git:
37+
depth: 9999999

images/supported/CONTRIBUTING.md

Lines changed: 134 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,134 @@
1+
# How to Contribute
2+
3+
CNI is [Apache 2.0 licensed](LICENSE) and accepts contributions via GitHub
4+
pull requests. This document outlines some of the conventions on development
5+
workflow, commit message formatting, contact points and other resources to make
6+
it easier to get your contribution accepted.
7+
8+
We gratefully welcome improvements to documentation as well as to code.
9+
10+
# Certificate of Origin
11+
12+
By contributing to this project you agree to the Developer Certificate of
13+
Origin (DCO). This document was created by the Linux Kernel community and is a
14+
simple statement that you, as a contributor, have the legal right to make the
15+
contribution. See the [DCO](DCO) file for details.
16+
17+
# Email and Chat
18+
19+
The project uses the the cni-dev email list and IRC chat:
20+
- Email: [cni-dev](https://groups.google.com/forum/#!forum/cni-dev)
21+
- IRC: #[containernetworking](irc://irc.freenode.org:6667/#containernetworking) channel on freenode.org
22+
23+
Please avoid emailing maintainers found in the MAINTAINERS file directly. They
24+
are very busy and read the mailing lists.
25+
26+
## Getting Started
27+
28+
- Fork the repository on GitHub
29+
- Read the [README](README.md) for build and test instructions
30+
- Play with the project, submit bugs, submit pull requests!
31+
32+
## Contribution workflow
33+
34+
This is a rough outline of how to prepare a contribution:
35+
36+
- Create a topic branch from where you want to base your work (usually branched from master).
37+
- Make commits of logical units.
38+
- Make sure your commit messages are in the proper format (see below).
39+
- Push your changes to a topic branch in your fork of the repository.
40+
- If you changed code:
41+
- add automated tests to cover your changes, using the [Ginkgo](http://onsi.github.io/ginkgo/) & [Gomega](http://onsi.github.io/gomega/) style
42+
- if the package did not previously have any test coverage, add it to the list
43+
of `TESTABLE` packages in the `test.sh` script.
44+
- run the full test script and ensure it passes
45+
- Make sure any new code files have a license header (this is now enforced by automated tests)
46+
- Submit a pull request to the original repository.
47+
48+
## How to run the test suite
49+
We generally require test coverage of any new features or bug fixes.
50+
51+
Here's how you can run the test suite on any system (even Mac or Windows) using
52+
[Vagrant](https://www.vagrantup.com/) and a hypervisor of your choice:
53+
54+
First, ensure that you have the [CNI repo](https://github.com/containernetworking/cni) and this repo (plugins) cloned side-by-side:
55+
```bash
56+
cd ~/workspace
57+
git clone https://github.com/containernetworking/cni
58+
git clone https://github.com/containernetworking/plugins
59+
```
60+
61+
Next, boot the virtual machine and SSH in to run the tests:
62+
63+
```bash
64+
vagrant up
65+
vagrant ssh
66+
# you're now in a shell in a virtual machine
67+
sudo su
68+
cd /go/src/github.com/containernetworking/plugins
69+
70+
# to run the full test suite
71+
./test.sh
72+
73+
# to focus on a particular test suite
74+
cd plugins/main/loopback
75+
go test
76+
```
77+
78+
# Acceptance policy
79+
80+
These things will make a PR more likely to be accepted:
81+
82+
* a well-described requirement
83+
* tests for new code
84+
* tests for old code!
85+
* new code and tests follow the conventions in old code and tests
86+
* a good commit message (see below)
87+
88+
In general, we will merge a PR once two maintainers have endorsed it.
89+
Trivial changes (e.g., corrections to spelling) may get waved through.
90+
For substantial changes, more people may become involved, and you might get asked to resubmit the PR or divide the changes into more than one PR.
91+
92+
### Format of the Commit Message
93+
94+
We follow a rough convention for commit messages that is designed to answer two
95+
questions: what changed and why. The subject line should feature the what and
96+
the body of the commit should describe the why.
97+
98+
```
99+
scripts: add the test-cluster command
100+
101+
this uses tmux to setup a test cluster that you can easily kill and
102+
start for debugging.
103+
104+
Fixes #38
105+
```
106+
107+
The format can be described more formally as follows:
108+
109+
```
110+
<subsystem>: <what changed>
111+
<BLANK LINE>
112+
<why this change was made>
113+
<BLANK LINE>
114+
<footer>
115+
```
116+
117+
The first line is the subject and should be no longer than 70 characters, the
118+
second line is always blank, and other lines should be wrapped at 80 characters.
119+
This allows the message to be easier to read on GitHub as well as in various
120+
git tools.
121+
122+
## 3rd party plugins
123+
So you've built a CNI plugin. Where should it live?
124+
125+
Short answer: We'd be happy to link to it from our [list of 3rd party plugins](README.md#3rd-party-plugins).
126+
But we'd rather you kept the code in your own repo.
127+
128+
Long answer: An advantage of the CNI model is that independent plugins can be
129+
built, distributed and used without any code changes to this repository. While
130+
some widely used plugins (and a few less-popular legacy ones) live in this repo,
131+
we're reluctant to add more.
132+
133+
If you have a good reason why the CNI maintainers should take custody of your
134+
plugin, please open an issue or PR.

0 commit comments

Comments
 (0)