* Add Virtual Kubelet provider for VIC Initial virtual kubelet provider for VMware VIC. This provider currently handles creating and starting of a pod VM via the VIC portlayer and persona server. Image store handling via the VIC persona server. This provider currently requires the feature/wolfpack branch of VIC. * Added pod stop and delete. Also added node capacity. Added the ability to stop and delete pod VMs via VIC. Also retrieve node capacity information from the VCH. * Cleanup and readme file Some file clean up and added a Readme.md markdown file for the VIC provider. * Cleaned up errors, added function comments, moved operation code 1. Cleaned up error handling. Set standard for creating errors. 2. Added method prototype comments for all interface functions. 3. Moved PodCreator, PodStarter, PodStopper, and PodDeleter to a new folder. * Add mocking code and unit tests for podcache, podcreator, and podstarter Used the unit test framework used in VIC to handle assertions in the provider's unit test. Mocking code generated using OSS project mockery, which is compatible with the testify assertion framework. * Vendored packages for the VIC provider Requires feature/wolfpack branch of VIC and a few specific commit sha of projects used within VIC. * Implementation of POD Stopper and Deleter unit tests (#4) * Updated files for initial PR
386 lines
16 KiB
Plaintext
386 lines
16 KiB
Plaintext
OpenContainers Specifications
|
|
|
|
Changes with v1.0.0-rc2:
|
|
Additions:
|
|
|
|
* config-linux: Add new architectures from libseccomp 2.3.0 (#505)
|
|
* schema: Add JSON Schema for state JSON and move schema.json to
|
|
config-schema.json and similar (#481, #498, #519)
|
|
|
|
Minor fixes and documentation:
|
|
|
|
* Add compliance language for platforms and architectures (#527)
|
|
* Remove "unconditionally compliant" language (#553)
|
|
* bundle: Remove distribution references (#487)
|
|
* runtime: Fix sub-bullet indentation (#495)
|
|
* config: Replace Arch fstab reference with mount(8) (#443)
|
|
* config: Synchronize comments between Markdown and Go (#525)
|
|
* config: Drop v0.x compatibility statement (#488)
|
|
* config-linux: RFC 2119 wording for cgroupsPath (#493)
|
|
* config-linux: Make linux.devices and linux.resources.devices
|
|
optional (#526)
|
|
* config-linux: Extend no-tweak requirement to runtime namespaces (#538)
|
|
* schema: Add hook.timeout (#544)
|
|
* schema: Add missing '"type": "object"' (#528)
|
|
* schema: Run 'make fmt' and remove duplicates (#546, #551)
|
|
* schema/config: Make 'hostname' optional (#491)
|
|
* schema/config-linux: Add linux.resources.devices (#550)
|
|
* specs-go/config: Add Solaris tags to User properties (#496)
|
|
* specs-go/config: Make Linux and Solaris omitempty again (#502)
|
|
* specs-go/config: Make KernelTCP and ClassID omitempty (#531)
|
|
* specs-go/config: Fix "specified" typo for ApparmorProfile (#503)
|
|
* Makefile: Remove code-of-conduct.md and version.md when clean (#541)
|
|
* implementations: Mention cc-oci-runtime (#539)
|
|
* Use filesystem instead of file system (#529)
|
|
* .pullapprove: Add DCO check via PullApprove
|
|
* GOVERNANCE: Add governance and release process docs (#521)
|
|
* README: Change meeting time from 10am to 2pm Pacific (#524)
|
|
* README: Update conference-call phone number (#512, #515)
|
|
|
|
Changes with v1.0.0-rc1:
|
|
Breaking changes:
|
|
|
|
* runtime: Split create and start, #384, #450, #463, #464, #467,
|
|
#468
|
|
* runtime: Remove exec, #388
|
|
* runtime: Enviroment MUST match the configuration, #397
|
|
* config: Runtime MUST generate errors for unsupported platforms,
|
|
#441
|
|
* config: Windows mount destinations MUST NOT be nested, #437
|
|
|
|
Additions:
|
|
|
|
* solaris: Added platform-specific configuration, #411, #424, #431,
|
|
#436
|
|
* runtime: Add 'annotations' and 'status' to the state structure,
|
|
#462, #484, #485
|
|
* runtime: State no longer needs to be serialized as JSON, #446
|
|
* runtime-linux: Add /dev symbolic links, #449
|
|
* config: Allow absolute paths for root.path (which previously
|
|
required relative paths), #394
|
|
* config-linux: Add linux.mountLabel, #393
|
|
* config-linux: Add suport for cgroup namespace, #397
|
|
* config-linux: Runtime SHOULD NOT modify ownership of any
|
|
referenced filesystem (previously the restriction only applied to
|
|
the root filesystem), #452
|
|
* specs-go/seccomp: Add ppc and s390x to specs-go/config.go, #475
|
|
|
|
Minor fixes and documentation:
|
|
|
|
* README: Add project.md to the Table of Contents, #376
|
|
* README: Consistenly indent the Table of Contents, #400
|
|
* README: Link to LICENSE, #442
|
|
* README: Weekly call is OCI-wide, #378
|
|
* config: Explicit runtime namespace for hooks, #415
|
|
* config: Explicit container namespace for uid, gid, and
|
|
additionalGids, #412
|
|
* config: Fix 'string' -> 'array of strings' typo for process.args,
|
|
#416
|
|
* runtime: The runtime MAY validate config.json, #418
|
|
* runtime: Move errors section out of operations, #445
|
|
* runtime: MAY -> SHOULD for post-stop error logging, #410
|
|
* schema/README: Document JSON Schema usage, #360, #385
|
|
* schema: Minor description updates, #456, #461
|
|
* schema/validate: Support reading documents via stdin, #482
|
|
* .pullapprove: Automate review approval, #458, #474
|
|
* .gitignore: Hide more auto-generated files, #386, #392
|
|
* .travis: git-validation detects Travis now, #366
|
|
* .travis: Regress on failure to produce docs, #479
|
|
* Makefile: Filename docs.* -> oci-runtime-spec.*, #478
|
|
* Makefile: Add install.tools target, #349
|
|
* Makefile: Allow native pandoc implementations, #428, #448
|
|
* Makefile: Prefer Bash, #455
|
|
* Makefile: Travis support for .gitvalidation, #422
|
|
* specs-go/config: Add missing omitempties for Process.Terminal,
|
|
Root.Readonly, Spec.Linux, and Spec.Mounts, #408, #429, #430, #431
|
|
* specs-go/config: Remove incorrect omitempties for User.UID and
|
|
User.GID, #425
|
|
* specs-go/config: Drop platform-independent comment, #451
|
|
* version: Include version in generated documentation, #406
|
|
* *: Anchor examples, #348
|
|
* *: Fix remnants from SelinuxProcessLabel to SelinuxLabel rename,
|
|
#396
|
|
* *: Outsource code-of-conduct to TOB repository, #375, #413
|
|
* *: RFC 2119 consistency, #407, #409, #438, #444, #449
|
|
* *: Typo fixes, #390, #401
|
|
* *: Whitespace fixes and validation, #380, #381, #426
|
|
* ROADMAP: Remove stale targets, #435
|
|
|
|
Changes with v0.5.0:
|
|
Breaking changes:
|
|
|
|
* specs-go: Renamed the repository from opencontainers/specs to
|
|
opencontainers/runtime-spec, #365
|
|
|
|
Additions:
|
|
|
|
* config: Add 'timeout' for hooks, #346
|
|
* config-linux: Add 'maskedPaths' and 'readonlyPaths', #364
|
|
|
|
Minor fixes and documentation:
|
|
|
|
* JSON Schema bug-fixes and improved examples, #370
|
|
* README: Define "unconditionally compliant", #374
|
|
* config: Make Markdown canonical, #342
|
|
* config: Explicitly list mapping from symbolic names to UID/GIDs as
|
|
out-of-scope, #347
|
|
* config-linux: Require the runtime mount namespace for namespace
|
|
'path' values, #275
|
|
* config-linux: Reword kernelTCP docs, #377
|
|
* specs-go: Add omitempty to 'Device' and 'Namespace', #340
|
|
* .travis.yml: Use built-in 'go vet' and current 'go lint', dropping
|
|
Go < 1.5, #372, #352
|
|
* implementations: Expand ocitools scope to include testing, #328
|
|
* style: Move one-sentence-per-line rule from the README, #369
|
|
* style: Remove dangling parenthesis, #359
|
|
* README: Add a link to the IRC logs, #358
|
|
* Fix "manadate", "exmaple", "paramters", and "preferrably" typos,
|
|
#353, #354
|
|
|
|
Changes with v0.4.0:
|
|
Breaking changes:
|
|
|
|
* config: Move capabilities, selinuxProcessLabel, apparmorProfile,
|
|
and noNewPrivileges from the linux setting to the process setting
|
|
and make them optional, renaming selinuxProcessLabel to
|
|
selinuxLabel, #329, #330, #339
|
|
* runtime: Rename version to ociVerison in the state JSON, #225
|
|
* runtime: Remove the directory requirement for storing state, now
|
|
that there is a 'state' operation, #225, #334
|
|
* go: Shift *.go to specs-go/*.go, #276
|
|
* config: Move rlimits to process, #341
|
|
* go: Move config_linux.go content into config.go, removing
|
|
LinuxSpec, #310
|
|
|
|
Additions:
|
|
|
|
* schema: Add JSON Schema (and validator) for `config.json`, #313
|
|
* config: Add annotations for opaque-to-the-runtime data, #331
|
|
* config-linux: Make seccomp optional, #333
|
|
* runtime: Added additional operations: state, stop, and exec.
|
|
#225
|
|
|
|
Minor fixes and documentation:
|
|
|
|
* config-linux: Change mount type from *rune to *string and fix
|
|
octal fileMode examples, #323
|
|
* runtime: RFC 2119 phrasing for the lifecycle, #225
|
|
* README: Add a full example of config.json, #276
|
|
* README: Replace BlueJeans with UberConference, #326, #338
|
|
* style: Document Go-pointer exceptions, #317
|
|
|
|
Changes with v0.3.0:
|
|
Breaking changes:
|
|
|
|
* config: Single, unified config file, #284
|
|
* config: cwd is a required default, and must be absolute, #286,
|
|
#307, #308, #312
|
|
* config: qualify the name of the version field, #309
|
|
* config-linux: Convert classID from hex to uint32, #296
|
|
* config-linux: Separate mknod from cgroups, #298
|
|
|
|
Additions:
|
|
|
|
* config-linux: Add NoNewPrivileges setting for linux, #290
|
|
|
|
Minor fixes and documentation:
|
|
|
|
* config-linux: clarify oom_score_adj, #236, #292
|
|
* config-linux: Update links to cgroups documentation, #318
|
|
* config-linux: Remove pointers for slices preferring omitempty
|
|
tag instead, #316
|
|
* README: add runtime, bundle, and hook author user, #280
|
|
* ROADMAP: reshuffled and split into GitHub issues, #300, #301,
|
|
#304, #306
|
|
* style: Collect established styles in a discoverable location, #287, #311
|
|
|
|
Changes with v0.2.0:
|
|
* Add Apparmor, Selinux and Seccomp
|
|
* Add Apparmor, Selinux and Seccomp sections
|
|
* Add bind mount example
|
|
* Add fd section for linux container process
|
|
* Add Go types for specification
|
|
* *: adding a code of conduct
|
|
* Adding cgroups path to the Spec.
|
|
* .: Adding listing of implementations
|
|
* .: adding travis file for future CI
|
|
* Add license and DCO information for contributions
|
|
* Add linux spec description
|
|
* Add MAINTAINERS file
|
|
* Add memory swappiness to linux spec
|
|
* Add runtime state configuration and structs
|
|
* Adds a section for user namespace mappings
|
|
* Adds link to kernel cgroups documentation
|
|
* Adds section for Linux Rlimits
|
|
* Adds section for Linux Sysctl.
|
|
* Adds user namespace to the list of namespaces
|
|
* bundle: add initial run use case
|
|
* bundle: Fix 'and any number of and other related' typo
|
|
* bundle.md: clarify arbitrary/conventional dirnames
|
|
* bundle.md: fix link formatting
|
|
* bundle.md: fix off-by-one error
|
|
* bundle.md: various updates to latest spec
|
|
* bundle: Move 'Linux sysctl' header to its own line
|
|
* Change commiter to committer
|
|
* Change Device field order in spec_linux.go, 'Path' should be top of the 'Type' field, according to the different of the config-linux.md, 'Path' field is the unique key.
|
|
* Change layout of mountpoints and mounts
|
|
* Change the rlimit type to string instead of int
|
|
* Clarify behavior around namespaces paths.
|
|
* config: Add example additionalGids
|
|
* config: Add example cwd
|
|
* config: cleanup language on readonly parameter
|
|
* config: fix links to go files
|
|
* config-linux: specify the default devices/filesystems available
|
|
* config.md: clarify destination for mounts
|
|
* config.md: make the version a semver
|
|
* config.md: make the version field example a semver
|
|
* config.md: minor clean up of process specification
|
|
* config.md: reformat into a standard style
|
|
* config.md: update links to spec schema code
|
|
* config.md: various cleanup/consistency fixes
|
|
* config: minor cleanup
|
|
* Deduplicate the field of RootfsPropagation
|
|
* Define constants for Linux Namespace names
|
|
* Fix LinuxRuntime field
|
|
* Fix root object keys
|
|
* Fix typos in config.md
|
|
* Fix typos in the "Namespace types" section
|
|
* Fix typos in the rlimits section
|
|
* Fix Windows path escaping in example mount JSON
|
|
* JSON objects are easier to parse/manipulate
|
|
* made repo public. Added warning in README
|
|
* Make namespaces match runc
|
|
* make rootfs mount propagation mode settable
|
|
* Makes namespaces description linux specific
|
|
* *.md: markdown formatting
|
|
* Modify the capabilities constants to match header files like other constants
|
|
* Move linux specific options to linux spec
|
|
* README: add a rule for paragraph formatting in markdown
|
|
* README: Document BlueJeans and wiki archive for meetings
|
|
* README: Document pre-meeting agenda alteration
|
|
* README: Document YouTube and IRC backchannel for meetings
|
|
* README: Focus on local runtime (create/start/stop)
|
|
* README.md: Add a git commit style guide
|
|
* README.md: contribution about discussion
|
|
* README: releases section
|
|
* README: Remove blank line from infrastructure-agnostic paragraph
|
|
* removed boilerplate file
|
|
* *: remove superfluous comma in code-of-conduct
|
|
* Remove trailing whitespace
|
|
* Rename SystemProperties to Sysctl
|
|
* Rename the header "Access to devices" to "Devices" to fit with the config
|
|
* *: re-org the spec
|
|
* Replace Linux.Device with more specific config
|
|
* restore formatting
|
|
* Return golang compliant names for UID and GID in User
|
|
* Return golint-compliant naming for mappings
|
|
* runtime: Add prestart/poststop hooks
|
|
* runtime_config: comments for golint
|
|
* runtime-config-linux: Drop 'Linux' from headers
|
|
* runtime_config_linux: Fix 'LinuxSpec' -> 'LinuxRuntimeSpec' in comment
|
|
* runtime-config-linux: One sentence per line for opening two paragraphs
|
|
* runtime-config: Remove blank lines from the end of files
|
|
* runtime-config: Remove 'destination' docs from mounts
|
|
* runtime.md: convert oc to runc
|
|
* runtime: use opencontainer vs oci
|
|
* *: small spelling fixes
|
|
* Specific platform specific user struct for spec
|
|
* spec: linux: add support for the PIDs cgroup
|
|
* spec_linux: conform to `golint`
|
|
* spec_linux.go: Rename IDMapping fields to follow syscall.SysProcIDMap
|
|
* spec_linux: remove ending periods on one-line comments
|
|
* spec: rename ocp to oci and add a link
|
|
* specs: add json notation
|
|
* specs: align the ascii graph
|
|
* specs: fix the description for the [ug]idMappings
|
|
* specs: introduce the concept of a runtime.json
|
|
* .tools: cleanup the commit entry
|
|
* .tools: repo validation tool
|
|
* travis: fix DCO validation for merges
|
|
* typo: containers -> container's
|
|
* typo: the -> for
|
|
* Update config-linux for better formatting on values
|
|
* Update README.md
|
|
* Update readme with weekly call and mailing list
|
|
* Update runtime.md
|
|
* Update runtime.md
|
|
* Update runtime.md
|
|
* version: more explicit version for comparison
|
|
|
|
Changes with v0.1.0:
|
|
* Add Architecture field to Seccomp configuration in Linux runtime
|
|
* Add @hqhq as maintainer
|
|
* Add hyphen for host specific
|
|
* Adding Vishnu Kannan as a Maintainer.
|
|
* Add initial roadmap
|
|
* Add lifecycle for containers
|
|
* Add oom_score_adj to the runtime Spec.
|
|
* Add post-start hooks
|
|
* Add Seccomp constants to description of Linux runtime spec
|
|
* Add Seccomp constants to Linux runtime config
|
|
* Add some clarity around the state.json file
|
|
* adds text describing the upper-case keywords used in the spec
|
|
* add testing framework to ROADMAP
|
|
* Appropriately mark optional fields as omitempty
|
|
* cgroup: Add support for memory.kmem.tcp.limit_in_bytes
|
|
* Change HugepageLimit.Limit type to uint64
|
|
* Change the behavior when cgroupsPath is absent
|
|
* Change version from 0.1.0 to 0.2.0
|
|
* Clarify the semantics of hook elements
|
|
* Cleanup bundle.md
|
|
* Cleanup principles
|
|
* config: linux: update description of PidsLimit
|
|
* config: Require a new UTS namespace for config.json's hostname
|
|
* config: Require the runtime to mount Spec.Mounts in order
|
|
* convert **name** to **`name`**
|
|
* Example lists "root' but text mentions "bundlePath"
|
|
* Fix an extra space in VersionMinor
|
|
* Fix golint warnings
|
|
* Fix typo in BlockIO struct comment
|
|
* Fix typo in Filesystem Bundle
|
|
* Fix value of swappiness
|
|
* glossary: Provide a quick overview of important terms
|
|
* glossary: Specify UTF-8 for all our JSON
|
|
* hooks: deduplicate the hooks docs
|
|
* implementations: Link to kunalkushwaha/octool
|
|
* implementations: Link to mrunalp/ocitools
|
|
* lifecycle: Don't require /run/opencontainer/<runtime>/containers
|
|
* lifecycle: Mention runtime.json
|
|
* lifecycle: no hypens
|
|
* MAINTAINERS: add tianon per the charter
|
|
* MAINTAINERS: correct Vish's github account
|
|
* Makefile: Add glossary to DOC_FILES
|
|
* Make optional Cgroup related config params pointers along with `omitempty` json tag.
|
|
* Mark RootfsPropagation as omitempty
|
|
* *.md: update TOC and links
|
|
* move the description of Rlimits before example
|
|
* move the description of user ns mapping to proper file
|
|
* principles: Give principles their own home
|
|
* *: printable documents
|
|
* Project: document release process
|
|
* README: Fix some headers
|
|
* README: make header more concise
|
|
* remove blank char from blank line
|
|
* Remove the unneeded build tag from the config_linux.go
|
|
* Remove trailing comma in hooks json example
|
|
* Rename State's Root to Bundle
|
|
* ROADMAP.md: remove the tail spaces
|
|
* roadmap: update links and add wiki reference
|
|
* runtime: Add 'version' to the state.json example
|
|
* runtime-config: add example label before json example
|
|
* runtime-config: add section about Hooks
|
|
* runtime: config: linux: add cgroups information
|
|
* runtime: config: linux: Edit BlockIO struct
|
|
* runtime: config: linux: Fix typo and trailing commas in json example
|
|
* runtime_config_linux.go: add missing pointer
|
|
* runtime-config-linux.md: fix the type of cpus and mems
|
|
* runtime.md: fix spacing
|
|
* Talk about host specific/independent instead of mutability
|
|
* .tools: commit validator is a separate project
|
|
* .tools: make GetFetchHeadCommit do what it says
|
|
* .travis.yml: add go 1.5.1, update from 1.4.2 to 1.4.3
|
|
* Update readme with wiki link to minutes
|
|
* Update Typo in ROADMAP.md
|
|
* Use unsigned for IDs
|
|
* version: introduce a string for dev indication
|