Skip to content

Commit 853746e

Browse files
authored
Merge pull request opencontainers#1 from runcom/master
Hello world!
2 parents c5e4f8b + fe363aa commit 853746e

File tree

107 files changed

+15056
-24
lines changed

Some content is hidden

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

107 files changed

+15056
-24
lines changed

.gitignore

Lines changed: 3 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -1,24 +1,3 @@
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
1+
/oci-create-runtime-bundle
2+
/oci-unpack
3+
/oci-image-validate

.header

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
// Copyright 2016 The Linux Foundation
2+
//
3+
// Licensed under the Apache License, Version 2.0 (the "License");
4+
// you may not use this file except in compliance with the License.
5+
// You may obtain a copy of the License at
6+
//
7+
// http://www.apache.org/licenses/LICENSE-2.0
8+
//
9+
// Unless required by applicable law or agreed to in writing, software
10+
// distributed under the License is distributed on an "AS IS" BASIS,
11+
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12+
// See the License for the specific language governing permissions and
13+
// limitations under the License.
14+

.pullapprove.yml

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
approve_by_comment: true
2+
approve_regex: '^(Approved|lgtm|LGTM|:shipit:|:star:|:\+1:|:ship:)'
3+
reject_regex: ^Rejected
4+
reset_on_push: true
5+
signed_off_by:
6+
required: true
7+
reviewers:
8+
teams:
9+
- image-spec-maintainers
10+
name: default
11+
required: 2

.tool/check-license

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
#!/usr/bin/env bash
2+
3+
set -o errexit
4+
set -o nounset
5+
set -o pipefail
6+
7+
ret=0
8+
9+
for file in $(find . -type f -iname '*.go' ! -path './vendor/*'); do
10+
(head -n3 "${file}" | grep -Eq "(Copyright|generated|GENERATED)") || (echo "${file}:missing license header" && ret=1)
11+
done
12+
13+
exit $ret

.tool/lint

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
#!/usr/bin/env bash
2+
3+
set -o errexit
4+
set -o nounset
5+
set -o pipefail
6+
7+
if [ ! $(command -v gometalinter) ]; then
8+
go get -u github.com/alecthomas/gometalinter
9+
gometalinter --update --install
10+
fi
11+
12+
for d in $(find . -type d -not -iwholename '*.git*' -a -not -iname '.tool' -a -not -iwholename '*vendor*'); do
13+
gometalinter \
14+
--exclude='error return value not checked.*(Close|Log|Print).*\(errcheck\)$' \
15+
--exclude='.*_test\.go:.*error return value not checked.*\(errcheck\)$' \
16+
--exclude='duplicate of.*_test.go.*\(dupl\)$' \
17+
--exclude='schema/fs.go' \
18+
--exclude='duplicate of.*main.go.*\(dupl\)$' \
19+
--disable=aligncheck \
20+
--disable=gotype \
21+
--disable=gas \
22+
--cyclo-over=35 \
23+
--tests \
24+
--deadline=10s "${d}"
25+
done

.travis.yml

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
language: go
2+
go:
3+
- 1.6
4+
- 1.7
5+
6+
sudo: required
7+
8+
before_script:
9+
- export PATH=$HOME/gopath/bin:$PATH
10+
11+
before_install:
12+
- make install.tools
13+
- go get -u github.com/alecthomas/gometalinter
14+
- gometalinter --install --update
15+
- go get -t -d ./...
16+
17+
install: true
18+
19+
script:
20+
- make .gitvalidation
21+
- make lint
22+
- make check-license
23+
- make test
24+
- make tools

CONTRIBUTING.md

Lines changed: 119 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,119 @@
1+
## Contribution Guidelines
2+
3+
### Pull requests are always welcome
4+
5+
We are always thrilled to receive pull requests, and do our best to
6+
process them as fast as possible. Not sure if that typo is worth a pull
7+
request? Do it! We will appreciate it.
8+
9+
If your pull request is not accepted on the first try, don't be
10+
discouraged! If there's a problem with the implementation, hopefully you
11+
received feedback on what to improve.
12+
13+
We're trying very hard to keep the project lean and focused. We don't want it
14+
to do everything for everybody. This means that we might decide against
15+
incorporating a new feature.
16+
17+
18+
### Conventions
19+
20+
Fork the repo and make changes on your fork in a feature branch:
21+
22+
- If it's a bugfix branch, name it XXX-something where XXX is the number of the
23+
issue
24+
- If it's a feature branch, create an enhancement issue to announce your
25+
intentions, and name it XXX-something where XXX is the number of the issue.
26+
27+
Small changes or changes that have been discussed on the project mailing list
28+
may be submitted without a leader issue, in which case you are free to name
29+
your branch however you like.
30+
31+
If the project has a test suite, submit unit tests for your changes. Take a
32+
look at existing tests for inspiration. Run the full test suite on your branch
33+
before submitting a pull request.
34+
35+
Update the documentation when creating or modifying features. Test
36+
your documentation changes for clarity, concision, and correctness, as
37+
well as a clean documentation build. See ``docs/README.md`` for more
38+
information on building the docs and how docs get released.
39+
40+
Write clean code. Universally formatted code promotes ease of writing, reading,
41+
and maintenance. Always run `gofmt -s -w file.go` on each changed file before
42+
committing your changes. Most editors have plugins that do this automatically.
43+
44+
Pull requests descriptions should be as clear as possible and include a
45+
reference to all the issues that they address.
46+
47+
Commit messages must start with a capitalized and short summary
48+
written in the imperative, followed by an optional, more detailed
49+
explanatory text which is separated from the summary by an empty line.
50+
51+
Code review comments may be added to your pull request. Discuss, then make the
52+
suggested modifications and push additional commits to your feature branch. Be
53+
sure to post a comment after pushing. The new commits will show up in the pull
54+
request automatically, but the reviewers will not be notified unless you
55+
comment.
56+
57+
Before the pull request is merged, make sure that you squash your commits into
58+
logical units of work using `git rebase -i` and `git push -f`. After every
59+
commit the test suite (if any) should be passing. Include documentation changes
60+
in the same commit so that a revert would remove all traces of the feature or
61+
fix.
62+
63+
Commits that fix or close an issue should include a reference like `Closes #XXX`
64+
or `Fixes #XXX`, which will automatically close the issue when merged.
65+
66+
### Sign your work
67+
68+
The sign-off is a simple line at the end of the explanation for the
69+
patch, which certifies that you wrote it or otherwise have the right to
70+
pass it on as an open-source patch. The rules are pretty simple: if you
71+
can certify the below (from
72+
[developercertificate.org](http://developercertificate.org/)):
73+
74+
```
75+
Developer Certificate of Origin
76+
Version 1.1
77+
78+
Copyright (C) 2004, 2006 The Linux Foundation and its contributors.
79+
660 York Street, Suite 102,
80+
San Francisco, CA 94110 USA
81+
82+
Everyone is permitted to copy and distribute verbatim copies of this
83+
license document, but changing it is not allowed.
84+
85+
86+
Developer's Certificate of Origin 1.1
87+
88+
By making a contribution to this project, I certify that:
89+
90+
(a) The contribution was created in whole or in part by me and I
91+
have the right to submit it under the open source license
92+
indicated in the file; or
93+
94+
(b) The contribution is based upon previous work that, to the best
95+
of my knowledge, is covered under an appropriate open source
96+
license and I have the right under that license to submit that
97+
work with modifications, whether created in whole or in part
98+
by me, under the same open source license (unless I am
99+
permitted to submit under a different license), as indicated
100+
in the file; or
101+
102+
(c) The contribution was provided directly to me by some other
103+
person who certified (a), (b) or (c) and I have not modified
104+
it.
105+
106+
(d) I understand and agree that this project and the contribution
107+
are public and that a record of the contribution (including all
108+
personal information I submit with it, including my sign-off) is
109+
maintained indefinitely and may be redistributed consistent with
110+
this project or the open source license(s) involved.
111+
```
112+
113+
then you just add a line to every git commit message:
114+
115+
Signed-off-by: Joe Smith <[email protected]>
116+
117+
using your real name (sorry, no pseudonyms or anonymous contributions.)
118+
119+
You can add the sign off when creating the git commit via `git commit -s`.

GOVERNANCE.md

Lines changed: 70 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,70 @@
1+
# Project governance
2+
3+
The [OCI charter][charter] §5.b.viii tasks an OCI Project's maintainers (listed in the repository's MAINTAINERS file and sometimes referred to as "the TDC", [§5.e][charter]) with:
4+
5+
> Creating, maintaining and enforcing governance guidelines for the TDC, approved by the maintainers, and which shall be posted visibly for the TDC.
6+
7+
This section describes generic rules and procedures for fulfilling that mandate.
8+
9+
## Proposing a motion
10+
11+
A maintainer SHOULD propose a motion on the [email protected] mailing list (except [security issues](#security-issues)) with another maintainer as a co-sponsor.
12+
13+
## Voting
14+
15+
Voting on a proposed motion SHOULD happen on the [email protected] mailing list (except [security issues](#security-issues)) with maintainers posting LGTM or REJECT.
16+
Maintainers MAY also explicitly not vote by posting ABSTAIN (which is useful to revert a previous vote).
17+
Maintainers MAY post multiple times (e.g. as they revise their position based on feeback), but only their final post counts in the tally.
18+
A proposed motion is adopted if two-thirds of votes cast, a quorum having voted, are in favor of the release.
19+
20+
Voting SHOULD remain open for a week to collect feedback from the wider community and allow the maintainers to digest the proposed motion.
21+
Under exceptional conditions (e.g. non-major security fix releases) proposals which reach quorum with unanimous support MAY be adopted earlier.
22+
23+
A maintainer MAY choose to reply with REJECT.
24+
A maintainer posting a REJECT MUST include a list of concerns or links to written documentation for those concerns (e.g. GitHub issues or mailing-list threads).
25+
The maintainers SHOULD try to resolve the concerns and wait for the rejecting maintainer to change their opinion to LGTM.
26+
However, a motion MAY be adopted with REJECTs, as outlined in the previous paragraphs.
27+
28+
## Quorum
29+
30+
A quorum is established when at least two-thirds of maintainers have voted.
31+
32+
For projects that are not specifications, a [motion to release](#release-approval) MAY be adopted if the tally is at least three LGTMs and no REJECTs, even if three votes does not meet the usual two-thirds quorum.
33+
34+
## Security issues
35+
36+
Motions with sensitive security implications MUST be proposed on the [email protected] mailing list instead of [email protected], but should otherwise follow the standard [proposal](#proposing-a-motion) process.
37+
The [email protected] mailing list includes all members of the TOB.
38+
The TOB will contact the project maintainers and provide a channel for discussing and voting on the motion, but voting will otherwise follow the standard [voting](#voting) and [quorum](#quorum) rules.
39+
The TOB and project maintainers will work together to notify affected parties before making an adopted motion public.
40+
41+
## Amendments
42+
43+
The [project governance](#project-governance) rules and procedures MAY be amended or replaced using the procedures themselves.
44+
The MAINTAINERS of this project governance document is the total set of MAINTAINERS from all Open Containers projects (runC, runtime-spec, and image-spec).
45+
46+
## Subject templates
47+
48+
Maintainers are busy and get lots of email.
49+
To make project proposals recognizable, proposed motions SHOULD use the following subject templates.
50+
51+
### Proposing a motion
52+
53+
> [{project} VOTE]: {motion description} (closes {end of voting window})
54+
55+
For example:
56+
57+
> [runtime-spec VOTE]: Tag 0647920 as 1.0.0-rc (closes 2016-06-03 20:00 UTC)
58+
59+
### Tallying results
60+
61+
After voting closes, a maintainer SHOULD post a tally to the motion thread with a subject template like:
62+
63+
> [{project} {status}]: {motion description} (+{LGTMs} -{REJECTs} #{ABSTAINs})
64+
65+
Where `{status}` is either `adopted` or `rejected`.
66+
For example:
67+
68+
> [runtime-spec adopted]: Tag 0647920 as 1.0.0-rc (+6 -0 #3)
69+
70+
[charter]: https://www.opencontainers.org/about/governance

MAINTAINERS

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
Brandon Philips <[email protected]> (@philips)
2+
Brendan Burns <[email protected]> (@brendandburns)
3+
Jason Bouzane <[email protected]> (@jbouzane)
4+
John Starks <[email protected]> (@jstarks)
5+
Jonathan Boulle <[email protected]> (@jonboulle)
6+
Stephen Day <[email protected]> (@stevvooe)
7+
Vincent Batts <[email protected]> (@vbatts)

0 commit comments

Comments
 (0)