mirror of
				https://github.com/optim-enterprises-bv/kubernetes.git
				synced 2025-11-03 19:58:17 +00:00 
			
		
		
		
	Update cadvisor and hcsshim versions
Signed-off-by: Kirtana Ashok <kiashok@microsoft.com>
This commit is contained in:
		
							
								
								
									
										201
									
								
								vendor/github.com/containerd/cgroups/v3/LICENSE
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										201
									
								
								vendor/github.com/containerd/cgroups/v3/LICENSE
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,201 @@
 | 
			
		||||
                                 Apache License
 | 
			
		||||
                           Version 2.0, January 2004
 | 
			
		||||
                        http://www.apache.org/licenses/
 | 
			
		||||
 | 
			
		||||
   TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
 | 
			
		||||
 | 
			
		||||
   1. Definitions.
 | 
			
		||||
 | 
			
		||||
      "License" shall mean the terms and conditions for use, reproduction,
 | 
			
		||||
      and distribution as defined by Sections 1 through 9 of this document.
 | 
			
		||||
 | 
			
		||||
      "Licensor" shall mean the copyright owner or entity authorized by
 | 
			
		||||
      the copyright owner that is granting the License.
 | 
			
		||||
 | 
			
		||||
      "Legal Entity" shall mean the union of the acting entity and all
 | 
			
		||||
      other entities that control, are controlled by, or are under common
 | 
			
		||||
      control with that entity. For the purposes of this definition,
 | 
			
		||||
      "control" means (i) the power, direct or indirect, to cause the
 | 
			
		||||
      direction or management of such entity, whether by contract or
 | 
			
		||||
      otherwise, or (ii) ownership of fifty percent (50%) or more of the
 | 
			
		||||
      outstanding shares, or (iii) beneficial ownership of such entity.
 | 
			
		||||
 | 
			
		||||
      "You" (or "Your") shall mean an individual or Legal Entity
 | 
			
		||||
      exercising permissions granted by this License.
 | 
			
		||||
 | 
			
		||||
      "Source" form shall mean the preferred form for making modifications,
 | 
			
		||||
      including but not limited to software source code, documentation
 | 
			
		||||
      source, and configuration files.
 | 
			
		||||
 | 
			
		||||
      "Object" form shall mean any form resulting from mechanical
 | 
			
		||||
      transformation or translation of a Source form, including but
 | 
			
		||||
      not limited to compiled object code, generated documentation,
 | 
			
		||||
      and conversions to other media types.
 | 
			
		||||
 | 
			
		||||
      "Work" shall mean the work of authorship, whether in Source or
 | 
			
		||||
      Object form, made available under the License, as indicated by a
 | 
			
		||||
      copyright notice that is included in or attached to the work
 | 
			
		||||
      (an example is provided in the Appendix below).
 | 
			
		||||
 | 
			
		||||
      "Derivative Works" shall mean any work, whether in Source or Object
 | 
			
		||||
      form, that is based on (or derived from) the Work and for which the
 | 
			
		||||
      editorial revisions, annotations, elaborations, or other modifications
 | 
			
		||||
      represent, as a whole, an original work of authorship. For the purposes
 | 
			
		||||
      of this License, Derivative Works shall not include works that remain
 | 
			
		||||
      separable from, or merely link (or bind by name) to the interfaces of,
 | 
			
		||||
      the Work and Derivative Works thereof.
 | 
			
		||||
 | 
			
		||||
      "Contribution" shall mean any work of authorship, including
 | 
			
		||||
      the original version of the Work and any modifications or additions
 | 
			
		||||
      to that Work or Derivative Works thereof, that is intentionally
 | 
			
		||||
      submitted to Licensor for inclusion in the Work by the copyright owner
 | 
			
		||||
      or by an individual or Legal Entity authorized to submit on behalf of
 | 
			
		||||
      the copyright owner. For the purposes of this definition, "submitted"
 | 
			
		||||
      means any form of electronic, verbal, or written communication sent
 | 
			
		||||
      to the Licensor or its representatives, including but not limited to
 | 
			
		||||
      communication on electronic mailing lists, source code control systems,
 | 
			
		||||
      and issue tracking systems that are managed by, or on behalf of, the
 | 
			
		||||
      Licensor for the purpose of discussing and improving the Work, but
 | 
			
		||||
      excluding communication that is conspicuously marked or otherwise
 | 
			
		||||
      designated in writing by the copyright owner as "Not a Contribution."
 | 
			
		||||
 | 
			
		||||
      "Contributor" shall mean Licensor and any individual or Legal Entity
 | 
			
		||||
      on behalf of whom a Contribution has been received by Licensor and
 | 
			
		||||
      subsequently incorporated within the Work.
 | 
			
		||||
 | 
			
		||||
   2. Grant of Copyright License. Subject to the terms and conditions of
 | 
			
		||||
      this License, each Contributor hereby grants to You a perpetual,
 | 
			
		||||
      worldwide, non-exclusive, no-charge, royalty-free, irrevocable
 | 
			
		||||
      copyright license to reproduce, prepare Derivative Works of,
 | 
			
		||||
      publicly display, publicly perform, sublicense, and distribute the
 | 
			
		||||
      Work and such Derivative Works in Source or Object form.
 | 
			
		||||
 | 
			
		||||
   3. Grant of Patent License. Subject to the terms and conditions of
 | 
			
		||||
      this License, each Contributor hereby grants to You a perpetual,
 | 
			
		||||
      worldwide, non-exclusive, no-charge, royalty-free, irrevocable
 | 
			
		||||
      (except as stated in this section) patent license to make, have made,
 | 
			
		||||
      use, offer to sell, sell, import, and otherwise transfer the Work,
 | 
			
		||||
      where such license applies only to those patent claims licensable
 | 
			
		||||
      by such Contributor that are necessarily infringed by their
 | 
			
		||||
      Contribution(s) alone or by combination of their Contribution(s)
 | 
			
		||||
      with the Work to which such Contribution(s) was submitted. If You
 | 
			
		||||
      institute patent litigation against any entity (including a
 | 
			
		||||
      cross-claim or counterclaim in a lawsuit) alleging that the Work
 | 
			
		||||
      or a Contribution incorporated within the Work constitutes direct
 | 
			
		||||
      or contributory patent infringement, then any patent licenses
 | 
			
		||||
      granted to You under this License for that Work shall terminate
 | 
			
		||||
      as of the date such litigation is filed.
 | 
			
		||||
 | 
			
		||||
   4. Redistribution. You may reproduce and distribute copies of the
 | 
			
		||||
      Work or Derivative Works thereof in any medium, with or without
 | 
			
		||||
      modifications, and in Source or Object form, provided that You
 | 
			
		||||
      meet the following conditions:
 | 
			
		||||
 | 
			
		||||
      (a) You must give any other recipients of the Work or
 | 
			
		||||
          Derivative Works a copy of this License; and
 | 
			
		||||
 | 
			
		||||
      (b) You must cause any modified files to carry prominent notices
 | 
			
		||||
          stating that You changed the files; and
 | 
			
		||||
 | 
			
		||||
      (c) You must retain, in the Source form of any Derivative Works
 | 
			
		||||
          that You distribute, all copyright, patent, trademark, and
 | 
			
		||||
          attribution notices from the Source form of the Work,
 | 
			
		||||
          excluding those notices that do not pertain to any part of
 | 
			
		||||
          the Derivative Works; and
 | 
			
		||||
 | 
			
		||||
      (d) If the Work includes a "NOTICE" text file as part of its
 | 
			
		||||
          distribution, then any Derivative Works that You distribute must
 | 
			
		||||
          include a readable copy of the attribution notices contained
 | 
			
		||||
          within such NOTICE file, excluding those notices that do not
 | 
			
		||||
          pertain to any part of the Derivative Works, in at least one
 | 
			
		||||
          of the following places: within a NOTICE text file distributed
 | 
			
		||||
          as part of the Derivative Works; within the Source form or
 | 
			
		||||
          documentation, if provided along with the Derivative Works; or,
 | 
			
		||||
          within a display generated by the Derivative Works, if and
 | 
			
		||||
          wherever such third-party notices normally appear. The contents
 | 
			
		||||
          of the NOTICE file are for informational purposes only and
 | 
			
		||||
          do not modify the License. You may add Your own attribution
 | 
			
		||||
          notices within Derivative Works that You distribute, alongside
 | 
			
		||||
          or as an addendum to the NOTICE text from the Work, provided
 | 
			
		||||
          that such additional attribution notices cannot be construed
 | 
			
		||||
          as modifying the License.
 | 
			
		||||
 | 
			
		||||
      You may add Your own copyright statement to Your modifications and
 | 
			
		||||
      may provide additional or different license terms and conditions
 | 
			
		||||
      for use, reproduction, or distribution of Your modifications, or
 | 
			
		||||
      for any such Derivative Works as a whole, provided Your use,
 | 
			
		||||
      reproduction, and distribution of the Work otherwise complies with
 | 
			
		||||
      the conditions stated in this License.
 | 
			
		||||
 | 
			
		||||
   5. Submission of Contributions. Unless You explicitly state otherwise,
 | 
			
		||||
      any Contribution intentionally submitted for inclusion in the Work
 | 
			
		||||
      by You to the Licensor shall be under the terms and conditions of
 | 
			
		||||
      this License, without any additional terms or conditions.
 | 
			
		||||
      Notwithstanding the above, nothing herein shall supersede or modify
 | 
			
		||||
      the terms of any separate license agreement you may have executed
 | 
			
		||||
      with Licensor regarding such Contributions.
 | 
			
		||||
 | 
			
		||||
   6. Trademarks. This License does not grant permission to use the trade
 | 
			
		||||
      names, trademarks, service marks, or product names of the Licensor,
 | 
			
		||||
      except as required for reasonable and customary use in describing the
 | 
			
		||||
      origin of the Work and reproducing the content of the NOTICE file.
 | 
			
		||||
 | 
			
		||||
   7. Disclaimer of Warranty. Unless required by applicable law or
 | 
			
		||||
      agreed to in writing, Licensor provides the Work (and each
 | 
			
		||||
      Contributor provides its Contributions) on an "AS IS" BASIS,
 | 
			
		||||
      WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
 | 
			
		||||
      implied, including, without limitation, any warranties or conditions
 | 
			
		||||
      of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
 | 
			
		||||
      PARTICULAR PURPOSE. You are solely responsible for determining the
 | 
			
		||||
      appropriateness of using or redistributing the Work and assume any
 | 
			
		||||
      risks associated with Your exercise of permissions under this License.
 | 
			
		||||
 | 
			
		||||
   8. Limitation of Liability. In no event and under no legal theory,
 | 
			
		||||
      whether in tort (including negligence), contract, or otherwise,
 | 
			
		||||
      unless required by applicable law (such as deliberate and grossly
 | 
			
		||||
      negligent acts) or agreed to in writing, shall any Contributor be
 | 
			
		||||
      liable to You for damages, including any direct, indirect, special,
 | 
			
		||||
      incidental, or consequential damages of any character arising as a
 | 
			
		||||
      result of this License or out of the use or inability to use the
 | 
			
		||||
      Work (including but not limited to damages for loss of goodwill,
 | 
			
		||||
      work stoppage, computer failure or malfunction, or any and all
 | 
			
		||||
      other commercial damages or losses), even if such Contributor
 | 
			
		||||
      has been advised of the possibility of such damages.
 | 
			
		||||
 | 
			
		||||
   9. Accepting Warranty or Additional Liability. While redistributing
 | 
			
		||||
      the Work or Derivative Works thereof, You may choose to offer,
 | 
			
		||||
      and charge a fee for, acceptance of support, warranty, indemnity,
 | 
			
		||||
      or other liability obligations and/or rights consistent with this
 | 
			
		||||
      License. However, in accepting such obligations, You may act only
 | 
			
		||||
      on Your own behalf and on Your sole responsibility, not on behalf
 | 
			
		||||
      of any other Contributor, and only if You agree to indemnify,
 | 
			
		||||
      defend, and hold each Contributor harmless for any liability
 | 
			
		||||
      incurred by, or claims asserted against, such Contributor by reason
 | 
			
		||||
      of your accepting any such warranty or additional liability.
 | 
			
		||||
 | 
			
		||||
   END OF TERMS AND CONDITIONS
 | 
			
		||||
 | 
			
		||||
   APPENDIX: How to apply the Apache License to your work.
 | 
			
		||||
 | 
			
		||||
      To apply the Apache License to your work, attach the following
 | 
			
		||||
      boilerplate notice, with the fields enclosed by brackets "[]"
 | 
			
		||||
      replaced with your own identifying information. (Don't include
 | 
			
		||||
      the brackets!)  The text should be enclosed in the appropriate
 | 
			
		||||
      comment syntax for the file format. We also recommend that a
 | 
			
		||||
      file or class name and description of purpose be included on the
 | 
			
		||||
      same "printed page" as the copyright notice for easier
 | 
			
		||||
      identification within third-party archives.
 | 
			
		||||
 | 
			
		||||
   Copyright [yyyy] [name of copyright owner]
 | 
			
		||||
 | 
			
		||||
   Licensed under the Apache License, Version 2.0 (the "License");
 | 
			
		||||
   you may not use this file except in compliance with the License.
 | 
			
		||||
   You may obtain a copy of the License at
 | 
			
		||||
 | 
			
		||||
       http://www.apache.org/licenses/LICENSE-2.0
 | 
			
		||||
 | 
			
		||||
   Unless required by applicable law or agreed to in writing, software
 | 
			
		||||
   distributed under the License is distributed on an "AS IS" BASIS,
 | 
			
		||||
   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 | 
			
		||||
   See the License for the specific language governing permissions and
 | 
			
		||||
   limitations under the License.
 | 
			
		||||
							
								
								
									
										17
									
								
								vendor/github.com/containerd/cgroups/v3/cgroup1/stats/doc.go
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										17
									
								
								vendor/github.com/containerd/cgroups/v3/cgroup1/stats/doc.go
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,17 @@
 | 
			
		||||
/*
 | 
			
		||||
   Copyright The containerd Authors.
 | 
			
		||||
 | 
			
		||||
   Licensed under the Apache License, Version 2.0 (the "License");
 | 
			
		||||
   you may not use this file except in compliance with the License.
 | 
			
		||||
   You may obtain a copy of the License at
 | 
			
		||||
 | 
			
		||||
       http://www.apache.org/licenses/LICENSE-2.0
 | 
			
		||||
 | 
			
		||||
   Unless required by applicable law or agreed to in writing, software
 | 
			
		||||
   distributed under the License is distributed on an "AS IS" BASIS,
 | 
			
		||||
   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 | 
			
		||||
   See the License for the specific language governing permissions and
 | 
			
		||||
   limitations under the License.
 | 
			
		||||
*/
 | 
			
		||||
 | 
			
		||||
package stats
 | 
			
		||||
							
								
								
									
										1959
									
								
								vendor/github.com/containerd/cgroups/v3/cgroup1/stats/metrics.pb.go
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										1959
									
								
								vendor/github.com/containerd/cgroups/v3/cgroup1/stats/metrics.pb.go
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							
							
								
								
									
										771
									
								
								vendor/github.com/containerd/cgroups/v3/cgroup1/stats/metrics.pb.txt
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										771
									
								
								vendor/github.com/containerd/cgroups/v3/cgroup1/stats/metrics.pb.txt
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,771 @@
 | 
			
		||||
file {
 | 
			
		||||
  name: "github.com/containerd/cgroups/cgroup1/stats/metrics.proto"
 | 
			
		||||
  package: "io.containerd.cgroups.v1"
 | 
			
		||||
  message_type {
 | 
			
		||||
    name: "Metrics"
 | 
			
		||||
    field {
 | 
			
		||||
      name: "hugetlb"
 | 
			
		||||
      number: 1
 | 
			
		||||
      label: LABEL_REPEATED
 | 
			
		||||
      type: TYPE_MESSAGE
 | 
			
		||||
      type_name: ".io.containerd.cgroups.v1.HugetlbStat"
 | 
			
		||||
      json_name: "hugetlb"
 | 
			
		||||
    }
 | 
			
		||||
    field {
 | 
			
		||||
      name: "pids"
 | 
			
		||||
      number: 2
 | 
			
		||||
      label: LABEL_OPTIONAL
 | 
			
		||||
      type: TYPE_MESSAGE
 | 
			
		||||
      type_name: ".io.containerd.cgroups.v1.PidsStat"
 | 
			
		||||
      json_name: "pids"
 | 
			
		||||
    }
 | 
			
		||||
    field {
 | 
			
		||||
      name: "cpu"
 | 
			
		||||
      number: 3
 | 
			
		||||
      label: LABEL_OPTIONAL
 | 
			
		||||
      type: TYPE_MESSAGE
 | 
			
		||||
      type_name: ".io.containerd.cgroups.v1.CPUStat"
 | 
			
		||||
      json_name: "cpu"
 | 
			
		||||
    }
 | 
			
		||||
    field {
 | 
			
		||||
      name: "memory"
 | 
			
		||||
      number: 4
 | 
			
		||||
      label: LABEL_OPTIONAL
 | 
			
		||||
      type: TYPE_MESSAGE
 | 
			
		||||
      type_name: ".io.containerd.cgroups.v1.MemoryStat"
 | 
			
		||||
      json_name: "memory"
 | 
			
		||||
    }
 | 
			
		||||
    field {
 | 
			
		||||
      name: "blkio"
 | 
			
		||||
      number: 5
 | 
			
		||||
      label: LABEL_OPTIONAL
 | 
			
		||||
      type: TYPE_MESSAGE
 | 
			
		||||
      type_name: ".io.containerd.cgroups.v1.BlkIOStat"
 | 
			
		||||
      json_name: "blkio"
 | 
			
		||||
    }
 | 
			
		||||
    field {
 | 
			
		||||
      name: "rdma"
 | 
			
		||||
      number: 6
 | 
			
		||||
      label: LABEL_OPTIONAL
 | 
			
		||||
      type: TYPE_MESSAGE
 | 
			
		||||
      type_name: ".io.containerd.cgroups.v1.RdmaStat"
 | 
			
		||||
      json_name: "rdma"
 | 
			
		||||
    }
 | 
			
		||||
    field {
 | 
			
		||||
      name: "network"
 | 
			
		||||
      number: 7
 | 
			
		||||
      label: LABEL_REPEATED
 | 
			
		||||
      type: TYPE_MESSAGE
 | 
			
		||||
      type_name: ".io.containerd.cgroups.v1.NetworkStat"
 | 
			
		||||
      json_name: "network"
 | 
			
		||||
    }
 | 
			
		||||
    field {
 | 
			
		||||
      name: "cgroup_stats"
 | 
			
		||||
      number: 8
 | 
			
		||||
      label: LABEL_OPTIONAL
 | 
			
		||||
      type: TYPE_MESSAGE
 | 
			
		||||
      type_name: ".io.containerd.cgroups.v1.CgroupStats"
 | 
			
		||||
      json_name: "cgroupStats"
 | 
			
		||||
    }
 | 
			
		||||
    field {
 | 
			
		||||
      name: "memory_oom_control"
 | 
			
		||||
      number: 9
 | 
			
		||||
      label: LABEL_OPTIONAL
 | 
			
		||||
      type: TYPE_MESSAGE
 | 
			
		||||
      type_name: ".io.containerd.cgroups.v1.MemoryOomControl"
 | 
			
		||||
      json_name: "memoryOomControl"
 | 
			
		||||
    }
 | 
			
		||||
  }
 | 
			
		||||
  message_type {
 | 
			
		||||
    name: "HugetlbStat"
 | 
			
		||||
    field {
 | 
			
		||||
      name: "usage"
 | 
			
		||||
      number: 1
 | 
			
		||||
      label: LABEL_OPTIONAL
 | 
			
		||||
      type: TYPE_UINT64
 | 
			
		||||
      json_name: "usage"
 | 
			
		||||
    }
 | 
			
		||||
    field {
 | 
			
		||||
      name: "max"
 | 
			
		||||
      number: 2
 | 
			
		||||
      label: LABEL_OPTIONAL
 | 
			
		||||
      type: TYPE_UINT64
 | 
			
		||||
      json_name: "max"
 | 
			
		||||
    }
 | 
			
		||||
    field {
 | 
			
		||||
      name: "failcnt"
 | 
			
		||||
      number: 3
 | 
			
		||||
      label: LABEL_OPTIONAL
 | 
			
		||||
      type: TYPE_UINT64
 | 
			
		||||
      json_name: "failcnt"
 | 
			
		||||
    }
 | 
			
		||||
    field {
 | 
			
		||||
      name: "pagesize"
 | 
			
		||||
      number: 4
 | 
			
		||||
      label: LABEL_OPTIONAL
 | 
			
		||||
      type: TYPE_STRING
 | 
			
		||||
      json_name: "pagesize"
 | 
			
		||||
    }
 | 
			
		||||
  }
 | 
			
		||||
  message_type {
 | 
			
		||||
    name: "PidsStat"
 | 
			
		||||
    field {
 | 
			
		||||
      name: "current"
 | 
			
		||||
      number: 1
 | 
			
		||||
      label: LABEL_OPTIONAL
 | 
			
		||||
      type: TYPE_UINT64
 | 
			
		||||
      json_name: "current"
 | 
			
		||||
    }
 | 
			
		||||
    field {
 | 
			
		||||
      name: "limit"
 | 
			
		||||
      number: 2
 | 
			
		||||
      label: LABEL_OPTIONAL
 | 
			
		||||
      type: TYPE_UINT64
 | 
			
		||||
      json_name: "limit"
 | 
			
		||||
    }
 | 
			
		||||
  }
 | 
			
		||||
  message_type {
 | 
			
		||||
    name: "CPUStat"
 | 
			
		||||
    field {
 | 
			
		||||
      name: "usage"
 | 
			
		||||
      number: 1
 | 
			
		||||
      label: LABEL_OPTIONAL
 | 
			
		||||
      type: TYPE_MESSAGE
 | 
			
		||||
      type_name: ".io.containerd.cgroups.v1.CPUUsage"
 | 
			
		||||
      json_name: "usage"
 | 
			
		||||
    }
 | 
			
		||||
    field {
 | 
			
		||||
      name: "throttling"
 | 
			
		||||
      number: 2
 | 
			
		||||
      label: LABEL_OPTIONAL
 | 
			
		||||
      type: TYPE_MESSAGE
 | 
			
		||||
      type_name: ".io.containerd.cgroups.v1.Throttle"
 | 
			
		||||
      json_name: "throttling"
 | 
			
		||||
    }
 | 
			
		||||
  }
 | 
			
		||||
  message_type {
 | 
			
		||||
    name: "CPUUsage"
 | 
			
		||||
    field {
 | 
			
		||||
      name: "total"
 | 
			
		||||
      number: 1
 | 
			
		||||
      label: LABEL_OPTIONAL
 | 
			
		||||
      type: TYPE_UINT64
 | 
			
		||||
      json_name: "total"
 | 
			
		||||
    }
 | 
			
		||||
    field {
 | 
			
		||||
      name: "kernel"
 | 
			
		||||
      number: 2
 | 
			
		||||
      label: LABEL_OPTIONAL
 | 
			
		||||
      type: TYPE_UINT64
 | 
			
		||||
      json_name: "kernel"
 | 
			
		||||
    }
 | 
			
		||||
    field {
 | 
			
		||||
      name: "user"
 | 
			
		||||
      number: 3
 | 
			
		||||
      label: LABEL_OPTIONAL
 | 
			
		||||
      type: TYPE_UINT64
 | 
			
		||||
      json_name: "user"
 | 
			
		||||
    }
 | 
			
		||||
    field {
 | 
			
		||||
      name: "per_cpu"
 | 
			
		||||
      number: 4
 | 
			
		||||
      label: LABEL_REPEATED
 | 
			
		||||
      type: TYPE_UINT64
 | 
			
		||||
      json_name: "perCpu"
 | 
			
		||||
    }
 | 
			
		||||
  }
 | 
			
		||||
  message_type {
 | 
			
		||||
    name: "Throttle"
 | 
			
		||||
    field {
 | 
			
		||||
      name: "periods"
 | 
			
		||||
      number: 1
 | 
			
		||||
      label: LABEL_OPTIONAL
 | 
			
		||||
      type: TYPE_UINT64
 | 
			
		||||
      json_name: "periods"
 | 
			
		||||
    }
 | 
			
		||||
    field {
 | 
			
		||||
      name: "throttled_periods"
 | 
			
		||||
      number: 2
 | 
			
		||||
      label: LABEL_OPTIONAL
 | 
			
		||||
      type: TYPE_UINT64
 | 
			
		||||
      json_name: "throttledPeriods"
 | 
			
		||||
    }
 | 
			
		||||
    field {
 | 
			
		||||
      name: "throttled_time"
 | 
			
		||||
      number: 3
 | 
			
		||||
      label: LABEL_OPTIONAL
 | 
			
		||||
      type: TYPE_UINT64
 | 
			
		||||
      json_name: "throttledTime"
 | 
			
		||||
    }
 | 
			
		||||
  }
 | 
			
		||||
  message_type {
 | 
			
		||||
    name: "MemoryStat"
 | 
			
		||||
    field {
 | 
			
		||||
      name: "cache"
 | 
			
		||||
      number: 1
 | 
			
		||||
      label: LABEL_OPTIONAL
 | 
			
		||||
      type: TYPE_UINT64
 | 
			
		||||
      json_name: "cache"
 | 
			
		||||
    }
 | 
			
		||||
    field {
 | 
			
		||||
      name: "rss"
 | 
			
		||||
      number: 2
 | 
			
		||||
      label: LABEL_OPTIONAL
 | 
			
		||||
      type: TYPE_UINT64
 | 
			
		||||
      json_name: "rss"
 | 
			
		||||
    }
 | 
			
		||||
    field {
 | 
			
		||||
      name: "rss_huge"
 | 
			
		||||
      number: 3
 | 
			
		||||
      label: LABEL_OPTIONAL
 | 
			
		||||
      type: TYPE_UINT64
 | 
			
		||||
      json_name: "rssHuge"
 | 
			
		||||
    }
 | 
			
		||||
    field {
 | 
			
		||||
      name: "mapped_file"
 | 
			
		||||
      number: 4
 | 
			
		||||
      label: LABEL_OPTIONAL
 | 
			
		||||
      type: TYPE_UINT64
 | 
			
		||||
      json_name: "mappedFile"
 | 
			
		||||
    }
 | 
			
		||||
    field {
 | 
			
		||||
      name: "dirty"
 | 
			
		||||
      number: 5
 | 
			
		||||
      label: LABEL_OPTIONAL
 | 
			
		||||
      type: TYPE_UINT64
 | 
			
		||||
      json_name: "dirty"
 | 
			
		||||
    }
 | 
			
		||||
    field {
 | 
			
		||||
      name: "writeback"
 | 
			
		||||
      number: 6
 | 
			
		||||
      label: LABEL_OPTIONAL
 | 
			
		||||
      type: TYPE_UINT64
 | 
			
		||||
      json_name: "writeback"
 | 
			
		||||
    }
 | 
			
		||||
    field {
 | 
			
		||||
      name: "pg_pg_in"
 | 
			
		||||
      number: 7
 | 
			
		||||
      label: LABEL_OPTIONAL
 | 
			
		||||
      type: TYPE_UINT64
 | 
			
		||||
      json_name: "pgPgIn"
 | 
			
		||||
    }
 | 
			
		||||
    field {
 | 
			
		||||
      name: "pg_pg_out"
 | 
			
		||||
      number: 8
 | 
			
		||||
      label: LABEL_OPTIONAL
 | 
			
		||||
      type: TYPE_UINT64
 | 
			
		||||
      json_name: "pgPgOut"
 | 
			
		||||
    }
 | 
			
		||||
    field {
 | 
			
		||||
      name: "pg_fault"
 | 
			
		||||
      number: 9
 | 
			
		||||
      label: LABEL_OPTIONAL
 | 
			
		||||
      type: TYPE_UINT64
 | 
			
		||||
      json_name: "pgFault"
 | 
			
		||||
    }
 | 
			
		||||
    field {
 | 
			
		||||
      name: "pg_maj_fault"
 | 
			
		||||
      number: 10
 | 
			
		||||
      label: LABEL_OPTIONAL
 | 
			
		||||
      type: TYPE_UINT64
 | 
			
		||||
      json_name: "pgMajFault"
 | 
			
		||||
    }
 | 
			
		||||
    field {
 | 
			
		||||
      name: "inactive_anon"
 | 
			
		||||
      number: 11
 | 
			
		||||
      label: LABEL_OPTIONAL
 | 
			
		||||
      type: TYPE_UINT64
 | 
			
		||||
      json_name: "inactiveAnon"
 | 
			
		||||
    }
 | 
			
		||||
    field {
 | 
			
		||||
      name: "active_anon"
 | 
			
		||||
      number: 12
 | 
			
		||||
      label: LABEL_OPTIONAL
 | 
			
		||||
      type: TYPE_UINT64
 | 
			
		||||
      json_name: "activeAnon"
 | 
			
		||||
    }
 | 
			
		||||
    field {
 | 
			
		||||
      name: "inactive_file"
 | 
			
		||||
      number: 13
 | 
			
		||||
      label: LABEL_OPTIONAL
 | 
			
		||||
      type: TYPE_UINT64
 | 
			
		||||
      json_name: "inactiveFile"
 | 
			
		||||
    }
 | 
			
		||||
    field {
 | 
			
		||||
      name: "active_file"
 | 
			
		||||
      number: 14
 | 
			
		||||
      label: LABEL_OPTIONAL
 | 
			
		||||
      type: TYPE_UINT64
 | 
			
		||||
      json_name: "activeFile"
 | 
			
		||||
    }
 | 
			
		||||
    field {
 | 
			
		||||
      name: "unevictable"
 | 
			
		||||
      number: 15
 | 
			
		||||
      label: LABEL_OPTIONAL
 | 
			
		||||
      type: TYPE_UINT64
 | 
			
		||||
      json_name: "unevictable"
 | 
			
		||||
    }
 | 
			
		||||
    field {
 | 
			
		||||
      name: "hierarchical_memory_limit"
 | 
			
		||||
      number: 16
 | 
			
		||||
      label: LABEL_OPTIONAL
 | 
			
		||||
      type: TYPE_UINT64
 | 
			
		||||
      json_name: "hierarchicalMemoryLimit"
 | 
			
		||||
    }
 | 
			
		||||
    field {
 | 
			
		||||
      name: "hierarchical_swap_limit"
 | 
			
		||||
      number: 17
 | 
			
		||||
      label: LABEL_OPTIONAL
 | 
			
		||||
      type: TYPE_UINT64
 | 
			
		||||
      json_name: "hierarchicalSwapLimit"
 | 
			
		||||
    }
 | 
			
		||||
    field {
 | 
			
		||||
      name: "total_cache"
 | 
			
		||||
      number: 18
 | 
			
		||||
      label: LABEL_OPTIONAL
 | 
			
		||||
      type: TYPE_UINT64
 | 
			
		||||
      json_name: "totalCache"
 | 
			
		||||
    }
 | 
			
		||||
    field {
 | 
			
		||||
      name: "total_rss"
 | 
			
		||||
      number: 19
 | 
			
		||||
      label: LABEL_OPTIONAL
 | 
			
		||||
      type: TYPE_UINT64
 | 
			
		||||
      json_name: "totalRss"
 | 
			
		||||
    }
 | 
			
		||||
    field {
 | 
			
		||||
      name: "total_rss_huge"
 | 
			
		||||
      number: 20
 | 
			
		||||
      label: LABEL_OPTIONAL
 | 
			
		||||
      type: TYPE_UINT64
 | 
			
		||||
      json_name: "totalRssHuge"
 | 
			
		||||
    }
 | 
			
		||||
    field {
 | 
			
		||||
      name: "total_mapped_file"
 | 
			
		||||
      number: 21
 | 
			
		||||
      label: LABEL_OPTIONAL
 | 
			
		||||
      type: TYPE_UINT64
 | 
			
		||||
      json_name: "totalMappedFile"
 | 
			
		||||
    }
 | 
			
		||||
    field {
 | 
			
		||||
      name: "total_dirty"
 | 
			
		||||
      number: 22
 | 
			
		||||
      label: LABEL_OPTIONAL
 | 
			
		||||
      type: TYPE_UINT64
 | 
			
		||||
      json_name: "totalDirty"
 | 
			
		||||
    }
 | 
			
		||||
    field {
 | 
			
		||||
      name: "total_writeback"
 | 
			
		||||
      number: 23
 | 
			
		||||
      label: LABEL_OPTIONAL
 | 
			
		||||
      type: TYPE_UINT64
 | 
			
		||||
      json_name: "totalWriteback"
 | 
			
		||||
    }
 | 
			
		||||
    field {
 | 
			
		||||
      name: "total_pg_pg_in"
 | 
			
		||||
      number: 24
 | 
			
		||||
      label: LABEL_OPTIONAL
 | 
			
		||||
      type: TYPE_UINT64
 | 
			
		||||
      json_name: "totalPgPgIn"
 | 
			
		||||
    }
 | 
			
		||||
    field {
 | 
			
		||||
      name: "total_pg_pg_out"
 | 
			
		||||
      number: 25
 | 
			
		||||
      label: LABEL_OPTIONAL
 | 
			
		||||
      type: TYPE_UINT64
 | 
			
		||||
      json_name: "totalPgPgOut"
 | 
			
		||||
    }
 | 
			
		||||
    field {
 | 
			
		||||
      name: "total_pg_fault"
 | 
			
		||||
      number: 26
 | 
			
		||||
      label: LABEL_OPTIONAL
 | 
			
		||||
      type: TYPE_UINT64
 | 
			
		||||
      json_name: "totalPgFault"
 | 
			
		||||
    }
 | 
			
		||||
    field {
 | 
			
		||||
      name: "total_pg_maj_fault"
 | 
			
		||||
      number: 27
 | 
			
		||||
      label: LABEL_OPTIONAL
 | 
			
		||||
      type: TYPE_UINT64
 | 
			
		||||
      json_name: "totalPgMajFault"
 | 
			
		||||
    }
 | 
			
		||||
    field {
 | 
			
		||||
      name: "total_inactive_anon"
 | 
			
		||||
      number: 28
 | 
			
		||||
      label: LABEL_OPTIONAL
 | 
			
		||||
      type: TYPE_UINT64
 | 
			
		||||
      json_name: "totalInactiveAnon"
 | 
			
		||||
    }
 | 
			
		||||
    field {
 | 
			
		||||
      name: "total_active_anon"
 | 
			
		||||
      number: 29
 | 
			
		||||
      label: LABEL_OPTIONAL
 | 
			
		||||
      type: TYPE_UINT64
 | 
			
		||||
      json_name: "totalActiveAnon"
 | 
			
		||||
    }
 | 
			
		||||
    field {
 | 
			
		||||
      name: "total_inactive_file"
 | 
			
		||||
      number: 30
 | 
			
		||||
      label: LABEL_OPTIONAL
 | 
			
		||||
      type: TYPE_UINT64
 | 
			
		||||
      json_name: "totalInactiveFile"
 | 
			
		||||
    }
 | 
			
		||||
    field {
 | 
			
		||||
      name: "total_active_file"
 | 
			
		||||
      number: 31
 | 
			
		||||
      label: LABEL_OPTIONAL
 | 
			
		||||
      type: TYPE_UINT64
 | 
			
		||||
      json_name: "totalActiveFile"
 | 
			
		||||
    }
 | 
			
		||||
    field {
 | 
			
		||||
      name: "total_unevictable"
 | 
			
		||||
      number: 32
 | 
			
		||||
      label: LABEL_OPTIONAL
 | 
			
		||||
      type: TYPE_UINT64
 | 
			
		||||
      json_name: "totalUnevictable"
 | 
			
		||||
    }
 | 
			
		||||
    field {
 | 
			
		||||
      name: "usage"
 | 
			
		||||
      number: 33
 | 
			
		||||
      label: LABEL_OPTIONAL
 | 
			
		||||
      type: TYPE_MESSAGE
 | 
			
		||||
      type_name: ".io.containerd.cgroups.v1.MemoryEntry"
 | 
			
		||||
      json_name: "usage"
 | 
			
		||||
    }
 | 
			
		||||
    field {
 | 
			
		||||
      name: "swap"
 | 
			
		||||
      number: 34
 | 
			
		||||
      label: LABEL_OPTIONAL
 | 
			
		||||
      type: TYPE_MESSAGE
 | 
			
		||||
      type_name: ".io.containerd.cgroups.v1.MemoryEntry"
 | 
			
		||||
      json_name: "swap"
 | 
			
		||||
    }
 | 
			
		||||
    field {
 | 
			
		||||
      name: "kernel"
 | 
			
		||||
      number: 35
 | 
			
		||||
      label: LABEL_OPTIONAL
 | 
			
		||||
      type: TYPE_MESSAGE
 | 
			
		||||
      type_name: ".io.containerd.cgroups.v1.MemoryEntry"
 | 
			
		||||
      json_name: "kernel"
 | 
			
		||||
    }
 | 
			
		||||
    field {
 | 
			
		||||
      name: "kernel_tcp"
 | 
			
		||||
      number: 36
 | 
			
		||||
      label: LABEL_OPTIONAL
 | 
			
		||||
      type: TYPE_MESSAGE
 | 
			
		||||
      type_name: ".io.containerd.cgroups.v1.MemoryEntry"
 | 
			
		||||
      json_name: "kernelTcp"
 | 
			
		||||
    }
 | 
			
		||||
  }
 | 
			
		||||
  message_type {
 | 
			
		||||
    name: "MemoryEntry"
 | 
			
		||||
    field {
 | 
			
		||||
      name: "limit"
 | 
			
		||||
      number: 1
 | 
			
		||||
      label: LABEL_OPTIONAL
 | 
			
		||||
      type: TYPE_UINT64
 | 
			
		||||
      json_name: "limit"
 | 
			
		||||
    }
 | 
			
		||||
    field {
 | 
			
		||||
      name: "usage"
 | 
			
		||||
      number: 2
 | 
			
		||||
      label: LABEL_OPTIONAL
 | 
			
		||||
      type: TYPE_UINT64
 | 
			
		||||
      json_name: "usage"
 | 
			
		||||
    }
 | 
			
		||||
    field {
 | 
			
		||||
      name: "max"
 | 
			
		||||
      number: 3
 | 
			
		||||
      label: LABEL_OPTIONAL
 | 
			
		||||
      type: TYPE_UINT64
 | 
			
		||||
      json_name: "max"
 | 
			
		||||
    }
 | 
			
		||||
    field {
 | 
			
		||||
      name: "failcnt"
 | 
			
		||||
      number: 4
 | 
			
		||||
      label: LABEL_OPTIONAL
 | 
			
		||||
      type: TYPE_UINT64
 | 
			
		||||
      json_name: "failcnt"
 | 
			
		||||
    }
 | 
			
		||||
  }
 | 
			
		||||
  message_type {
 | 
			
		||||
    name: "MemoryOomControl"
 | 
			
		||||
    field {
 | 
			
		||||
      name: "oom_kill_disable"
 | 
			
		||||
      number: 1
 | 
			
		||||
      label: LABEL_OPTIONAL
 | 
			
		||||
      type: TYPE_UINT64
 | 
			
		||||
      json_name: "oomKillDisable"
 | 
			
		||||
    }
 | 
			
		||||
    field {
 | 
			
		||||
      name: "under_oom"
 | 
			
		||||
      number: 2
 | 
			
		||||
      label: LABEL_OPTIONAL
 | 
			
		||||
      type: TYPE_UINT64
 | 
			
		||||
      json_name: "underOom"
 | 
			
		||||
    }
 | 
			
		||||
    field {
 | 
			
		||||
      name: "oom_kill"
 | 
			
		||||
      number: 3
 | 
			
		||||
      label: LABEL_OPTIONAL
 | 
			
		||||
      type: TYPE_UINT64
 | 
			
		||||
      json_name: "oomKill"
 | 
			
		||||
    }
 | 
			
		||||
  }
 | 
			
		||||
  message_type {
 | 
			
		||||
    name: "BlkIOStat"
 | 
			
		||||
    field {
 | 
			
		||||
      name: "io_service_bytes_recursive"
 | 
			
		||||
      number: 1
 | 
			
		||||
      label: LABEL_REPEATED
 | 
			
		||||
      type: TYPE_MESSAGE
 | 
			
		||||
      type_name: ".io.containerd.cgroups.v1.BlkIOEntry"
 | 
			
		||||
      json_name: "ioServiceBytesRecursive"
 | 
			
		||||
    }
 | 
			
		||||
    field {
 | 
			
		||||
      name: "io_serviced_recursive"
 | 
			
		||||
      number: 2
 | 
			
		||||
      label: LABEL_REPEATED
 | 
			
		||||
      type: TYPE_MESSAGE
 | 
			
		||||
      type_name: ".io.containerd.cgroups.v1.BlkIOEntry"
 | 
			
		||||
      json_name: "ioServicedRecursive"
 | 
			
		||||
    }
 | 
			
		||||
    field {
 | 
			
		||||
      name: "io_queued_recursive"
 | 
			
		||||
      number: 3
 | 
			
		||||
      label: LABEL_REPEATED
 | 
			
		||||
      type: TYPE_MESSAGE
 | 
			
		||||
      type_name: ".io.containerd.cgroups.v1.BlkIOEntry"
 | 
			
		||||
      json_name: "ioQueuedRecursive"
 | 
			
		||||
    }
 | 
			
		||||
    field {
 | 
			
		||||
      name: "io_service_time_recursive"
 | 
			
		||||
      number: 4
 | 
			
		||||
      label: LABEL_REPEATED
 | 
			
		||||
      type: TYPE_MESSAGE
 | 
			
		||||
      type_name: ".io.containerd.cgroups.v1.BlkIOEntry"
 | 
			
		||||
      json_name: "ioServiceTimeRecursive"
 | 
			
		||||
    }
 | 
			
		||||
    field {
 | 
			
		||||
      name: "io_wait_time_recursive"
 | 
			
		||||
      number: 5
 | 
			
		||||
      label: LABEL_REPEATED
 | 
			
		||||
      type: TYPE_MESSAGE
 | 
			
		||||
      type_name: ".io.containerd.cgroups.v1.BlkIOEntry"
 | 
			
		||||
      json_name: "ioWaitTimeRecursive"
 | 
			
		||||
    }
 | 
			
		||||
    field {
 | 
			
		||||
      name: "io_merged_recursive"
 | 
			
		||||
      number: 6
 | 
			
		||||
      label: LABEL_REPEATED
 | 
			
		||||
      type: TYPE_MESSAGE
 | 
			
		||||
      type_name: ".io.containerd.cgroups.v1.BlkIOEntry"
 | 
			
		||||
      json_name: "ioMergedRecursive"
 | 
			
		||||
    }
 | 
			
		||||
    field {
 | 
			
		||||
      name: "io_time_recursive"
 | 
			
		||||
      number: 7
 | 
			
		||||
      label: LABEL_REPEATED
 | 
			
		||||
      type: TYPE_MESSAGE
 | 
			
		||||
      type_name: ".io.containerd.cgroups.v1.BlkIOEntry"
 | 
			
		||||
      json_name: "ioTimeRecursive"
 | 
			
		||||
    }
 | 
			
		||||
    field {
 | 
			
		||||
      name: "sectors_recursive"
 | 
			
		||||
      number: 8
 | 
			
		||||
      label: LABEL_REPEATED
 | 
			
		||||
      type: TYPE_MESSAGE
 | 
			
		||||
      type_name: ".io.containerd.cgroups.v1.BlkIOEntry"
 | 
			
		||||
      json_name: "sectorsRecursive"
 | 
			
		||||
    }
 | 
			
		||||
  }
 | 
			
		||||
  message_type {
 | 
			
		||||
    name: "BlkIOEntry"
 | 
			
		||||
    field {
 | 
			
		||||
      name: "op"
 | 
			
		||||
      number: 1
 | 
			
		||||
      label: LABEL_OPTIONAL
 | 
			
		||||
      type: TYPE_STRING
 | 
			
		||||
      json_name: "op"
 | 
			
		||||
    }
 | 
			
		||||
    field {
 | 
			
		||||
      name: "device"
 | 
			
		||||
      number: 2
 | 
			
		||||
      label: LABEL_OPTIONAL
 | 
			
		||||
      type: TYPE_STRING
 | 
			
		||||
      json_name: "device"
 | 
			
		||||
    }
 | 
			
		||||
    field {
 | 
			
		||||
      name: "major"
 | 
			
		||||
      number: 3
 | 
			
		||||
      label: LABEL_OPTIONAL
 | 
			
		||||
      type: TYPE_UINT64
 | 
			
		||||
      json_name: "major"
 | 
			
		||||
    }
 | 
			
		||||
    field {
 | 
			
		||||
      name: "minor"
 | 
			
		||||
      number: 4
 | 
			
		||||
      label: LABEL_OPTIONAL
 | 
			
		||||
      type: TYPE_UINT64
 | 
			
		||||
      json_name: "minor"
 | 
			
		||||
    }
 | 
			
		||||
    field {
 | 
			
		||||
      name: "value"
 | 
			
		||||
      number: 5
 | 
			
		||||
      label: LABEL_OPTIONAL
 | 
			
		||||
      type: TYPE_UINT64
 | 
			
		||||
      json_name: "value"
 | 
			
		||||
    }
 | 
			
		||||
  }
 | 
			
		||||
  message_type {
 | 
			
		||||
    name: "RdmaStat"
 | 
			
		||||
    field {
 | 
			
		||||
      name: "current"
 | 
			
		||||
      number: 1
 | 
			
		||||
      label: LABEL_REPEATED
 | 
			
		||||
      type: TYPE_MESSAGE
 | 
			
		||||
      type_name: ".io.containerd.cgroups.v1.RdmaEntry"
 | 
			
		||||
      json_name: "current"
 | 
			
		||||
    }
 | 
			
		||||
    field {
 | 
			
		||||
      name: "limit"
 | 
			
		||||
      number: 2
 | 
			
		||||
      label: LABEL_REPEATED
 | 
			
		||||
      type: TYPE_MESSAGE
 | 
			
		||||
      type_name: ".io.containerd.cgroups.v1.RdmaEntry"
 | 
			
		||||
      json_name: "limit"
 | 
			
		||||
    }
 | 
			
		||||
  }
 | 
			
		||||
  message_type {
 | 
			
		||||
    name: "RdmaEntry"
 | 
			
		||||
    field {
 | 
			
		||||
      name: "device"
 | 
			
		||||
      number: 1
 | 
			
		||||
      label: LABEL_OPTIONAL
 | 
			
		||||
      type: TYPE_STRING
 | 
			
		||||
      json_name: "device"
 | 
			
		||||
    }
 | 
			
		||||
    field {
 | 
			
		||||
      name: "hca_handles"
 | 
			
		||||
      number: 2
 | 
			
		||||
      label: LABEL_OPTIONAL
 | 
			
		||||
      type: TYPE_UINT32
 | 
			
		||||
      json_name: "hcaHandles"
 | 
			
		||||
    }
 | 
			
		||||
    field {
 | 
			
		||||
      name: "hca_objects"
 | 
			
		||||
      number: 3
 | 
			
		||||
      label: LABEL_OPTIONAL
 | 
			
		||||
      type: TYPE_UINT32
 | 
			
		||||
      json_name: "hcaObjects"
 | 
			
		||||
    }
 | 
			
		||||
  }
 | 
			
		||||
  message_type {
 | 
			
		||||
    name: "NetworkStat"
 | 
			
		||||
    field {
 | 
			
		||||
      name: "name"
 | 
			
		||||
      number: 1
 | 
			
		||||
      label: LABEL_OPTIONAL
 | 
			
		||||
      type: TYPE_STRING
 | 
			
		||||
      json_name: "name"
 | 
			
		||||
    }
 | 
			
		||||
    field {
 | 
			
		||||
      name: "rx_bytes"
 | 
			
		||||
      number: 2
 | 
			
		||||
      label: LABEL_OPTIONAL
 | 
			
		||||
      type: TYPE_UINT64
 | 
			
		||||
      json_name: "rxBytes"
 | 
			
		||||
    }
 | 
			
		||||
    field {
 | 
			
		||||
      name: "rx_packets"
 | 
			
		||||
      number: 3
 | 
			
		||||
      label: LABEL_OPTIONAL
 | 
			
		||||
      type: TYPE_UINT64
 | 
			
		||||
      json_name: "rxPackets"
 | 
			
		||||
    }
 | 
			
		||||
    field {
 | 
			
		||||
      name: "rx_errors"
 | 
			
		||||
      number: 4
 | 
			
		||||
      label: LABEL_OPTIONAL
 | 
			
		||||
      type: TYPE_UINT64
 | 
			
		||||
      json_name: "rxErrors"
 | 
			
		||||
    }
 | 
			
		||||
    field {
 | 
			
		||||
      name: "rx_dropped"
 | 
			
		||||
      number: 5
 | 
			
		||||
      label: LABEL_OPTIONAL
 | 
			
		||||
      type: TYPE_UINT64
 | 
			
		||||
      json_name: "rxDropped"
 | 
			
		||||
    }
 | 
			
		||||
    field {
 | 
			
		||||
      name: "tx_bytes"
 | 
			
		||||
      number: 6
 | 
			
		||||
      label: LABEL_OPTIONAL
 | 
			
		||||
      type: TYPE_UINT64
 | 
			
		||||
      json_name: "txBytes"
 | 
			
		||||
    }
 | 
			
		||||
    field {
 | 
			
		||||
      name: "tx_packets"
 | 
			
		||||
      number: 7
 | 
			
		||||
      label: LABEL_OPTIONAL
 | 
			
		||||
      type: TYPE_UINT64
 | 
			
		||||
      json_name: "txPackets"
 | 
			
		||||
    }
 | 
			
		||||
    field {
 | 
			
		||||
      name: "tx_errors"
 | 
			
		||||
      number: 8
 | 
			
		||||
      label: LABEL_OPTIONAL
 | 
			
		||||
      type: TYPE_UINT64
 | 
			
		||||
      json_name: "txErrors"
 | 
			
		||||
    }
 | 
			
		||||
    field {
 | 
			
		||||
      name: "tx_dropped"
 | 
			
		||||
      number: 9
 | 
			
		||||
      label: LABEL_OPTIONAL
 | 
			
		||||
      type: TYPE_UINT64
 | 
			
		||||
      json_name: "txDropped"
 | 
			
		||||
    }
 | 
			
		||||
  }
 | 
			
		||||
  message_type {
 | 
			
		||||
    name: "CgroupStats"
 | 
			
		||||
    field {
 | 
			
		||||
      name: "nr_sleeping"
 | 
			
		||||
      number: 1
 | 
			
		||||
      label: LABEL_OPTIONAL
 | 
			
		||||
      type: TYPE_UINT64
 | 
			
		||||
      json_name: "nrSleeping"
 | 
			
		||||
    }
 | 
			
		||||
    field {
 | 
			
		||||
      name: "nr_running"
 | 
			
		||||
      number: 2
 | 
			
		||||
      label: LABEL_OPTIONAL
 | 
			
		||||
      type: TYPE_UINT64
 | 
			
		||||
      json_name: "nrRunning"
 | 
			
		||||
    }
 | 
			
		||||
    field {
 | 
			
		||||
      name: "nr_stopped"
 | 
			
		||||
      number: 3
 | 
			
		||||
      label: LABEL_OPTIONAL
 | 
			
		||||
      type: TYPE_UINT64
 | 
			
		||||
      json_name: "nrStopped"
 | 
			
		||||
    }
 | 
			
		||||
    field {
 | 
			
		||||
      name: "nr_uninterruptible"
 | 
			
		||||
      number: 4
 | 
			
		||||
      label: LABEL_OPTIONAL
 | 
			
		||||
      type: TYPE_UINT64
 | 
			
		||||
      json_name: "nrUninterruptible"
 | 
			
		||||
    }
 | 
			
		||||
    field {
 | 
			
		||||
      name: "nr_io_wait"
 | 
			
		||||
      number: 5
 | 
			
		||||
      label: LABEL_OPTIONAL
 | 
			
		||||
      type: TYPE_UINT64
 | 
			
		||||
      json_name: "nrIoWait"
 | 
			
		||||
    }
 | 
			
		||||
  }
 | 
			
		||||
  options {
 | 
			
		||||
    go_package: "github.com/containerd/cgroups/cgroup1/stats"
 | 
			
		||||
  }
 | 
			
		||||
  syntax: "proto3"
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										158
									
								
								vendor/github.com/containerd/cgroups/v3/cgroup1/stats/metrics.proto
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										158
									
								
								vendor/github.com/containerd/cgroups/v3/cgroup1/stats/metrics.proto
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,158 @@
 | 
			
		||||
syntax = "proto3";
 | 
			
		||||
 | 
			
		||||
package io.containerd.cgroups.v1;
 | 
			
		||||
 | 
			
		||||
option go_package = "github.com/containerd/cgroups/cgroup1/stats";
 | 
			
		||||
 | 
			
		||||
message Metrics {
 | 
			
		||||
	repeated HugetlbStat hugetlb = 1;
 | 
			
		||||
	PidsStat pids = 2;
 | 
			
		||||
	CPUStat cpu = 3;
 | 
			
		||||
	MemoryStat memory = 4;
 | 
			
		||||
	BlkIOStat blkio = 5;
 | 
			
		||||
	RdmaStat rdma = 6;
 | 
			
		||||
	repeated NetworkStat network = 7;
 | 
			
		||||
	CgroupStats cgroup_stats = 8;
 | 
			
		||||
	MemoryOomControl memory_oom_control = 9;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
message HugetlbStat {
 | 
			
		||||
	uint64 usage = 1;
 | 
			
		||||
	uint64 max = 2;
 | 
			
		||||
	uint64 failcnt = 3;
 | 
			
		||||
	string pagesize = 4;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
message PidsStat {
 | 
			
		||||
	uint64 current = 1;
 | 
			
		||||
	uint64 limit = 2;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
message CPUStat {
 | 
			
		||||
	CPUUsage usage = 1;
 | 
			
		||||
	Throttle throttling = 2;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
message CPUUsage {
 | 
			
		||||
	// values in nanoseconds
 | 
			
		||||
	uint64 total = 1;
 | 
			
		||||
	uint64 kernel = 2;
 | 
			
		||||
	uint64 user = 3;
 | 
			
		||||
	repeated uint64 per_cpu = 4;
 | 
			
		||||
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
message Throttle {
 | 
			
		||||
	uint64 periods = 1;
 | 
			
		||||
	uint64 throttled_periods = 2;
 | 
			
		||||
	uint64 throttled_time = 3;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
message MemoryStat {
 | 
			
		||||
	uint64 cache = 1;
 | 
			
		||||
	uint64 rss = 2;
 | 
			
		||||
	uint64 rss_huge = 3;
 | 
			
		||||
	uint64 mapped_file = 4;
 | 
			
		||||
	uint64 dirty = 5;
 | 
			
		||||
	uint64 writeback = 6;
 | 
			
		||||
	uint64 pg_pg_in = 7;
 | 
			
		||||
	uint64 pg_pg_out = 8;
 | 
			
		||||
	uint64 pg_fault = 9;
 | 
			
		||||
	uint64 pg_maj_fault = 10;
 | 
			
		||||
	uint64 inactive_anon = 11;
 | 
			
		||||
	uint64 active_anon = 12;
 | 
			
		||||
	uint64 inactive_file = 13;
 | 
			
		||||
	uint64 active_file = 14;
 | 
			
		||||
	uint64 unevictable = 15;
 | 
			
		||||
	uint64 hierarchical_memory_limit = 16;
 | 
			
		||||
	uint64 hierarchical_swap_limit = 17;
 | 
			
		||||
	uint64 total_cache = 18;
 | 
			
		||||
	uint64 total_rss = 19;
 | 
			
		||||
	uint64 total_rss_huge = 20;
 | 
			
		||||
	uint64 total_mapped_file = 21;
 | 
			
		||||
	uint64 total_dirty = 22;
 | 
			
		||||
	uint64 total_writeback = 23;
 | 
			
		||||
	uint64 total_pg_pg_in = 24;
 | 
			
		||||
	uint64 total_pg_pg_out = 25;
 | 
			
		||||
	uint64 total_pg_fault = 26;
 | 
			
		||||
	uint64 total_pg_maj_fault = 27;
 | 
			
		||||
	uint64 total_inactive_anon = 28;
 | 
			
		||||
	uint64 total_active_anon = 29;
 | 
			
		||||
	uint64 total_inactive_file = 30;
 | 
			
		||||
	uint64 total_active_file = 31;
 | 
			
		||||
	uint64 total_unevictable = 32;
 | 
			
		||||
	MemoryEntry usage = 33;
 | 
			
		||||
	MemoryEntry swap = 34;
 | 
			
		||||
	MemoryEntry kernel = 35;
 | 
			
		||||
	MemoryEntry kernel_tcp = 36;
 | 
			
		||||
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
message MemoryEntry {
 | 
			
		||||
	uint64 limit = 1;
 | 
			
		||||
	uint64 usage = 2;
 | 
			
		||||
	uint64 max = 3;
 | 
			
		||||
	uint64 failcnt = 4;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
message MemoryOomControl {
 | 
			
		||||
	uint64 oom_kill_disable = 1;
 | 
			
		||||
	uint64 under_oom = 2;
 | 
			
		||||
	uint64 oom_kill = 3;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
message BlkIOStat {
 | 
			
		||||
	repeated BlkIOEntry io_service_bytes_recursive = 1;
 | 
			
		||||
	repeated BlkIOEntry io_serviced_recursive = 2;
 | 
			
		||||
	repeated BlkIOEntry io_queued_recursive = 3;
 | 
			
		||||
	repeated BlkIOEntry io_service_time_recursive = 4;
 | 
			
		||||
	repeated BlkIOEntry io_wait_time_recursive = 5;
 | 
			
		||||
	repeated BlkIOEntry io_merged_recursive = 6;
 | 
			
		||||
	repeated BlkIOEntry io_time_recursive = 7;
 | 
			
		||||
	repeated BlkIOEntry sectors_recursive = 8;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
message BlkIOEntry {
 | 
			
		||||
	string op = 1;
 | 
			
		||||
	string device = 2;
 | 
			
		||||
	uint64 major = 3;
 | 
			
		||||
	uint64 minor = 4;
 | 
			
		||||
	uint64 value = 5;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
message RdmaStat {
 | 
			
		||||
	repeated RdmaEntry current = 1;
 | 
			
		||||
	repeated RdmaEntry limit = 2;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
message RdmaEntry {
 | 
			
		||||
	string device = 1;
 | 
			
		||||
	uint32 hca_handles = 2;
 | 
			
		||||
	uint32 hca_objects = 3;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
message NetworkStat {
 | 
			
		||||
	string name = 1;
 | 
			
		||||
	uint64 rx_bytes = 2;
 | 
			
		||||
	uint64 rx_packets = 3;
 | 
			
		||||
	uint64 rx_errors  = 4;
 | 
			
		||||
	uint64 rx_dropped = 5;
 | 
			
		||||
	uint64 tx_bytes = 6;
 | 
			
		||||
	uint64 tx_packets = 7;
 | 
			
		||||
	uint64 tx_errors = 8;
 | 
			
		||||
	uint64 tx_dropped = 9;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// CgroupStats exports per-cgroup statistics.
 | 
			
		||||
message CgroupStats {
 | 
			
		||||
	// number of tasks sleeping
 | 
			
		||||
	uint64 nr_sleeping = 1;
 | 
			
		||||
	// number of tasks running
 | 
			
		||||
	uint64 nr_running = 2;
 | 
			
		||||
	// number of tasks in stopped state
 | 
			
		||||
	uint64 nr_stopped = 3;
 | 
			
		||||
	// number of tasks in uninterruptible state
 | 
			
		||||
	uint64 nr_uninterruptible = 4;
 | 
			
		||||
	// number of tasks waiting on IO
 | 
			
		||||
	uint64 nr_io_wait = 5;
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										14
									
								
								vendor/github.com/containerd/console/.golangci.yml
									
									
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										14
									
								
								vendor/github.com/containerd/console/.golangci.yml
									
									
									
										generated
									
									
										vendored
									
									
								
							@@ -1,16 +1,16 @@
 | 
			
		||||
linters:
 | 
			
		||||
  enable:
 | 
			
		||||
    - structcheck
 | 
			
		||||
    - varcheck
 | 
			
		||||
    - staticcheck
 | 
			
		||||
    - unconvert
 | 
			
		||||
    - gofmt
 | 
			
		||||
    - goimports
 | 
			
		||||
    - golint
 | 
			
		||||
    - ineffassign
 | 
			
		||||
    - vet
 | 
			
		||||
    - unused
 | 
			
		||||
    - misspell
 | 
			
		||||
    - revive
 | 
			
		||||
    - staticcheck
 | 
			
		||||
    - structcheck
 | 
			
		||||
    - unconvert
 | 
			
		||||
    - unused
 | 
			
		||||
    - varcheck
 | 
			
		||||
    - vet
 | 
			
		||||
  disable:
 | 
			
		||||
    - errcheck
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										6
									
								
								vendor/github.com/containerd/console/README.md
									
									
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										6
									
								
								vendor/github.com/containerd/console/README.md
									
									
									
										generated
									
									
										vendored
									
									
								
							@@ -22,8 +22,8 @@ current.Resize(ws)
 | 
			
		||||
 | 
			
		||||
console is a containerd sub-project, licensed under the [Apache 2.0 license](./LICENSE).
 | 
			
		||||
As a containerd sub-project, you will find the:
 | 
			
		||||
 * [Project governance](https://github.com/containerd/project/blob/master/GOVERNANCE.md),
 | 
			
		||||
 * [Maintainers](https://github.com/containerd/project/blob/master/MAINTAINERS),
 | 
			
		||||
 * and [Contributing guidelines](https://github.com/containerd/project/blob/master/CONTRIBUTING.md)
 | 
			
		||||
 * [Project governance](https://github.com/containerd/project/blob/main/GOVERNANCE.md),
 | 
			
		||||
 * [Maintainers](https://github.com/containerd/project/blob/main/MAINTAINERS),
 | 
			
		||||
 * and [Contributing guidelines](https://github.com/containerd/project/blob/main/CONTRIBUTING.md)
 | 
			
		||||
 | 
			
		||||
information in our [`containerd/project`](https://github.com/containerd/project) repository.
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										9
									
								
								vendor/github.com/containerd/console/console.go
									
									
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										9
									
								
								vendor/github.com/containerd/console/console.go
									
									
									
										generated
									
									
										vendored
									
									
								
							@@ -22,7 +22,10 @@ import (
 | 
			
		||||
	"os"
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
var ErrNotAConsole = errors.New("provided file is not a console")
 | 
			
		||||
var (
 | 
			
		||||
	ErrNotAConsole    = errors.New("provided file is not a console")
 | 
			
		||||
	ErrNotImplemented = errors.New("not implemented")
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
type File interface {
 | 
			
		||||
	io.ReadWriteCloser
 | 
			
		||||
@@ -45,7 +48,7 @@ type Console interface {
 | 
			
		||||
	SetRaw() error
 | 
			
		||||
	// DisableEcho disables echo on the console
 | 
			
		||||
	DisableEcho() error
 | 
			
		||||
	// Reset restores the console to its orignal state
 | 
			
		||||
	// Reset restores the console to its original state
 | 
			
		||||
	Reset() error
 | 
			
		||||
	// Size returns the window size of the console
 | 
			
		||||
	Size() (WinSize, error)
 | 
			
		||||
@@ -78,7 +81,7 @@ func Current() (c Console) {
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// ConsoleFromFile returns a console using the provided file
 | 
			
		||||
// nolint:golint
 | 
			
		||||
// nolint:revive
 | 
			
		||||
func ConsoleFromFile(f File) (Console, error) {
 | 
			
		||||
	if err := checkConsole(f); err != nil {
 | 
			
		||||
		return nil, err
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										1
									
								
								vendor/github.com/containerd/console/console_linux.go
									
									
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										1
									
								
								vendor/github.com/containerd/console/console_linux.go
									
									
									
										generated
									
									
										vendored
									
									
								
							@@ -1,3 +1,4 @@
 | 
			
		||||
//go:build linux
 | 
			
		||||
// +build linux
 | 
			
		||||
 | 
			
		||||
/*
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										36
									
								
								vendor/github.com/containerd/console/console_other.go
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										36
									
								
								vendor/github.com/containerd/console/console_other.go
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,36 @@
 | 
			
		||||
//go:build !darwin && !freebsd && !linux && !netbsd && !openbsd && !solaris && !windows && !zos
 | 
			
		||||
// +build !darwin,!freebsd,!linux,!netbsd,!openbsd,!solaris,!windows,!zos
 | 
			
		||||
 | 
			
		||||
/*
 | 
			
		||||
   Copyright The containerd Authors.
 | 
			
		||||
 | 
			
		||||
   Licensed under the Apache License, Version 2.0 (the "License");
 | 
			
		||||
   you may not use this file except in compliance with the License.
 | 
			
		||||
   You may obtain a copy of the License at
 | 
			
		||||
 | 
			
		||||
       http://www.apache.org/licenses/LICENSE-2.0
 | 
			
		||||
 | 
			
		||||
   Unless required by applicable law or agreed to in writing, software
 | 
			
		||||
   distributed under the License is distributed on an "AS IS" BASIS,
 | 
			
		||||
   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 | 
			
		||||
   See the License for the specific language governing permissions and
 | 
			
		||||
   limitations under the License.
 | 
			
		||||
*/
 | 
			
		||||
 | 
			
		||||
package console
 | 
			
		||||
 | 
			
		||||
// NewPty creates a new pty pair
 | 
			
		||||
// The master is returned as the first console and a string
 | 
			
		||||
// with the path to the pty slave is returned as the second
 | 
			
		||||
func NewPty() (Console, string, error) {
 | 
			
		||||
	return nil, "", ErrNotImplemented
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// checkConsole checks if the provided file is a console
 | 
			
		||||
func checkConsole(f File) error {
 | 
			
		||||
	return ErrNotAConsole
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func newMaster(f File) (Console, error) {
 | 
			
		||||
	return nil, ErrNotImplemented
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										3
									
								
								vendor/github.com/containerd/console/console_unix.go
									
									
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										3
									
								
								vendor/github.com/containerd/console/console_unix.go
									
									
									
										generated
									
									
										vendored
									
									
								
							@@ -1,4 +1,5 @@
 | 
			
		||||
// +build darwin freebsd linux netbsd openbsd solaris
 | 
			
		||||
//go:build darwin || freebsd || linux || netbsd || openbsd || zos
 | 
			
		||||
// +build darwin freebsd linux netbsd openbsd zos
 | 
			
		||||
 | 
			
		||||
/*
 | 
			
		||||
   Copyright The containerd Authors.
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										25
									
								
								vendor/github.com/containerd/console/console_windows.go
									
									
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										25
									
								
								vendor/github.com/containerd/console/console_windows.go
									
									
									
										generated
									
									
										vendored
									
									
								
							@@ -24,12 +24,13 @@ import (
 | 
			
		||||
	"golang.org/x/sys/windows"
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
var (
 | 
			
		||||
	vtInputSupported  bool
 | 
			
		||||
	ErrNotImplemented = errors.New("not implemented")
 | 
			
		||||
)
 | 
			
		||||
var vtInputSupported bool
 | 
			
		||||
 | 
			
		||||
func (m *master) initStdios() {
 | 
			
		||||
	// Note: We discard console mode warnings, because in/out can be redirected.
 | 
			
		||||
	//
 | 
			
		||||
	// TODO: Investigate opening CONOUT$/CONIN$ to handle this correctly
 | 
			
		||||
 | 
			
		||||
	m.in = windows.Handle(os.Stdin.Fd())
 | 
			
		||||
	if err := windows.GetConsoleMode(m.in, &m.inMode); err == nil {
 | 
			
		||||
		// Validate that windows.ENABLE_VIRTUAL_TERMINAL_INPUT is supported, but do not set it.
 | 
			
		||||
@@ -39,8 +40,6 @@ func (m *master) initStdios() {
 | 
			
		||||
		// Unconditionally set the console mode back even on failure because SetConsoleMode
 | 
			
		||||
		// remembers invalid bits on input handles.
 | 
			
		||||
		windows.SetConsoleMode(m.in, m.inMode)
 | 
			
		||||
	} else {
 | 
			
		||||
		fmt.Printf("failed to get console mode for stdin: %v\n", err)
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	m.out = windows.Handle(os.Stdout.Fd())
 | 
			
		||||
@@ -50,8 +49,6 @@ func (m *master) initStdios() {
 | 
			
		||||
		} else {
 | 
			
		||||
			windows.SetConsoleMode(m.out, m.outMode)
 | 
			
		||||
		}
 | 
			
		||||
	} else {
 | 
			
		||||
		fmt.Printf("failed to get console mode for stdout: %v\n", err)
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	m.err = windows.Handle(os.Stderr.Fd())
 | 
			
		||||
@@ -61,8 +58,6 @@ func (m *master) initStdios() {
 | 
			
		||||
		} else {
 | 
			
		||||
			windows.SetConsoleMode(m.err, m.errMode)
 | 
			
		||||
		}
 | 
			
		||||
	} else {
 | 
			
		||||
		fmt.Printf("failed to get console mode for stderr: %v\n", err)
 | 
			
		||||
	}
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
@@ -94,6 +89,8 @@ func (m *master) SetRaw() error {
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (m *master) Reset() error {
 | 
			
		||||
	var errs []error
 | 
			
		||||
 | 
			
		||||
	for _, s := range []struct {
 | 
			
		||||
		fd   windows.Handle
 | 
			
		||||
		mode uint32
 | 
			
		||||
@@ -103,10 +100,16 @@ func (m *master) Reset() error {
 | 
			
		||||
		{m.err, m.errMode},
 | 
			
		||||
	} {
 | 
			
		||||
		if err := windows.SetConsoleMode(s.fd, s.mode); err != nil {
 | 
			
		||||
			return fmt.Errorf("unable to restore console mode: %w", err)
 | 
			
		||||
			// we can't just abort on the first error, otherwise we might leave
 | 
			
		||||
			// the console in an unexpected state.
 | 
			
		||||
			errs = append(errs, fmt.Errorf("unable to restore console mode: %w", err))
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	if len(errs) > 0 {
 | 
			
		||||
		return errs[0]
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	return nil
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										163
									
								
								vendor/github.com/containerd/console/console_zos.go
									
									
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										163
									
								
								vendor/github.com/containerd/console/console_zos.go
									
									
									
										generated
									
									
										vendored
									
									
								
							@@ -1,163 +0,0 @@
 | 
			
		||||
// +build zos
 | 
			
		||||
 | 
			
		||||
/*
 | 
			
		||||
   Copyright The containerd Authors.
 | 
			
		||||
 | 
			
		||||
   Licensed under the Apache License, Version 2.0 (the "License");
 | 
			
		||||
   you may not use this file except in compliance with the License.
 | 
			
		||||
   You may obtain a copy of the License at
 | 
			
		||||
 | 
			
		||||
       http://www.apache.org/licenses/LICENSE-2.0
 | 
			
		||||
 | 
			
		||||
   Unless required by applicable law or agreed to in writing, software
 | 
			
		||||
   distributed under the License is distributed on an "AS IS" BASIS,
 | 
			
		||||
   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 | 
			
		||||
   See the License for the specific language governing permissions and
 | 
			
		||||
   limitations under the License.
 | 
			
		||||
*/
 | 
			
		||||
 | 
			
		||||
package console
 | 
			
		||||
 | 
			
		||||
import (
 | 
			
		||||
	"fmt"
 | 
			
		||||
	"os"
 | 
			
		||||
 | 
			
		||||
	"golang.org/x/sys/unix"
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
// NewPty creates a new pty pair
 | 
			
		||||
// The master is returned as the first console and a string
 | 
			
		||||
// with the path to the pty slave is returned as the second
 | 
			
		||||
func NewPty() (Console, string, error) {
 | 
			
		||||
	var f File
 | 
			
		||||
	var err error
 | 
			
		||||
	var slave string
 | 
			
		||||
	for i := 0;; i++ {
 | 
			
		||||
		ptyp := fmt.Sprintf("/dev/ptyp%04d", i)
 | 
			
		||||
		f, err = os.OpenFile(ptyp, os.O_RDWR, 0600)
 | 
			
		||||
		if err == nil {
 | 
			
		||||
			slave = fmt.Sprintf("/dev/ttyp%04d", i)
 | 
			
		||||
			break
 | 
			
		||||
		}
 | 
			
		||||
		if os.IsNotExist(err) {
 | 
			
		||||
			return nil, "", err
 | 
			
		||||
		}
 | 
			
		||||
		// else probably Resource Busy
 | 
			
		||||
	}
 | 
			
		||||
	m, err := newMaster(f)
 | 
			
		||||
	if err != nil {
 | 
			
		||||
		return nil, "", err
 | 
			
		||||
	}
 | 
			
		||||
	return m, slave, nil
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
type master struct {
 | 
			
		||||
	f        File
 | 
			
		||||
	original *unix.Termios
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (m *master) Read(b []byte) (int, error) {
 | 
			
		||||
	return m.f.Read(b)
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (m *master) Write(b []byte) (int, error) {
 | 
			
		||||
	return m.f.Write(b)
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (m *master) Close() error {
 | 
			
		||||
	return m.f.Close()
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (m *master) Resize(ws WinSize) error {
 | 
			
		||||
	return tcswinsz(m.f.Fd(), ws)
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (m *master) ResizeFrom(c Console) error {
 | 
			
		||||
	ws, err := c.Size()
 | 
			
		||||
	if err != nil {
 | 
			
		||||
		return err
 | 
			
		||||
	}
 | 
			
		||||
	return m.Resize(ws)
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (m *master) Reset() error {
 | 
			
		||||
	if m.original == nil {
 | 
			
		||||
		return nil
 | 
			
		||||
	}
 | 
			
		||||
	return tcset(m.f.Fd(), m.original)
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (m *master) getCurrent() (unix.Termios, error) {
 | 
			
		||||
	var termios unix.Termios
 | 
			
		||||
	if err := tcget(m.f.Fd(), &termios); err != nil {
 | 
			
		||||
		return unix.Termios{}, err
 | 
			
		||||
	}
 | 
			
		||||
	return termios, nil
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (m *master) SetRaw() error {
 | 
			
		||||
	rawState, err := m.getCurrent()
 | 
			
		||||
	if err != nil {
 | 
			
		||||
		return err
 | 
			
		||||
	}
 | 
			
		||||
	rawState = cfmakeraw(rawState)
 | 
			
		||||
	rawState.Oflag = rawState.Oflag | unix.OPOST
 | 
			
		||||
	return tcset(m.f.Fd(), &rawState)
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (m *master) DisableEcho() error {
 | 
			
		||||
	rawState, err := m.getCurrent()
 | 
			
		||||
	if err != nil {
 | 
			
		||||
		return err
 | 
			
		||||
	}
 | 
			
		||||
	rawState.Lflag = rawState.Lflag &^ unix.ECHO
 | 
			
		||||
	return tcset(m.f.Fd(), &rawState)
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (m *master) Size() (WinSize, error) {
 | 
			
		||||
	return tcgwinsz(m.f.Fd())
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (m *master) Fd() uintptr {
 | 
			
		||||
	return m.f.Fd()
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (m *master) Name() string {
 | 
			
		||||
	return m.f.Name()
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// checkConsole checks if the provided file is a console
 | 
			
		||||
func checkConsole(f File) error {
 | 
			
		||||
	var termios unix.Termios
 | 
			
		||||
	if tcget(f.Fd(), &termios) != nil {
 | 
			
		||||
		return ErrNotAConsole
 | 
			
		||||
	}
 | 
			
		||||
	return nil
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func newMaster(f File) (Console, error) {
 | 
			
		||||
	m := &master{
 | 
			
		||||
		f: f,
 | 
			
		||||
	}
 | 
			
		||||
	t, err := m.getCurrent()
 | 
			
		||||
	if err != nil {
 | 
			
		||||
		return nil, err
 | 
			
		||||
	}
 | 
			
		||||
	m.original = &t
 | 
			
		||||
	return m, nil
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// ClearONLCR sets the necessary tty_ioctl(4)s to ensure that a pty pair
 | 
			
		||||
// created by us acts normally. In particular, a not-very-well-known default of
 | 
			
		||||
// Linux unix98 ptys is that they have +onlcr by default. While this isn't a
 | 
			
		||||
// problem for terminal emulators, because we relay data from the terminal we
 | 
			
		||||
// also relay that funky line discipline.
 | 
			
		||||
func ClearONLCR(fd uintptr) error {
 | 
			
		||||
	return setONLCR(fd, false)
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// SetONLCR sets the necessary tty_ioctl(4)s to ensure that a pty pair
 | 
			
		||||
// created by us acts as intended for a terminal emulator.
 | 
			
		||||
func SetONLCR(fd uintptr) error {
 | 
			
		||||
	return setONLCR(fd, true)
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										1
									
								
								vendor/github.com/containerd/console/pty_freebsd_cgo.go
									
									
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										1
									
								
								vendor/github.com/containerd/console/pty_freebsd_cgo.go
									
									
									
										generated
									
									
										vendored
									
									
								
							@@ -1,3 +1,4 @@
 | 
			
		||||
//go:build freebsd && cgo
 | 
			
		||||
// +build freebsd,cgo
 | 
			
		||||
 | 
			
		||||
/*
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										1
									
								
								vendor/github.com/containerd/console/pty_freebsd_nocgo.go
									
									
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										1
									
								
								vendor/github.com/containerd/console/pty_freebsd_nocgo.go
									
									
									
										generated
									
									
										vendored
									
									
								
							@@ -1,3 +1,4 @@
 | 
			
		||||
//go:build freebsd && !cgo
 | 
			
		||||
// +build freebsd,!cgo
 | 
			
		||||
 | 
			
		||||
/*
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										3
									
								
								vendor/github.com/containerd/console/pty_unix.go
									
									
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										3
									
								
								vendor/github.com/containerd/console/pty_unix.go
									
									
									
										generated
									
									
										vendored
									
									
								
							@@ -1,4 +1,5 @@
 | 
			
		||||
// +build darwin linux netbsd openbsd solaris
 | 
			
		||||
//go:build darwin || linux || netbsd || openbsd
 | 
			
		||||
// +build darwin linux netbsd openbsd
 | 
			
		||||
 | 
			
		||||
/*
 | 
			
		||||
   Copyright The containerd Authors.
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										43
									
								
								vendor/github.com/containerd/console/pty_zos.go
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										43
									
								
								vendor/github.com/containerd/console/pty_zos.go
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,43 @@
 | 
			
		||||
//go:build zos
 | 
			
		||||
// +build zos
 | 
			
		||||
 | 
			
		||||
/*
 | 
			
		||||
   Copyright The containerd Authors.
 | 
			
		||||
 | 
			
		||||
   Licensed under the Apache License, Version 2.0 (the "License");
 | 
			
		||||
   you may not use this file except in compliance with the License.
 | 
			
		||||
   You may obtain a copy of the License at
 | 
			
		||||
 | 
			
		||||
       http://www.apache.org/licenses/LICENSE-2.0
 | 
			
		||||
 | 
			
		||||
   Unless required by applicable law or agreed to in writing, software
 | 
			
		||||
   distributed under the License is distributed on an "AS IS" BASIS,
 | 
			
		||||
   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 | 
			
		||||
   See the License for the specific language governing permissions and
 | 
			
		||||
   limitations under the License.
 | 
			
		||||
*/
 | 
			
		||||
 | 
			
		||||
package console
 | 
			
		||||
 | 
			
		||||
import (
 | 
			
		||||
	"fmt"
 | 
			
		||||
	"os"
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
// openpt allocates a new pseudo-terminal by opening the first available /dev/ptypXX device
 | 
			
		||||
func openpt() (*os.File, error) {
 | 
			
		||||
	var f *os.File
 | 
			
		||||
	var err error
 | 
			
		||||
	for i := 0; ; i++ {
 | 
			
		||||
		ptyp := fmt.Sprintf("/dev/ptyp%04d", i)
 | 
			
		||||
		f, err = os.OpenFile(ptyp, os.O_RDWR, 0600)
 | 
			
		||||
		if err == nil {
 | 
			
		||||
			break
 | 
			
		||||
		}
 | 
			
		||||
		if os.IsNotExist(err) {
 | 
			
		||||
			return nil, err
 | 
			
		||||
		}
 | 
			
		||||
		// else probably Resource Busy
 | 
			
		||||
	}
 | 
			
		||||
	return f, nil
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										1
									
								
								vendor/github.com/containerd/console/tc_freebsd_cgo.go
									
									
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										1
									
								
								vendor/github.com/containerd/console/tc_freebsd_cgo.go
									
									
									
										generated
									
									
										vendored
									
									
								
							@@ -1,3 +1,4 @@
 | 
			
		||||
//go:build freebsd && cgo
 | 
			
		||||
// +build freebsd,cgo
 | 
			
		||||
 | 
			
		||||
/*
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										1
									
								
								vendor/github.com/containerd/console/tc_freebsd_nocgo.go
									
									
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										1
									
								
								vendor/github.com/containerd/console/tc_freebsd_nocgo.go
									
									
									
										generated
									
									
										vendored
									
									
								
							@@ -1,3 +1,4 @@
 | 
			
		||||
//go:build freebsd && !cgo
 | 
			
		||||
// +build freebsd,!cgo
 | 
			
		||||
 | 
			
		||||
/*
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										1
									
								
								vendor/github.com/containerd/console/tc_openbsd_cgo.go
									
									
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										1
									
								
								vendor/github.com/containerd/console/tc_openbsd_cgo.go
									
									
									
										generated
									
									
										vendored
									
									
								
							@@ -1,3 +1,4 @@
 | 
			
		||||
//go:build openbsd && cgo
 | 
			
		||||
// +build openbsd,cgo
 | 
			
		||||
 | 
			
		||||
/*
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										1
									
								
								vendor/github.com/containerd/console/tc_openbsd_nocgo.go
									
									
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										1
									
								
								vendor/github.com/containerd/console/tc_openbsd_nocgo.go
									
									
									
										generated
									
									
										vendored
									
									
								
							@@ -1,3 +1,4 @@
 | 
			
		||||
//go:build openbsd && !cgo
 | 
			
		||||
// +build openbsd,!cgo
 | 
			
		||||
 | 
			
		||||
/*
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										51
									
								
								vendor/github.com/containerd/console/tc_solaris_cgo.go
									
									
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										51
									
								
								vendor/github.com/containerd/console/tc_solaris_cgo.go
									
									
									
										generated
									
									
										vendored
									
									
								
							@@ -1,51 +0,0 @@
 | 
			
		||||
// +build solaris,cgo
 | 
			
		||||
 | 
			
		||||
/*
 | 
			
		||||
   Copyright The containerd Authors.
 | 
			
		||||
 | 
			
		||||
   Licensed under the Apache License, Version 2.0 (the "License");
 | 
			
		||||
   you may not use this file except in compliance with the License.
 | 
			
		||||
   You may obtain a copy of the License at
 | 
			
		||||
 | 
			
		||||
       http://www.apache.org/licenses/LICENSE-2.0
 | 
			
		||||
 | 
			
		||||
   Unless required by applicable law or agreed to in writing, software
 | 
			
		||||
   distributed under the License is distributed on an "AS IS" BASIS,
 | 
			
		||||
   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 | 
			
		||||
   See the License for the specific language governing permissions and
 | 
			
		||||
   limitations under the License.
 | 
			
		||||
*/
 | 
			
		||||
 | 
			
		||||
package console
 | 
			
		||||
 | 
			
		||||
import (
 | 
			
		||||
	"os"
 | 
			
		||||
 | 
			
		||||
	"golang.org/x/sys/unix"
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
//#include <stdlib.h>
 | 
			
		||||
import "C"
 | 
			
		||||
 | 
			
		||||
const (
 | 
			
		||||
	cmdTcGet = unix.TCGETS
 | 
			
		||||
	cmdTcSet = unix.TCSETS
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
// ptsname retrieves the name of the first available pts for the given master.
 | 
			
		||||
func ptsname(f *os.File) (string, error) {
 | 
			
		||||
	ptspath, err := C.ptsname(C.int(f.Fd()))
 | 
			
		||||
	if err != nil {
 | 
			
		||||
		return "", err
 | 
			
		||||
	}
 | 
			
		||||
	return C.GoString(ptspath), nil
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// unlockpt unlocks the slave pseudoterminal device corresponding to the master pseudoterminal referred to by f.
 | 
			
		||||
// unlockpt should be called before opening the slave side of a pty.
 | 
			
		||||
func unlockpt(f *os.File) error {
 | 
			
		||||
	if _, err := C.grantpt(C.int(f.Fd())); err != nil {
 | 
			
		||||
		return err
 | 
			
		||||
	}
 | 
			
		||||
	return nil
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										47
									
								
								vendor/github.com/containerd/console/tc_solaris_nocgo.go
									
									
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										47
									
								
								vendor/github.com/containerd/console/tc_solaris_nocgo.go
									
									
									
										generated
									
									
										vendored
									
									
								
							@@ -1,47 +0,0 @@
 | 
			
		||||
// +build solaris,!cgo
 | 
			
		||||
 | 
			
		||||
/*
 | 
			
		||||
   Copyright The containerd Authors.
 | 
			
		||||
 | 
			
		||||
   Licensed under the Apache License, Version 2.0 (the "License");
 | 
			
		||||
   you may not use this file except in compliance with the License.
 | 
			
		||||
   You may obtain a copy of the License at
 | 
			
		||||
 | 
			
		||||
       http://www.apache.org/licenses/LICENSE-2.0
 | 
			
		||||
 | 
			
		||||
   Unless required by applicable law or agreed to in writing, software
 | 
			
		||||
   distributed under the License is distributed on an "AS IS" BASIS,
 | 
			
		||||
   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 | 
			
		||||
   See the License for the specific language governing permissions and
 | 
			
		||||
   limitations under the License.
 | 
			
		||||
*/
 | 
			
		||||
 | 
			
		||||
//
 | 
			
		||||
// Implementing the functions below requires cgo support.  Non-cgo stubs
 | 
			
		||||
// versions are defined below to enable cross-compilation of source code
 | 
			
		||||
// that depends on these functions, but the resultant cross-compiled
 | 
			
		||||
// binaries cannot actually be used.  If the stub function(s) below are
 | 
			
		||||
// actually invoked they will display an error message and cause the
 | 
			
		||||
// calling process to exit.
 | 
			
		||||
//
 | 
			
		||||
 | 
			
		||||
package console
 | 
			
		||||
 | 
			
		||||
import (
 | 
			
		||||
	"os"
 | 
			
		||||
 | 
			
		||||
	"golang.org/x/sys/unix"
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
const (
 | 
			
		||||
	cmdTcGet = unix.TCGETS
 | 
			
		||||
	cmdTcSet = unix.TCSETS
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
func ptsname(f *os.File) (string, error) {
 | 
			
		||||
	panic("ptsname() support requires cgo.")
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func unlockpt(f *os.File) error {
 | 
			
		||||
	panic("unlockpt() support requires cgo.")
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										5
									
								
								vendor/github.com/containerd/console/tc_unix.go
									
									
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										5
									
								
								vendor/github.com/containerd/console/tc_unix.go
									
									
									
										generated
									
									
										vendored
									
									
								
							@@ -1,4 +1,5 @@
 | 
			
		||||
// +build darwin freebsd linux netbsd openbsd solaris zos
 | 
			
		||||
//go:build darwin || freebsd || linux || netbsd || openbsd || zos
 | 
			
		||||
// +build darwin freebsd linux netbsd openbsd zos
 | 
			
		||||
 | 
			
		||||
/*
 | 
			
		||||
   Copyright The containerd Authors.
 | 
			
		||||
@@ -83,7 +84,7 @@ func cfmakeraw(t unix.Termios) unix.Termios {
 | 
			
		||||
	t.Oflag &^= unix.OPOST
 | 
			
		||||
	t.Lflag &^= (unix.ECHO | unix.ECHONL | unix.ICANON | unix.ISIG | unix.IEXTEN)
 | 
			
		||||
	t.Cflag &^= (unix.CSIZE | unix.PARENB)
 | 
			
		||||
	t.Cflag &^= unix.CS8
 | 
			
		||||
	t.Cflag |= unix.CS8
 | 
			
		||||
	t.Cc[unix.VMIN] = 1
 | 
			
		||||
	t.Cc[unix.VTIME] = 0
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										13
									
								
								vendor/github.com/containerd/console/tc_zos.go
									
									
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										13
									
								
								vendor/github.com/containerd/console/tc_zos.go
									
									
									
										generated
									
									
										vendored
									
									
								
							@@ -17,6 +17,9 @@
 | 
			
		||||
package console
 | 
			
		||||
 | 
			
		||||
import (
 | 
			
		||||
	"os"
 | 
			
		||||
	"strings"
 | 
			
		||||
 | 
			
		||||
	"golang.org/x/sys/unix"
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
@@ -24,3 +27,13 @@ const (
 | 
			
		||||
	cmdTcGet = unix.TCGETS
 | 
			
		||||
	cmdTcSet = unix.TCSETS
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
// unlockpt is a no-op on zos.
 | 
			
		||||
func unlockpt(_ *os.File) error {
 | 
			
		||||
	return nil
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// ptsname retrieves the name of the first available pts for the given master.
 | 
			
		||||
func ptsname(f *os.File) (string, error) {
 | 
			
		||||
	return "/dev/ttyp" + strings.TrimPrefix(f.Name(), "/dev/ptyp"), nil
 | 
			
		||||
}
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										191
									
								
								vendor/github.com/containerd/containerd/api/LICENSE
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										191
									
								
								vendor/github.com/containerd/containerd/api/LICENSE
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,191 @@
 | 
			
		||||
 | 
			
		||||
                                 Apache License
 | 
			
		||||
                           Version 2.0, January 2004
 | 
			
		||||
                        https://www.apache.org/licenses/
 | 
			
		||||
 | 
			
		||||
   TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
 | 
			
		||||
 | 
			
		||||
   1. Definitions.
 | 
			
		||||
 | 
			
		||||
      "License" shall mean the terms and conditions for use, reproduction,
 | 
			
		||||
      and distribution as defined by Sections 1 through 9 of this document.
 | 
			
		||||
 | 
			
		||||
      "Licensor" shall mean the copyright owner or entity authorized by
 | 
			
		||||
      the copyright owner that is granting the License.
 | 
			
		||||
 | 
			
		||||
      "Legal Entity" shall mean the union of the acting entity and all
 | 
			
		||||
      other entities that control, are controlled by, or are under common
 | 
			
		||||
      control with that entity. For the purposes of this definition,
 | 
			
		||||
      "control" means (i) the power, direct or indirect, to cause the
 | 
			
		||||
      direction or management of such entity, whether by contract or
 | 
			
		||||
      otherwise, or (ii) ownership of fifty percent (50%) or more of the
 | 
			
		||||
      outstanding shares, or (iii) beneficial ownership of such entity.
 | 
			
		||||
 | 
			
		||||
      "You" (or "Your") shall mean an individual or Legal Entity
 | 
			
		||||
      exercising permissions granted by this License.
 | 
			
		||||
 | 
			
		||||
      "Source" form shall mean the preferred form for making modifications,
 | 
			
		||||
      including but not limited to software source code, documentation
 | 
			
		||||
      source, and configuration files.
 | 
			
		||||
 | 
			
		||||
      "Object" form shall mean any form resulting from mechanical
 | 
			
		||||
      transformation or translation of a Source form, including but
 | 
			
		||||
      not limited to compiled object code, generated documentation,
 | 
			
		||||
      and conversions to other media types.
 | 
			
		||||
 | 
			
		||||
      "Work" shall mean the work of authorship, whether in Source or
 | 
			
		||||
      Object form, made available under the License, as indicated by a
 | 
			
		||||
      copyright notice that is included in or attached to the work
 | 
			
		||||
      (an example is provided in the Appendix below).
 | 
			
		||||
 | 
			
		||||
      "Derivative Works" shall mean any work, whether in Source or Object
 | 
			
		||||
      form, that is based on (or derived from) the Work and for which the
 | 
			
		||||
      editorial revisions, annotations, elaborations, or other modifications
 | 
			
		||||
      represent, as a whole, an original work of authorship. For the purposes
 | 
			
		||||
      of this License, Derivative Works shall not include works that remain
 | 
			
		||||
      separable from, or merely link (or bind by name) to the interfaces of,
 | 
			
		||||
      the Work and Derivative Works thereof.
 | 
			
		||||
 | 
			
		||||
      "Contribution" shall mean any work of authorship, including
 | 
			
		||||
      the original version of the Work and any modifications or additions
 | 
			
		||||
      to that Work or Derivative Works thereof, that is intentionally
 | 
			
		||||
      submitted to Licensor for inclusion in the Work by the copyright owner
 | 
			
		||||
      or by an individual or Legal Entity authorized to submit on behalf of
 | 
			
		||||
      the copyright owner. For the purposes of this definition, "submitted"
 | 
			
		||||
      means any form of electronic, verbal, or written communication sent
 | 
			
		||||
      to the Licensor or its representatives, including but not limited to
 | 
			
		||||
      communication on electronic mailing lists, source code control systems,
 | 
			
		||||
      and issue tracking systems that are managed by, or on behalf of, the
 | 
			
		||||
      Licensor for the purpose of discussing and improving the Work, but
 | 
			
		||||
      excluding communication that is conspicuously marked or otherwise
 | 
			
		||||
      designated in writing by the copyright owner as "Not a Contribution."
 | 
			
		||||
 | 
			
		||||
      "Contributor" shall mean Licensor and any individual or Legal Entity
 | 
			
		||||
      on behalf of whom a Contribution has been received by Licensor and
 | 
			
		||||
      subsequently incorporated within the Work.
 | 
			
		||||
 | 
			
		||||
   2. Grant of Copyright License. Subject to the terms and conditions of
 | 
			
		||||
      this License, each Contributor hereby grants to You a perpetual,
 | 
			
		||||
      worldwide, non-exclusive, no-charge, royalty-free, irrevocable
 | 
			
		||||
      copyright license to reproduce, prepare Derivative Works of,
 | 
			
		||||
      publicly display, publicly perform, sublicense, and distribute the
 | 
			
		||||
      Work and such Derivative Works in Source or Object form.
 | 
			
		||||
 | 
			
		||||
   3. Grant of Patent License. Subject to the terms and conditions of
 | 
			
		||||
      this License, each Contributor hereby grants to You a perpetual,
 | 
			
		||||
      worldwide, non-exclusive, no-charge, royalty-free, irrevocable
 | 
			
		||||
      (except as stated in this section) patent license to make, have made,
 | 
			
		||||
      use, offer to sell, sell, import, and otherwise transfer the Work,
 | 
			
		||||
      where such license applies only to those patent claims licensable
 | 
			
		||||
      by such Contributor that are necessarily infringed by their
 | 
			
		||||
      Contribution(s) alone or by combination of their Contribution(s)
 | 
			
		||||
      with the Work to which such Contribution(s) was submitted. If You
 | 
			
		||||
      institute patent litigation against any entity (including a
 | 
			
		||||
      cross-claim or counterclaim in a lawsuit) alleging that the Work
 | 
			
		||||
      or a Contribution incorporated within the Work constitutes direct
 | 
			
		||||
      or contributory patent infringement, then any patent licenses
 | 
			
		||||
      granted to You under this License for that Work shall terminate
 | 
			
		||||
      as of the date such litigation is filed.
 | 
			
		||||
 | 
			
		||||
   4. Redistribution. You may reproduce and distribute copies of the
 | 
			
		||||
      Work or Derivative Works thereof in any medium, with or without
 | 
			
		||||
      modifications, and in Source or Object form, provided that You
 | 
			
		||||
      meet the following conditions:
 | 
			
		||||
 | 
			
		||||
      (a) You must give any other recipients of the Work or
 | 
			
		||||
          Derivative Works a copy of this License; and
 | 
			
		||||
 | 
			
		||||
      (b) You must cause any modified files to carry prominent notices
 | 
			
		||||
          stating that You changed the files; and
 | 
			
		||||
 | 
			
		||||
      (c) You must retain, in the Source form of any Derivative Works
 | 
			
		||||
          that You distribute, all copyright, patent, trademark, and
 | 
			
		||||
          attribution notices from the Source form of the Work,
 | 
			
		||||
          excluding those notices that do not pertain to any part of
 | 
			
		||||
          the Derivative Works; and
 | 
			
		||||
 | 
			
		||||
      (d) If the Work includes a "NOTICE" text file as part of its
 | 
			
		||||
          distribution, then any Derivative Works that You distribute must
 | 
			
		||||
          include a readable copy of the attribution notices contained
 | 
			
		||||
          within such NOTICE file, excluding those notices that do not
 | 
			
		||||
          pertain to any part of the Derivative Works, in at least one
 | 
			
		||||
          of the following places: within a NOTICE text file distributed
 | 
			
		||||
          as part of the Derivative Works; within the Source form or
 | 
			
		||||
          documentation, if provided along with the Derivative Works; or,
 | 
			
		||||
          within a display generated by the Derivative Works, if and
 | 
			
		||||
          wherever such third-party notices normally appear. The contents
 | 
			
		||||
          of the NOTICE file are for informational purposes only and
 | 
			
		||||
          do not modify the License. You may add Your own attribution
 | 
			
		||||
          notices within Derivative Works that You distribute, alongside
 | 
			
		||||
          or as an addendum to the NOTICE text from the Work, provided
 | 
			
		||||
          that such additional attribution notices cannot be construed
 | 
			
		||||
          as modifying the License.
 | 
			
		||||
 | 
			
		||||
      You may add Your own copyright statement to Your modifications and
 | 
			
		||||
      may provide additional or different license terms and conditions
 | 
			
		||||
      for use, reproduction, or distribution of Your modifications, or
 | 
			
		||||
      for any such Derivative Works as a whole, provided Your use,
 | 
			
		||||
      reproduction, and distribution of the Work otherwise complies with
 | 
			
		||||
      the conditions stated in this License.
 | 
			
		||||
 | 
			
		||||
   5. Submission of Contributions. Unless You explicitly state otherwise,
 | 
			
		||||
      any Contribution intentionally submitted for inclusion in the Work
 | 
			
		||||
      by You to the Licensor shall be under the terms and conditions of
 | 
			
		||||
      this License, without any additional terms or conditions.
 | 
			
		||||
      Notwithstanding the above, nothing herein shall supersede or modify
 | 
			
		||||
      the terms of any separate license agreement you may have executed
 | 
			
		||||
      with Licensor regarding such Contributions.
 | 
			
		||||
 | 
			
		||||
   6. Trademarks. This License does not grant permission to use the trade
 | 
			
		||||
      names, trademarks, service marks, or product names of the Licensor,
 | 
			
		||||
      except as required for reasonable and customary use in describing the
 | 
			
		||||
      origin of the Work and reproducing the content of the NOTICE file.
 | 
			
		||||
 | 
			
		||||
   7. Disclaimer of Warranty. Unless required by applicable law or
 | 
			
		||||
      agreed to in writing, Licensor provides the Work (and each
 | 
			
		||||
      Contributor provides its Contributions) on an "AS IS" BASIS,
 | 
			
		||||
      WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
 | 
			
		||||
      implied, including, without limitation, any warranties or conditions
 | 
			
		||||
      of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
 | 
			
		||||
      PARTICULAR PURPOSE. You are solely responsible for determining the
 | 
			
		||||
      appropriateness of using or redistributing the Work and assume any
 | 
			
		||||
      risks associated with Your exercise of permissions under this License.
 | 
			
		||||
 | 
			
		||||
   8. Limitation of Liability. In no event and under no legal theory,
 | 
			
		||||
      whether in tort (including negligence), contract, or otherwise,
 | 
			
		||||
      unless required by applicable law (such as deliberate and grossly
 | 
			
		||||
      negligent acts) or agreed to in writing, shall any Contributor be
 | 
			
		||||
      liable to You for damages, including any direct, indirect, special,
 | 
			
		||||
      incidental, or consequential damages of any character arising as a
 | 
			
		||||
      result of this License or out of the use or inability to use the
 | 
			
		||||
      Work (including but not limited to damages for loss of goodwill,
 | 
			
		||||
      work stoppage, computer failure or malfunction, or any and all
 | 
			
		||||
      other commercial damages or losses), even if such Contributor
 | 
			
		||||
      has been advised of the possibility of such damages.
 | 
			
		||||
 | 
			
		||||
   9. Accepting Warranty or Additional Liability. While redistributing
 | 
			
		||||
      the Work or Derivative Works thereof, You may choose to offer,
 | 
			
		||||
      and charge a fee for, acceptance of support, warranty, indemnity,
 | 
			
		||||
      or other liability obligations and/or rights consistent with this
 | 
			
		||||
      License. However, in accepting such obligations, You may act only
 | 
			
		||||
      on Your own behalf and on Your sole responsibility, not on behalf
 | 
			
		||||
      of any other Contributor, and only if You agree to indemnify,
 | 
			
		||||
      defend, and hold each Contributor harmless for any liability
 | 
			
		||||
      incurred by, or claims asserted against, such Contributor by reason
 | 
			
		||||
      of your accepting any such warranty or additional liability.
 | 
			
		||||
 | 
			
		||||
   END OF TERMS AND CONDITIONS
 | 
			
		||||
 | 
			
		||||
   Copyright The containerd Authors
 | 
			
		||||
 | 
			
		||||
   Licensed under the Apache License, Version 2.0 (the "License");
 | 
			
		||||
   you may not use this file except in compliance with the License.
 | 
			
		||||
   You may obtain a copy of the License at
 | 
			
		||||
 | 
			
		||||
       https://www.apache.org/licenses/LICENSE-2.0
 | 
			
		||||
 | 
			
		||||
   Unless required by applicable law or agreed to in writing, software
 | 
			
		||||
   distributed under the License is distributed on an "AS IS" BASIS,
 | 
			
		||||
   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 | 
			
		||||
   See the License for the specific language governing permissions and
 | 
			
		||||
   limitations under the License.
 | 
			
		||||
							
								
								
									
										1178
									
								
								vendor/github.com/containerd/containerd/api/services/containers/v1/containers.pb.go
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										1178
									
								
								vendor/github.com/containerd/containerd/api/services/containers/v1/containers.pb.go
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							
							
								
								
									
										181
									
								
								vendor/github.com/containerd/containerd/api/services/containers/v1/containers.proto
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										181
									
								
								vendor/github.com/containerd/containerd/api/services/containers/v1/containers.proto
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,181 @@
 | 
			
		||||
/*
 | 
			
		||||
	Copyright The containerd Authors.
 | 
			
		||||
 | 
			
		||||
	Licensed under the Apache License, Version 2.0 (the "License");
 | 
			
		||||
	you may not use this file except in compliance with the License.
 | 
			
		||||
	You may obtain a copy of the License at
 | 
			
		||||
 | 
			
		||||
		http://www.apache.org/licenses/LICENSE-2.0
 | 
			
		||||
 | 
			
		||||
	Unless required by applicable law or agreed to in writing, software
 | 
			
		||||
	distributed under the License is distributed on an "AS IS" BASIS,
 | 
			
		||||
	WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 | 
			
		||||
	See the License for the specific language governing permissions and
 | 
			
		||||
	limitations under the License.
 | 
			
		||||
*/
 | 
			
		||||
 | 
			
		||||
syntax = "proto3";
 | 
			
		||||
 | 
			
		||||
package containerd.services.containers.v1;
 | 
			
		||||
 | 
			
		||||
import "google/protobuf/any.proto";
 | 
			
		||||
import "google/protobuf/empty.proto";
 | 
			
		||||
import "google/protobuf/field_mask.proto";
 | 
			
		||||
import "google/protobuf/timestamp.proto";
 | 
			
		||||
 | 
			
		||||
option go_package = "github.com/containerd/containerd/api/services/containers/v1;containers";
 | 
			
		||||
 | 
			
		||||
// Containers provides metadata storage for containers used in the execution
 | 
			
		||||
// service.
 | 
			
		||||
//
 | 
			
		||||
// The objects here provide an state-independent view of containers for use in
 | 
			
		||||
// management and resource pinning. From that perspective, containers do not
 | 
			
		||||
// have a "state" but rather this is the set of resources that will be
 | 
			
		||||
// considered in use by the container.
 | 
			
		||||
//
 | 
			
		||||
// From the perspective of the execution service, these objects represent the
 | 
			
		||||
// base parameters for creating a container process.
 | 
			
		||||
//
 | 
			
		||||
// In general, when looking to add fields for this type, first ask yourself
 | 
			
		||||
// whether or not the function of the field has to do with runtime execution or
 | 
			
		||||
// is invariant of the runtime state of the container. If it has to do with
 | 
			
		||||
// runtime, or changes as the "container" is started and stops, it probably
 | 
			
		||||
// doesn't belong on this object.
 | 
			
		||||
service Containers {
 | 
			
		||||
	rpc Get(GetContainerRequest) returns (GetContainerResponse);
 | 
			
		||||
	rpc List(ListContainersRequest) returns (ListContainersResponse);
 | 
			
		||||
	rpc ListStream(ListContainersRequest) returns (stream ListContainerMessage);
 | 
			
		||||
	rpc Create(CreateContainerRequest) returns (CreateContainerResponse);
 | 
			
		||||
	rpc Update(UpdateContainerRequest) returns (UpdateContainerResponse);
 | 
			
		||||
	rpc Delete(DeleteContainerRequest) returns (google.protobuf.Empty);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
message Container {
 | 
			
		||||
	// ID is the user-specified identifier.
 | 
			
		||||
	//
 | 
			
		||||
	// This field may not be updated.
 | 
			
		||||
	string id = 1;
 | 
			
		||||
 | 
			
		||||
	// Labels provides an area to include arbitrary data on containers.
 | 
			
		||||
	//
 | 
			
		||||
	// The combined size of a key/value pair cannot exceed 4096 bytes.
 | 
			
		||||
	//
 | 
			
		||||
	// Note that to add a new value to this field, read the existing set and
 | 
			
		||||
	// include the entire result in the update call.
 | 
			
		||||
	map<string, string> labels  = 2;
 | 
			
		||||
 | 
			
		||||
	// Image contains the reference of the image used to build the
 | 
			
		||||
	// specification and snapshots for running this container.
 | 
			
		||||
	//
 | 
			
		||||
	// If this field is updated, the spec and rootfs needed to updated, as well.
 | 
			
		||||
	string image = 3;
 | 
			
		||||
 | 
			
		||||
	message Runtime {
 | 
			
		||||
		// Name is the name of the runtime.
 | 
			
		||||
		string name = 1;
 | 
			
		||||
		// Options specify additional runtime initialization options.
 | 
			
		||||
		google.protobuf.Any options = 2;
 | 
			
		||||
	}
 | 
			
		||||
	// Runtime specifies which runtime to use for executing this container.
 | 
			
		||||
	Runtime runtime = 4;
 | 
			
		||||
 | 
			
		||||
	// Spec to be used when creating the container. This is runtime specific.
 | 
			
		||||
	google.protobuf.Any spec = 5;
 | 
			
		||||
 | 
			
		||||
	// Snapshotter specifies the snapshotter name used for rootfs
 | 
			
		||||
	string snapshotter = 6;
 | 
			
		||||
 | 
			
		||||
	// SnapshotKey specifies the snapshot key to use for the container's root
 | 
			
		||||
	// filesystem. When starting a task from this container, a caller should
 | 
			
		||||
	// look up the mounts from the snapshot service and include those on the
 | 
			
		||||
	// task create request.
 | 
			
		||||
	//
 | 
			
		||||
	// Snapshots referenced in this field will not be garbage collected.
 | 
			
		||||
	//
 | 
			
		||||
	// This field is set to empty when the rootfs is not a snapshot.
 | 
			
		||||
	//
 | 
			
		||||
	// This field may be updated.
 | 
			
		||||
	string snapshot_key = 7;
 | 
			
		||||
 | 
			
		||||
	// CreatedAt is the time the container was first created.
 | 
			
		||||
	google.protobuf.Timestamp created_at = 8;
 | 
			
		||||
 | 
			
		||||
	// UpdatedAt is the last time the container was mutated.
 | 
			
		||||
	google.protobuf.Timestamp updated_at = 9;
 | 
			
		||||
 | 
			
		||||
	// Extensions allow clients to provide zero or more blobs that are directly
 | 
			
		||||
	// associated with the container. One may provide protobuf, json, or other
 | 
			
		||||
	// encoding formats. The primary use of this is to further decorate the
 | 
			
		||||
	// container object with fields that may be specific to a client integration.
 | 
			
		||||
	//
 | 
			
		||||
	// The key portion of this map should identify a "name" for the extension
 | 
			
		||||
	// that should be unique against other extensions. When updating extension
 | 
			
		||||
	// data, one should only update the specified extension using field paths
 | 
			
		||||
	// to select a specific map key.
 | 
			
		||||
	map<string, google.protobuf.Any> extensions = 10;
 | 
			
		||||
 | 
			
		||||
	// Sandbox ID this container belongs to.
 | 
			
		||||
	string sandbox = 11;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
message GetContainerRequest {
 | 
			
		||||
	string id = 1;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
message GetContainerResponse {
 | 
			
		||||
	Container container = 1;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
message ListContainersRequest {
 | 
			
		||||
	// Filters contains one or more filters using the syntax defined in the
 | 
			
		||||
	// containerd filter package.
 | 
			
		||||
	//
 | 
			
		||||
	// The returned result will be those that match any of the provided
 | 
			
		||||
	// filters. Expanded, containers that match the following will be
 | 
			
		||||
	// returned:
 | 
			
		||||
	//
 | 
			
		||||
	//	filters[0] or filters[1] or ... or filters[n-1] or filters[n]
 | 
			
		||||
	//
 | 
			
		||||
	// If filters is zero-length or nil, all items will be returned.
 | 
			
		||||
	repeated string filters = 1;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
message ListContainersResponse {
 | 
			
		||||
	repeated Container containers = 1;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
message CreateContainerRequest {
 | 
			
		||||
	Container container = 1;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
message CreateContainerResponse {
 | 
			
		||||
	Container container = 1;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// UpdateContainerRequest updates the metadata on one or more container.
 | 
			
		||||
//
 | 
			
		||||
// The operation should follow semantics described in
 | 
			
		||||
// https://developers.google.com/protocol-buffers/docs/reference/csharp/class/google/protobuf/well-known-types/field-mask,
 | 
			
		||||
// unless otherwise qualified.
 | 
			
		||||
message UpdateContainerRequest {
 | 
			
		||||
	// Container provides the target values, as declared by the mask, for the update.
 | 
			
		||||
	//
 | 
			
		||||
	// The ID field must be set.
 | 
			
		||||
	Container container = 1;
 | 
			
		||||
 | 
			
		||||
	// UpdateMask specifies which fields to perform the update on. If empty,
 | 
			
		||||
	// the operation applies to all fields.
 | 
			
		||||
	google.protobuf.FieldMask update_mask = 2;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
message UpdateContainerResponse {
 | 
			
		||||
	Container container = 1;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
message DeleteContainerRequest {
 | 
			
		||||
	string id = 1;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
message ListContainerMessage {
 | 
			
		||||
	Container container = 1;
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										314
									
								
								vendor/github.com/containerd/containerd/api/services/containers/v1/containers_grpc.pb.go
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										314
									
								
								vendor/github.com/containerd/containerd/api/services/containers/v1/containers_grpc.pb.go
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,314 @@
 | 
			
		||||
// Code generated by protoc-gen-go-grpc. DO NOT EDIT.
 | 
			
		||||
// versions:
 | 
			
		||||
// - protoc-gen-go-grpc v1.2.0
 | 
			
		||||
// - protoc             v3.20.1
 | 
			
		||||
// source: github.com/containerd/containerd/api/services/containers/v1/containers.proto
 | 
			
		||||
 | 
			
		||||
package containers
 | 
			
		||||
 | 
			
		||||
import (
 | 
			
		||||
	context "context"
 | 
			
		||||
	grpc "google.golang.org/grpc"
 | 
			
		||||
	codes "google.golang.org/grpc/codes"
 | 
			
		||||
	status "google.golang.org/grpc/status"
 | 
			
		||||
	emptypb "google.golang.org/protobuf/types/known/emptypb"
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
// This is a compile-time assertion to ensure that this generated file
 | 
			
		||||
// is compatible with the grpc package it is being compiled against.
 | 
			
		||||
// Requires gRPC-Go v1.32.0 or later.
 | 
			
		||||
const _ = grpc.SupportPackageIsVersion7
 | 
			
		||||
 | 
			
		||||
// ContainersClient is the client API for Containers service.
 | 
			
		||||
//
 | 
			
		||||
// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://pkg.go.dev/google.golang.org/grpc/?tab=doc#ClientConn.NewStream.
 | 
			
		||||
type ContainersClient interface {
 | 
			
		||||
	Get(ctx context.Context, in *GetContainerRequest, opts ...grpc.CallOption) (*GetContainerResponse, error)
 | 
			
		||||
	List(ctx context.Context, in *ListContainersRequest, opts ...grpc.CallOption) (*ListContainersResponse, error)
 | 
			
		||||
	ListStream(ctx context.Context, in *ListContainersRequest, opts ...grpc.CallOption) (Containers_ListStreamClient, error)
 | 
			
		||||
	Create(ctx context.Context, in *CreateContainerRequest, opts ...grpc.CallOption) (*CreateContainerResponse, error)
 | 
			
		||||
	Update(ctx context.Context, in *UpdateContainerRequest, opts ...grpc.CallOption) (*UpdateContainerResponse, error)
 | 
			
		||||
	Delete(ctx context.Context, in *DeleteContainerRequest, opts ...grpc.CallOption) (*emptypb.Empty, error)
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
type containersClient struct {
 | 
			
		||||
	cc grpc.ClientConnInterface
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func NewContainersClient(cc grpc.ClientConnInterface) ContainersClient {
 | 
			
		||||
	return &containersClient{cc}
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (c *containersClient) Get(ctx context.Context, in *GetContainerRequest, opts ...grpc.CallOption) (*GetContainerResponse, error) {
 | 
			
		||||
	out := new(GetContainerResponse)
 | 
			
		||||
	err := c.cc.Invoke(ctx, "/containerd.services.containers.v1.Containers/Get", in, out, opts...)
 | 
			
		||||
	if err != nil {
 | 
			
		||||
		return nil, err
 | 
			
		||||
	}
 | 
			
		||||
	return out, nil
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (c *containersClient) List(ctx context.Context, in *ListContainersRequest, opts ...grpc.CallOption) (*ListContainersResponse, error) {
 | 
			
		||||
	out := new(ListContainersResponse)
 | 
			
		||||
	err := c.cc.Invoke(ctx, "/containerd.services.containers.v1.Containers/List", in, out, opts...)
 | 
			
		||||
	if err != nil {
 | 
			
		||||
		return nil, err
 | 
			
		||||
	}
 | 
			
		||||
	return out, nil
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (c *containersClient) ListStream(ctx context.Context, in *ListContainersRequest, opts ...grpc.CallOption) (Containers_ListStreamClient, error) {
 | 
			
		||||
	stream, err := c.cc.NewStream(ctx, &Containers_ServiceDesc.Streams[0], "/containerd.services.containers.v1.Containers/ListStream", opts...)
 | 
			
		||||
	if err != nil {
 | 
			
		||||
		return nil, err
 | 
			
		||||
	}
 | 
			
		||||
	x := &containersListStreamClient{stream}
 | 
			
		||||
	if err := x.ClientStream.SendMsg(in); err != nil {
 | 
			
		||||
		return nil, err
 | 
			
		||||
	}
 | 
			
		||||
	if err := x.ClientStream.CloseSend(); err != nil {
 | 
			
		||||
		return nil, err
 | 
			
		||||
	}
 | 
			
		||||
	return x, nil
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
type Containers_ListStreamClient interface {
 | 
			
		||||
	Recv() (*ListContainerMessage, error)
 | 
			
		||||
	grpc.ClientStream
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
type containersListStreamClient struct {
 | 
			
		||||
	grpc.ClientStream
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (x *containersListStreamClient) Recv() (*ListContainerMessage, error) {
 | 
			
		||||
	m := new(ListContainerMessage)
 | 
			
		||||
	if err := x.ClientStream.RecvMsg(m); err != nil {
 | 
			
		||||
		return nil, err
 | 
			
		||||
	}
 | 
			
		||||
	return m, nil
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (c *containersClient) Create(ctx context.Context, in *CreateContainerRequest, opts ...grpc.CallOption) (*CreateContainerResponse, error) {
 | 
			
		||||
	out := new(CreateContainerResponse)
 | 
			
		||||
	err := c.cc.Invoke(ctx, "/containerd.services.containers.v1.Containers/Create", in, out, opts...)
 | 
			
		||||
	if err != nil {
 | 
			
		||||
		return nil, err
 | 
			
		||||
	}
 | 
			
		||||
	return out, nil
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (c *containersClient) Update(ctx context.Context, in *UpdateContainerRequest, opts ...grpc.CallOption) (*UpdateContainerResponse, error) {
 | 
			
		||||
	out := new(UpdateContainerResponse)
 | 
			
		||||
	err := c.cc.Invoke(ctx, "/containerd.services.containers.v1.Containers/Update", in, out, opts...)
 | 
			
		||||
	if err != nil {
 | 
			
		||||
		return nil, err
 | 
			
		||||
	}
 | 
			
		||||
	return out, nil
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (c *containersClient) Delete(ctx context.Context, in *DeleteContainerRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) {
 | 
			
		||||
	out := new(emptypb.Empty)
 | 
			
		||||
	err := c.cc.Invoke(ctx, "/containerd.services.containers.v1.Containers/Delete", in, out, opts...)
 | 
			
		||||
	if err != nil {
 | 
			
		||||
		return nil, err
 | 
			
		||||
	}
 | 
			
		||||
	return out, nil
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// ContainersServer is the server API for Containers service.
 | 
			
		||||
// All implementations must embed UnimplementedContainersServer
 | 
			
		||||
// for forward compatibility
 | 
			
		||||
type ContainersServer interface {
 | 
			
		||||
	Get(context.Context, *GetContainerRequest) (*GetContainerResponse, error)
 | 
			
		||||
	List(context.Context, *ListContainersRequest) (*ListContainersResponse, error)
 | 
			
		||||
	ListStream(*ListContainersRequest, Containers_ListStreamServer) error
 | 
			
		||||
	Create(context.Context, *CreateContainerRequest) (*CreateContainerResponse, error)
 | 
			
		||||
	Update(context.Context, *UpdateContainerRequest) (*UpdateContainerResponse, error)
 | 
			
		||||
	Delete(context.Context, *DeleteContainerRequest) (*emptypb.Empty, error)
 | 
			
		||||
	mustEmbedUnimplementedContainersServer()
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// UnimplementedContainersServer must be embedded to have forward compatible implementations.
 | 
			
		||||
type UnimplementedContainersServer struct {
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (UnimplementedContainersServer) Get(context.Context, *GetContainerRequest) (*GetContainerResponse, error) {
 | 
			
		||||
	return nil, status.Errorf(codes.Unimplemented, "method Get not implemented")
 | 
			
		||||
}
 | 
			
		||||
func (UnimplementedContainersServer) List(context.Context, *ListContainersRequest) (*ListContainersResponse, error) {
 | 
			
		||||
	return nil, status.Errorf(codes.Unimplemented, "method List not implemented")
 | 
			
		||||
}
 | 
			
		||||
func (UnimplementedContainersServer) ListStream(*ListContainersRequest, Containers_ListStreamServer) error {
 | 
			
		||||
	return status.Errorf(codes.Unimplemented, "method ListStream not implemented")
 | 
			
		||||
}
 | 
			
		||||
func (UnimplementedContainersServer) Create(context.Context, *CreateContainerRequest) (*CreateContainerResponse, error) {
 | 
			
		||||
	return nil, status.Errorf(codes.Unimplemented, "method Create not implemented")
 | 
			
		||||
}
 | 
			
		||||
func (UnimplementedContainersServer) Update(context.Context, *UpdateContainerRequest) (*UpdateContainerResponse, error) {
 | 
			
		||||
	return nil, status.Errorf(codes.Unimplemented, "method Update not implemented")
 | 
			
		||||
}
 | 
			
		||||
func (UnimplementedContainersServer) Delete(context.Context, *DeleteContainerRequest) (*emptypb.Empty, error) {
 | 
			
		||||
	return nil, status.Errorf(codes.Unimplemented, "method Delete not implemented")
 | 
			
		||||
}
 | 
			
		||||
func (UnimplementedContainersServer) mustEmbedUnimplementedContainersServer() {}
 | 
			
		||||
 | 
			
		||||
// UnsafeContainersServer may be embedded to opt out of forward compatibility for this service.
 | 
			
		||||
// Use of this interface is not recommended, as added methods to ContainersServer will
 | 
			
		||||
// result in compilation errors.
 | 
			
		||||
type UnsafeContainersServer interface {
 | 
			
		||||
	mustEmbedUnimplementedContainersServer()
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func RegisterContainersServer(s grpc.ServiceRegistrar, srv ContainersServer) {
 | 
			
		||||
	s.RegisterService(&Containers_ServiceDesc, srv)
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func _Containers_Get_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
 | 
			
		||||
	in := new(GetContainerRequest)
 | 
			
		||||
	if err := dec(in); err != nil {
 | 
			
		||||
		return nil, err
 | 
			
		||||
	}
 | 
			
		||||
	if interceptor == nil {
 | 
			
		||||
		return srv.(ContainersServer).Get(ctx, in)
 | 
			
		||||
	}
 | 
			
		||||
	info := &grpc.UnaryServerInfo{
 | 
			
		||||
		Server:     srv,
 | 
			
		||||
		FullMethod: "/containerd.services.containers.v1.Containers/Get",
 | 
			
		||||
	}
 | 
			
		||||
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
 | 
			
		||||
		return srv.(ContainersServer).Get(ctx, req.(*GetContainerRequest))
 | 
			
		||||
	}
 | 
			
		||||
	return interceptor(ctx, in, info, handler)
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func _Containers_List_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
 | 
			
		||||
	in := new(ListContainersRequest)
 | 
			
		||||
	if err := dec(in); err != nil {
 | 
			
		||||
		return nil, err
 | 
			
		||||
	}
 | 
			
		||||
	if interceptor == nil {
 | 
			
		||||
		return srv.(ContainersServer).List(ctx, in)
 | 
			
		||||
	}
 | 
			
		||||
	info := &grpc.UnaryServerInfo{
 | 
			
		||||
		Server:     srv,
 | 
			
		||||
		FullMethod: "/containerd.services.containers.v1.Containers/List",
 | 
			
		||||
	}
 | 
			
		||||
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
 | 
			
		||||
		return srv.(ContainersServer).List(ctx, req.(*ListContainersRequest))
 | 
			
		||||
	}
 | 
			
		||||
	return interceptor(ctx, in, info, handler)
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func _Containers_ListStream_Handler(srv interface{}, stream grpc.ServerStream) error {
 | 
			
		||||
	m := new(ListContainersRequest)
 | 
			
		||||
	if err := stream.RecvMsg(m); err != nil {
 | 
			
		||||
		return err
 | 
			
		||||
	}
 | 
			
		||||
	return srv.(ContainersServer).ListStream(m, &containersListStreamServer{stream})
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
type Containers_ListStreamServer interface {
 | 
			
		||||
	Send(*ListContainerMessage) error
 | 
			
		||||
	grpc.ServerStream
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
type containersListStreamServer struct {
 | 
			
		||||
	grpc.ServerStream
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (x *containersListStreamServer) Send(m *ListContainerMessage) error {
 | 
			
		||||
	return x.ServerStream.SendMsg(m)
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func _Containers_Create_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
 | 
			
		||||
	in := new(CreateContainerRequest)
 | 
			
		||||
	if err := dec(in); err != nil {
 | 
			
		||||
		return nil, err
 | 
			
		||||
	}
 | 
			
		||||
	if interceptor == nil {
 | 
			
		||||
		return srv.(ContainersServer).Create(ctx, in)
 | 
			
		||||
	}
 | 
			
		||||
	info := &grpc.UnaryServerInfo{
 | 
			
		||||
		Server:     srv,
 | 
			
		||||
		FullMethod: "/containerd.services.containers.v1.Containers/Create",
 | 
			
		||||
	}
 | 
			
		||||
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
 | 
			
		||||
		return srv.(ContainersServer).Create(ctx, req.(*CreateContainerRequest))
 | 
			
		||||
	}
 | 
			
		||||
	return interceptor(ctx, in, info, handler)
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func _Containers_Update_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
 | 
			
		||||
	in := new(UpdateContainerRequest)
 | 
			
		||||
	if err := dec(in); err != nil {
 | 
			
		||||
		return nil, err
 | 
			
		||||
	}
 | 
			
		||||
	if interceptor == nil {
 | 
			
		||||
		return srv.(ContainersServer).Update(ctx, in)
 | 
			
		||||
	}
 | 
			
		||||
	info := &grpc.UnaryServerInfo{
 | 
			
		||||
		Server:     srv,
 | 
			
		||||
		FullMethod: "/containerd.services.containers.v1.Containers/Update",
 | 
			
		||||
	}
 | 
			
		||||
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
 | 
			
		||||
		return srv.(ContainersServer).Update(ctx, req.(*UpdateContainerRequest))
 | 
			
		||||
	}
 | 
			
		||||
	return interceptor(ctx, in, info, handler)
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func _Containers_Delete_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
 | 
			
		||||
	in := new(DeleteContainerRequest)
 | 
			
		||||
	if err := dec(in); err != nil {
 | 
			
		||||
		return nil, err
 | 
			
		||||
	}
 | 
			
		||||
	if interceptor == nil {
 | 
			
		||||
		return srv.(ContainersServer).Delete(ctx, in)
 | 
			
		||||
	}
 | 
			
		||||
	info := &grpc.UnaryServerInfo{
 | 
			
		||||
		Server:     srv,
 | 
			
		||||
		FullMethod: "/containerd.services.containers.v1.Containers/Delete",
 | 
			
		||||
	}
 | 
			
		||||
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
 | 
			
		||||
		return srv.(ContainersServer).Delete(ctx, req.(*DeleteContainerRequest))
 | 
			
		||||
	}
 | 
			
		||||
	return interceptor(ctx, in, info, handler)
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// Containers_ServiceDesc is the grpc.ServiceDesc for Containers service.
 | 
			
		||||
// It's only intended for direct use with grpc.RegisterService,
 | 
			
		||||
// and not to be introspected or modified (even as a copy)
 | 
			
		||||
var Containers_ServiceDesc = grpc.ServiceDesc{
 | 
			
		||||
	ServiceName: "containerd.services.containers.v1.Containers",
 | 
			
		||||
	HandlerType: (*ContainersServer)(nil),
 | 
			
		||||
	Methods: []grpc.MethodDesc{
 | 
			
		||||
		{
 | 
			
		||||
			MethodName: "Get",
 | 
			
		||||
			Handler:    _Containers_Get_Handler,
 | 
			
		||||
		},
 | 
			
		||||
		{
 | 
			
		||||
			MethodName: "List",
 | 
			
		||||
			Handler:    _Containers_List_Handler,
 | 
			
		||||
		},
 | 
			
		||||
		{
 | 
			
		||||
			MethodName: "Create",
 | 
			
		||||
			Handler:    _Containers_Create_Handler,
 | 
			
		||||
		},
 | 
			
		||||
		{
 | 
			
		||||
			MethodName: "Update",
 | 
			
		||||
			Handler:    _Containers_Update_Handler,
 | 
			
		||||
		},
 | 
			
		||||
		{
 | 
			
		||||
			MethodName: "Delete",
 | 
			
		||||
			Handler:    _Containers_Delete_Handler,
 | 
			
		||||
		},
 | 
			
		||||
	},
 | 
			
		||||
	Streams: []grpc.StreamDesc{
 | 
			
		||||
		{
 | 
			
		||||
			StreamName:    "ListStream",
 | 
			
		||||
			Handler:       _Containers_ListStream_Handler,
 | 
			
		||||
			ServerStreams: true,
 | 
			
		||||
		},
 | 
			
		||||
	},
 | 
			
		||||
	Metadata: "github.com/containerd/containerd/api/services/containers/v1/containers.proto",
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										17
									
								
								vendor/github.com/containerd/containerd/api/services/containers/v1/doc.go
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										17
									
								
								vendor/github.com/containerd/containerd/api/services/containers/v1/doc.go
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,17 @@
 | 
			
		||||
/*
 | 
			
		||||
   Copyright The containerd Authors.
 | 
			
		||||
 | 
			
		||||
   Licensed under the Apache License, Version 2.0 (the "License");
 | 
			
		||||
   you may not use this file except in compliance with the License.
 | 
			
		||||
   You may obtain a copy of the License at
 | 
			
		||||
 | 
			
		||||
       http://www.apache.org/licenses/LICENSE-2.0
 | 
			
		||||
 | 
			
		||||
   Unless required by applicable law or agreed to in writing, software
 | 
			
		||||
   distributed under the License is distributed on an "AS IS" BASIS,
 | 
			
		||||
   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 | 
			
		||||
   See the License for the specific language governing permissions and
 | 
			
		||||
   limitations under the License.
 | 
			
		||||
*/
 | 
			
		||||
 | 
			
		||||
package containers
 | 
			
		||||
							
								
								
									
										17
									
								
								vendor/github.com/containerd/containerd/api/services/tasks/v1/doc.go
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										17
									
								
								vendor/github.com/containerd/containerd/api/services/tasks/v1/doc.go
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,17 @@
 | 
			
		||||
/*
 | 
			
		||||
   Copyright The containerd Authors.
 | 
			
		||||
 | 
			
		||||
   Licensed under the Apache License, Version 2.0 (the "License");
 | 
			
		||||
   you may not use this file except in compliance with the License.
 | 
			
		||||
   You may obtain a copy of the License at
 | 
			
		||||
 | 
			
		||||
       http://www.apache.org/licenses/LICENSE-2.0
 | 
			
		||||
 | 
			
		||||
   Unless required by applicable law or agreed to in writing, software
 | 
			
		||||
   distributed under the License is distributed on an "AS IS" BASIS,
 | 
			
		||||
   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 | 
			
		||||
   See the License for the specific language governing permissions and
 | 
			
		||||
   limitations under the License.
 | 
			
		||||
*/
 | 
			
		||||
 | 
			
		||||
package tasks
 | 
			
		||||
							
								
								
									
										2359
									
								
								vendor/github.com/containerd/containerd/api/services/tasks/v1/tasks.pb.go
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										2359
									
								
								vendor/github.com/containerd/containerd/api/services/tasks/v1/tasks.pb.go
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							
							
								
								
									
										227
									
								
								vendor/github.com/containerd/containerd/api/services/tasks/v1/tasks.proto
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										227
									
								
								vendor/github.com/containerd/containerd/api/services/tasks/v1/tasks.proto
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,227 @@
 | 
			
		||||
/*
 | 
			
		||||
	Copyright The containerd Authors.
 | 
			
		||||
 | 
			
		||||
	Licensed under the Apache License, Version 2.0 (the "License");
 | 
			
		||||
	you may not use this file except in compliance with the License.
 | 
			
		||||
	You may obtain a copy of the License at
 | 
			
		||||
 | 
			
		||||
		http://www.apache.org/licenses/LICENSE-2.0
 | 
			
		||||
 | 
			
		||||
	Unless required by applicable law or agreed to in writing, software
 | 
			
		||||
	distributed under the License is distributed on an "AS IS" BASIS,
 | 
			
		||||
	WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 | 
			
		||||
	See the License for the specific language governing permissions and
 | 
			
		||||
	limitations under the License.
 | 
			
		||||
*/
 | 
			
		||||
 | 
			
		||||
syntax = "proto3";
 | 
			
		||||
 | 
			
		||||
package containerd.services.tasks.v1;
 | 
			
		||||
 | 
			
		||||
import "google/protobuf/empty.proto";
 | 
			
		||||
import "google/protobuf/any.proto";
 | 
			
		||||
import "github.com/containerd/containerd/api/types/mount.proto";
 | 
			
		||||
import "github.com/containerd/containerd/api/types/metrics.proto";
 | 
			
		||||
import "github.com/containerd/containerd/api/types/descriptor.proto";
 | 
			
		||||
import "github.com/containerd/containerd/api/types/task/task.proto";
 | 
			
		||||
import "google/protobuf/timestamp.proto";
 | 
			
		||||
 | 
			
		||||
option go_package = "github.com/containerd/containerd/api/services/tasks/v1;tasks";
 | 
			
		||||
 | 
			
		||||
service Tasks {
 | 
			
		||||
	// Create a task.
 | 
			
		||||
	rpc Create(CreateTaskRequest) returns (CreateTaskResponse);
 | 
			
		||||
 | 
			
		||||
	// Start a process.
 | 
			
		||||
	rpc Start(StartRequest) returns (StartResponse);
 | 
			
		||||
 | 
			
		||||
	// Delete a task and on disk state.
 | 
			
		||||
	rpc Delete(DeleteTaskRequest) returns (DeleteResponse);
 | 
			
		||||
 | 
			
		||||
	rpc DeleteProcess(DeleteProcessRequest) returns (DeleteResponse);
 | 
			
		||||
 | 
			
		||||
	rpc Get(GetRequest) returns (GetResponse);
 | 
			
		||||
 | 
			
		||||
	rpc List(ListTasksRequest) returns (ListTasksResponse);
 | 
			
		||||
 | 
			
		||||
	// Kill a task or process.
 | 
			
		||||
	rpc Kill(KillRequest) returns (google.protobuf.Empty);
 | 
			
		||||
 | 
			
		||||
	rpc Exec(ExecProcessRequest) returns (google.protobuf.Empty);
 | 
			
		||||
 | 
			
		||||
	rpc ResizePty(ResizePtyRequest) returns (google.protobuf.Empty);
 | 
			
		||||
 | 
			
		||||
	rpc CloseIO(CloseIORequest) returns (google.protobuf.Empty);
 | 
			
		||||
 | 
			
		||||
	rpc Pause(PauseTaskRequest) returns (google.protobuf.Empty);
 | 
			
		||||
 | 
			
		||||
	rpc Resume(ResumeTaskRequest) returns (google.protobuf.Empty);
 | 
			
		||||
 | 
			
		||||
	rpc ListPids(ListPidsRequest) returns (ListPidsResponse);
 | 
			
		||||
 | 
			
		||||
	rpc Checkpoint(CheckpointTaskRequest) returns (CheckpointTaskResponse);
 | 
			
		||||
 | 
			
		||||
	rpc Update(UpdateTaskRequest) returns (google.protobuf.Empty);
 | 
			
		||||
 | 
			
		||||
	rpc Metrics(MetricsRequest) returns (MetricsResponse);
 | 
			
		||||
 | 
			
		||||
	rpc Wait(WaitRequest) returns (WaitResponse);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
message CreateTaskRequest {
 | 
			
		||||
	string container_id = 1;
 | 
			
		||||
 | 
			
		||||
	// RootFS provides the pre-chroot mounts to perform in the shim before
 | 
			
		||||
	// executing the container task.
 | 
			
		||||
	//
 | 
			
		||||
	// These are for mounts that cannot be performed in the user namespace.
 | 
			
		||||
	// Typically, these mounts should be resolved from snapshots specified on
 | 
			
		||||
	// the container object.
 | 
			
		||||
	repeated containerd.types.Mount rootfs = 3;
 | 
			
		||||
 | 
			
		||||
	string stdin = 4;
 | 
			
		||||
	string stdout = 5;
 | 
			
		||||
	string stderr = 6;
 | 
			
		||||
	bool terminal = 7;
 | 
			
		||||
 | 
			
		||||
	containerd.types.Descriptor checkpoint = 8;
 | 
			
		||||
 | 
			
		||||
	google.protobuf.Any options = 9;
 | 
			
		||||
 | 
			
		||||
	string runtime_path = 10;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
message CreateTaskResponse {
 | 
			
		||||
	string container_id = 1;
 | 
			
		||||
	uint32 pid = 2;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
message StartRequest {
 | 
			
		||||
	string container_id = 1;
 | 
			
		||||
	string exec_id = 2;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
message StartResponse {
 | 
			
		||||
	uint32 pid = 1;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
message DeleteTaskRequest {
 | 
			
		||||
	string container_id = 1;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
message DeleteResponse {
 | 
			
		||||
	string id = 1;
 | 
			
		||||
	uint32 pid = 2;
 | 
			
		||||
	uint32 exit_status = 3;
 | 
			
		||||
	google.protobuf.Timestamp exited_at = 4;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
message DeleteProcessRequest {
 | 
			
		||||
	string container_id = 1;
 | 
			
		||||
	string exec_id = 2;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
message GetRequest {
 | 
			
		||||
	string container_id = 1;
 | 
			
		||||
	string exec_id = 2;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
message GetResponse {
 | 
			
		||||
	containerd.v1.types.Process process = 1;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
message ListTasksRequest {
 | 
			
		||||
	string filter = 1;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
message ListTasksResponse {
 | 
			
		||||
	repeated containerd.v1.types.Process tasks = 1;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
message KillRequest {
 | 
			
		||||
	string container_id = 1;
 | 
			
		||||
	string exec_id = 2;
 | 
			
		||||
	uint32 signal = 3;
 | 
			
		||||
	bool all = 4;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
message ExecProcessRequest {
 | 
			
		||||
	string container_id = 1;
 | 
			
		||||
	string stdin = 2;
 | 
			
		||||
	string stdout = 3;
 | 
			
		||||
	string stderr = 4;
 | 
			
		||||
	bool terminal = 5;
 | 
			
		||||
	// Spec for starting a process in the target container.
 | 
			
		||||
	//
 | 
			
		||||
	// For runc, this is a process spec, for example.
 | 
			
		||||
	google.protobuf.Any spec = 6;
 | 
			
		||||
	// id of the exec process
 | 
			
		||||
	string exec_id = 7;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
message ExecProcessResponse {
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
message ResizePtyRequest {
 | 
			
		||||
	string container_id = 1;
 | 
			
		||||
	string exec_id = 2;
 | 
			
		||||
	uint32 width = 3;
 | 
			
		||||
	uint32 height = 4;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
message CloseIORequest {
 | 
			
		||||
	string container_id = 1;
 | 
			
		||||
	string exec_id = 2;
 | 
			
		||||
	bool stdin = 3;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
message PauseTaskRequest {
 | 
			
		||||
	string container_id = 1;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
message ResumeTaskRequest {
 | 
			
		||||
	string container_id = 1;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
message ListPidsRequest {
 | 
			
		||||
	string container_id = 1;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
message ListPidsResponse {
 | 
			
		||||
	// Processes includes the process ID and additional process information
 | 
			
		||||
	repeated containerd.v1.types.ProcessInfo processes = 1;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
message CheckpointTaskRequest {
 | 
			
		||||
	string container_id = 1;
 | 
			
		||||
	string parent_checkpoint = 2;
 | 
			
		||||
	google.protobuf.Any options = 3;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
message CheckpointTaskResponse {
 | 
			
		||||
	repeated containerd.types.Descriptor descriptors = 1;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
message UpdateTaskRequest {
 | 
			
		||||
	string container_id = 1;
 | 
			
		||||
	google.protobuf.Any resources = 2;
 | 
			
		||||
	map<string, string> annotations = 3;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
message MetricsRequest {
 | 
			
		||||
	repeated string filters = 1;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
message MetricsResponse {
 | 
			
		||||
	repeated types.Metric metrics = 1;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
message WaitRequest {
 | 
			
		||||
	string container_id = 1;
 | 
			
		||||
	string exec_id = 2;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
message WaitResponse {
 | 
			
		||||
	uint32 exit_status = 1;
 | 
			
		||||
	google.protobuf.Timestamp exited_at = 2;
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										690
									
								
								vendor/github.com/containerd/containerd/api/services/tasks/v1/tasks_grpc.pb.go
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										690
									
								
								vendor/github.com/containerd/containerd/api/services/tasks/v1/tasks_grpc.pb.go
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,690 @@
 | 
			
		||||
// Code generated by protoc-gen-go-grpc. DO NOT EDIT.
 | 
			
		||||
// versions:
 | 
			
		||||
// - protoc-gen-go-grpc v1.2.0
 | 
			
		||||
// - protoc             v3.20.1
 | 
			
		||||
// source: github.com/containerd/containerd/api/services/tasks/v1/tasks.proto
 | 
			
		||||
 | 
			
		||||
package tasks
 | 
			
		||||
 | 
			
		||||
import (
 | 
			
		||||
	context "context"
 | 
			
		||||
	grpc "google.golang.org/grpc"
 | 
			
		||||
	codes "google.golang.org/grpc/codes"
 | 
			
		||||
	status "google.golang.org/grpc/status"
 | 
			
		||||
	emptypb "google.golang.org/protobuf/types/known/emptypb"
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
// This is a compile-time assertion to ensure that this generated file
 | 
			
		||||
// is compatible with the grpc package it is being compiled against.
 | 
			
		||||
// Requires gRPC-Go v1.32.0 or later.
 | 
			
		||||
const _ = grpc.SupportPackageIsVersion7
 | 
			
		||||
 | 
			
		||||
// TasksClient is the client API for Tasks service.
 | 
			
		||||
//
 | 
			
		||||
// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://pkg.go.dev/google.golang.org/grpc/?tab=doc#ClientConn.NewStream.
 | 
			
		||||
type TasksClient interface {
 | 
			
		||||
	// Create a task.
 | 
			
		||||
	Create(ctx context.Context, in *CreateTaskRequest, opts ...grpc.CallOption) (*CreateTaskResponse, error)
 | 
			
		||||
	// Start a process.
 | 
			
		||||
	Start(ctx context.Context, in *StartRequest, opts ...grpc.CallOption) (*StartResponse, error)
 | 
			
		||||
	// Delete a task and on disk state.
 | 
			
		||||
	Delete(ctx context.Context, in *DeleteTaskRequest, opts ...grpc.CallOption) (*DeleteResponse, error)
 | 
			
		||||
	DeleteProcess(ctx context.Context, in *DeleteProcessRequest, opts ...grpc.CallOption) (*DeleteResponse, error)
 | 
			
		||||
	Get(ctx context.Context, in *GetRequest, opts ...grpc.CallOption) (*GetResponse, error)
 | 
			
		||||
	List(ctx context.Context, in *ListTasksRequest, opts ...grpc.CallOption) (*ListTasksResponse, error)
 | 
			
		||||
	// Kill a task or process.
 | 
			
		||||
	Kill(ctx context.Context, in *KillRequest, opts ...grpc.CallOption) (*emptypb.Empty, error)
 | 
			
		||||
	Exec(ctx context.Context, in *ExecProcessRequest, opts ...grpc.CallOption) (*emptypb.Empty, error)
 | 
			
		||||
	ResizePty(ctx context.Context, in *ResizePtyRequest, opts ...grpc.CallOption) (*emptypb.Empty, error)
 | 
			
		||||
	CloseIO(ctx context.Context, in *CloseIORequest, opts ...grpc.CallOption) (*emptypb.Empty, error)
 | 
			
		||||
	Pause(ctx context.Context, in *PauseTaskRequest, opts ...grpc.CallOption) (*emptypb.Empty, error)
 | 
			
		||||
	Resume(ctx context.Context, in *ResumeTaskRequest, opts ...grpc.CallOption) (*emptypb.Empty, error)
 | 
			
		||||
	ListPids(ctx context.Context, in *ListPidsRequest, opts ...grpc.CallOption) (*ListPidsResponse, error)
 | 
			
		||||
	Checkpoint(ctx context.Context, in *CheckpointTaskRequest, opts ...grpc.CallOption) (*CheckpointTaskResponse, error)
 | 
			
		||||
	Update(ctx context.Context, in *UpdateTaskRequest, opts ...grpc.CallOption) (*emptypb.Empty, error)
 | 
			
		||||
	Metrics(ctx context.Context, in *MetricsRequest, opts ...grpc.CallOption) (*MetricsResponse, error)
 | 
			
		||||
	Wait(ctx context.Context, in *WaitRequest, opts ...grpc.CallOption) (*WaitResponse, error)
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
type tasksClient struct {
 | 
			
		||||
	cc grpc.ClientConnInterface
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func NewTasksClient(cc grpc.ClientConnInterface) TasksClient {
 | 
			
		||||
	return &tasksClient{cc}
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (c *tasksClient) Create(ctx context.Context, in *CreateTaskRequest, opts ...grpc.CallOption) (*CreateTaskResponse, error) {
 | 
			
		||||
	out := new(CreateTaskResponse)
 | 
			
		||||
	err := c.cc.Invoke(ctx, "/containerd.services.tasks.v1.Tasks/Create", in, out, opts...)
 | 
			
		||||
	if err != nil {
 | 
			
		||||
		return nil, err
 | 
			
		||||
	}
 | 
			
		||||
	return out, nil
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (c *tasksClient) Start(ctx context.Context, in *StartRequest, opts ...grpc.CallOption) (*StartResponse, error) {
 | 
			
		||||
	out := new(StartResponse)
 | 
			
		||||
	err := c.cc.Invoke(ctx, "/containerd.services.tasks.v1.Tasks/Start", in, out, opts...)
 | 
			
		||||
	if err != nil {
 | 
			
		||||
		return nil, err
 | 
			
		||||
	}
 | 
			
		||||
	return out, nil
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (c *tasksClient) Delete(ctx context.Context, in *DeleteTaskRequest, opts ...grpc.CallOption) (*DeleteResponse, error) {
 | 
			
		||||
	out := new(DeleteResponse)
 | 
			
		||||
	err := c.cc.Invoke(ctx, "/containerd.services.tasks.v1.Tasks/Delete", in, out, opts...)
 | 
			
		||||
	if err != nil {
 | 
			
		||||
		return nil, err
 | 
			
		||||
	}
 | 
			
		||||
	return out, nil
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (c *tasksClient) DeleteProcess(ctx context.Context, in *DeleteProcessRequest, opts ...grpc.CallOption) (*DeleteResponse, error) {
 | 
			
		||||
	out := new(DeleteResponse)
 | 
			
		||||
	err := c.cc.Invoke(ctx, "/containerd.services.tasks.v1.Tasks/DeleteProcess", in, out, opts...)
 | 
			
		||||
	if err != nil {
 | 
			
		||||
		return nil, err
 | 
			
		||||
	}
 | 
			
		||||
	return out, nil
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (c *tasksClient) Get(ctx context.Context, in *GetRequest, opts ...grpc.CallOption) (*GetResponse, error) {
 | 
			
		||||
	out := new(GetResponse)
 | 
			
		||||
	err := c.cc.Invoke(ctx, "/containerd.services.tasks.v1.Tasks/Get", in, out, opts...)
 | 
			
		||||
	if err != nil {
 | 
			
		||||
		return nil, err
 | 
			
		||||
	}
 | 
			
		||||
	return out, nil
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (c *tasksClient) List(ctx context.Context, in *ListTasksRequest, opts ...grpc.CallOption) (*ListTasksResponse, error) {
 | 
			
		||||
	out := new(ListTasksResponse)
 | 
			
		||||
	err := c.cc.Invoke(ctx, "/containerd.services.tasks.v1.Tasks/List", in, out, opts...)
 | 
			
		||||
	if err != nil {
 | 
			
		||||
		return nil, err
 | 
			
		||||
	}
 | 
			
		||||
	return out, nil
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (c *tasksClient) Kill(ctx context.Context, in *KillRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) {
 | 
			
		||||
	out := new(emptypb.Empty)
 | 
			
		||||
	err := c.cc.Invoke(ctx, "/containerd.services.tasks.v1.Tasks/Kill", in, out, opts...)
 | 
			
		||||
	if err != nil {
 | 
			
		||||
		return nil, err
 | 
			
		||||
	}
 | 
			
		||||
	return out, nil
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (c *tasksClient) Exec(ctx context.Context, in *ExecProcessRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) {
 | 
			
		||||
	out := new(emptypb.Empty)
 | 
			
		||||
	err := c.cc.Invoke(ctx, "/containerd.services.tasks.v1.Tasks/Exec", in, out, opts...)
 | 
			
		||||
	if err != nil {
 | 
			
		||||
		return nil, err
 | 
			
		||||
	}
 | 
			
		||||
	return out, nil
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (c *tasksClient) ResizePty(ctx context.Context, in *ResizePtyRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) {
 | 
			
		||||
	out := new(emptypb.Empty)
 | 
			
		||||
	err := c.cc.Invoke(ctx, "/containerd.services.tasks.v1.Tasks/ResizePty", in, out, opts...)
 | 
			
		||||
	if err != nil {
 | 
			
		||||
		return nil, err
 | 
			
		||||
	}
 | 
			
		||||
	return out, nil
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (c *tasksClient) CloseIO(ctx context.Context, in *CloseIORequest, opts ...grpc.CallOption) (*emptypb.Empty, error) {
 | 
			
		||||
	out := new(emptypb.Empty)
 | 
			
		||||
	err := c.cc.Invoke(ctx, "/containerd.services.tasks.v1.Tasks/CloseIO", in, out, opts...)
 | 
			
		||||
	if err != nil {
 | 
			
		||||
		return nil, err
 | 
			
		||||
	}
 | 
			
		||||
	return out, nil
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (c *tasksClient) Pause(ctx context.Context, in *PauseTaskRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) {
 | 
			
		||||
	out := new(emptypb.Empty)
 | 
			
		||||
	err := c.cc.Invoke(ctx, "/containerd.services.tasks.v1.Tasks/Pause", in, out, opts...)
 | 
			
		||||
	if err != nil {
 | 
			
		||||
		return nil, err
 | 
			
		||||
	}
 | 
			
		||||
	return out, nil
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (c *tasksClient) Resume(ctx context.Context, in *ResumeTaskRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) {
 | 
			
		||||
	out := new(emptypb.Empty)
 | 
			
		||||
	err := c.cc.Invoke(ctx, "/containerd.services.tasks.v1.Tasks/Resume", in, out, opts...)
 | 
			
		||||
	if err != nil {
 | 
			
		||||
		return nil, err
 | 
			
		||||
	}
 | 
			
		||||
	return out, nil
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (c *tasksClient) ListPids(ctx context.Context, in *ListPidsRequest, opts ...grpc.CallOption) (*ListPidsResponse, error) {
 | 
			
		||||
	out := new(ListPidsResponse)
 | 
			
		||||
	err := c.cc.Invoke(ctx, "/containerd.services.tasks.v1.Tasks/ListPids", in, out, opts...)
 | 
			
		||||
	if err != nil {
 | 
			
		||||
		return nil, err
 | 
			
		||||
	}
 | 
			
		||||
	return out, nil
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (c *tasksClient) Checkpoint(ctx context.Context, in *CheckpointTaskRequest, opts ...grpc.CallOption) (*CheckpointTaskResponse, error) {
 | 
			
		||||
	out := new(CheckpointTaskResponse)
 | 
			
		||||
	err := c.cc.Invoke(ctx, "/containerd.services.tasks.v1.Tasks/Checkpoint", in, out, opts...)
 | 
			
		||||
	if err != nil {
 | 
			
		||||
		return nil, err
 | 
			
		||||
	}
 | 
			
		||||
	return out, nil
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (c *tasksClient) Update(ctx context.Context, in *UpdateTaskRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) {
 | 
			
		||||
	out := new(emptypb.Empty)
 | 
			
		||||
	err := c.cc.Invoke(ctx, "/containerd.services.tasks.v1.Tasks/Update", in, out, opts...)
 | 
			
		||||
	if err != nil {
 | 
			
		||||
		return nil, err
 | 
			
		||||
	}
 | 
			
		||||
	return out, nil
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (c *tasksClient) Metrics(ctx context.Context, in *MetricsRequest, opts ...grpc.CallOption) (*MetricsResponse, error) {
 | 
			
		||||
	out := new(MetricsResponse)
 | 
			
		||||
	err := c.cc.Invoke(ctx, "/containerd.services.tasks.v1.Tasks/Metrics", in, out, opts...)
 | 
			
		||||
	if err != nil {
 | 
			
		||||
		return nil, err
 | 
			
		||||
	}
 | 
			
		||||
	return out, nil
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (c *tasksClient) Wait(ctx context.Context, in *WaitRequest, opts ...grpc.CallOption) (*WaitResponse, error) {
 | 
			
		||||
	out := new(WaitResponse)
 | 
			
		||||
	err := c.cc.Invoke(ctx, "/containerd.services.tasks.v1.Tasks/Wait", in, out, opts...)
 | 
			
		||||
	if err != nil {
 | 
			
		||||
		return nil, err
 | 
			
		||||
	}
 | 
			
		||||
	return out, nil
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// TasksServer is the server API for Tasks service.
 | 
			
		||||
// All implementations must embed UnimplementedTasksServer
 | 
			
		||||
// for forward compatibility
 | 
			
		||||
type TasksServer interface {
 | 
			
		||||
	// Create a task.
 | 
			
		||||
	Create(context.Context, *CreateTaskRequest) (*CreateTaskResponse, error)
 | 
			
		||||
	// Start a process.
 | 
			
		||||
	Start(context.Context, *StartRequest) (*StartResponse, error)
 | 
			
		||||
	// Delete a task and on disk state.
 | 
			
		||||
	Delete(context.Context, *DeleteTaskRequest) (*DeleteResponse, error)
 | 
			
		||||
	DeleteProcess(context.Context, *DeleteProcessRequest) (*DeleteResponse, error)
 | 
			
		||||
	Get(context.Context, *GetRequest) (*GetResponse, error)
 | 
			
		||||
	List(context.Context, *ListTasksRequest) (*ListTasksResponse, error)
 | 
			
		||||
	// Kill a task or process.
 | 
			
		||||
	Kill(context.Context, *KillRequest) (*emptypb.Empty, error)
 | 
			
		||||
	Exec(context.Context, *ExecProcessRequest) (*emptypb.Empty, error)
 | 
			
		||||
	ResizePty(context.Context, *ResizePtyRequest) (*emptypb.Empty, error)
 | 
			
		||||
	CloseIO(context.Context, *CloseIORequest) (*emptypb.Empty, error)
 | 
			
		||||
	Pause(context.Context, *PauseTaskRequest) (*emptypb.Empty, error)
 | 
			
		||||
	Resume(context.Context, *ResumeTaskRequest) (*emptypb.Empty, error)
 | 
			
		||||
	ListPids(context.Context, *ListPidsRequest) (*ListPidsResponse, error)
 | 
			
		||||
	Checkpoint(context.Context, *CheckpointTaskRequest) (*CheckpointTaskResponse, error)
 | 
			
		||||
	Update(context.Context, *UpdateTaskRequest) (*emptypb.Empty, error)
 | 
			
		||||
	Metrics(context.Context, *MetricsRequest) (*MetricsResponse, error)
 | 
			
		||||
	Wait(context.Context, *WaitRequest) (*WaitResponse, error)
 | 
			
		||||
	mustEmbedUnimplementedTasksServer()
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// UnimplementedTasksServer must be embedded to have forward compatible implementations.
 | 
			
		||||
type UnimplementedTasksServer struct {
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (UnimplementedTasksServer) Create(context.Context, *CreateTaskRequest) (*CreateTaskResponse, error) {
 | 
			
		||||
	return nil, status.Errorf(codes.Unimplemented, "method Create not implemented")
 | 
			
		||||
}
 | 
			
		||||
func (UnimplementedTasksServer) Start(context.Context, *StartRequest) (*StartResponse, error) {
 | 
			
		||||
	return nil, status.Errorf(codes.Unimplemented, "method Start not implemented")
 | 
			
		||||
}
 | 
			
		||||
func (UnimplementedTasksServer) Delete(context.Context, *DeleteTaskRequest) (*DeleteResponse, error) {
 | 
			
		||||
	return nil, status.Errorf(codes.Unimplemented, "method Delete not implemented")
 | 
			
		||||
}
 | 
			
		||||
func (UnimplementedTasksServer) DeleteProcess(context.Context, *DeleteProcessRequest) (*DeleteResponse, error) {
 | 
			
		||||
	return nil, status.Errorf(codes.Unimplemented, "method DeleteProcess not implemented")
 | 
			
		||||
}
 | 
			
		||||
func (UnimplementedTasksServer) Get(context.Context, *GetRequest) (*GetResponse, error) {
 | 
			
		||||
	return nil, status.Errorf(codes.Unimplemented, "method Get not implemented")
 | 
			
		||||
}
 | 
			
		||||
func (UnimplementedTasksServer) List(context.Context, *ListTasksRequest) (*ListTasksResponse, error) {
 | 
			
		||||
	return nil, status.Errorf(codes.Unimplemented, "method List not implemented")
 | 
			
		||||
}
 | 
			
		||||
func (UnimplementedTasksServer) Kill(context.Context, *KillRequest) (*emptypb.Empty, error) {
 | 
			
		||||
	return nil, status.Errorf(codes.Unimplemented, "method Kill not implemented")
 | 
			
		||||
}
 | 
			
		||||
func (UnimplementedTasksServer) Exec(context.Context, *ExecProcessRequest) (*emptypb.Empty, error) {
 | 
			
		||||
	return nil, status.Errorf(codes.Unimplemented, "method Exec not implemented")
 | 
			
		||||
}
 | 
			
		||||
func (UnimplementedTasksServer) ResizePty(context.Context, *ResizePtyRequest) (*emptypb.Empty, error) {
 | 
			
		||||
	return nil, status.Errorf(codes.Unimplemented, "method ResizePty not implemented")
 | 
			
		||||
}
 | 
			
		||||
func (UnimplementedTasksServer) CloseIO(context.Context, *CloseIORequest) (*emptypb.Empty, error) {
 | 
			
		||||
	return nil, status.Errorf(codes.Unimplemented, "method CloseIO not implemented")
 | 
			
		||||
}
 | 
			
		||||
func (UnimplementedTasksServer) Pause(context.Context, *PauseTaskRequest) (*emptypb.Empty, error) {
 | 
			
		||||
	return nil, status.Errorf(codes.Unimplemented, "method Pause not implemented")
 | 
			
		||||
}
 | 
			
		||||
func (UnimplementedTasksServer) Resume(context.Context, *ResumeTaskRequest) (*emptypb.Empty, error) {
 | 
			
		||||
	return nil, status.Errorf(codes.Unimplemented, "method Resume not implemented")
 | 
			
		||||
}
 | 
			
		||||
func (UnimplementedTasksServer) ListPids(context.Context, *ListPidsRequest) (*ListPidsResponse, error) {
 | 
			
		||||
	return nil, status.Errorf(codes.Unimplemented, "method ListPids not implemented")
 | 
			
		||||
}
 | 
			
		||||
func (UnimplementedTasksServer) Checkpoint(context.Context, *CheckpointTaskRequest) (*CheckpointTaskResponse, error) {
 | 
			
		||||
	return nil, status.Errorf(codes.Unimplemented, "method Checkpoint not implemented")
 | 
			
		||||
}
 | 
			
		||||
func (UnimplementedTasksServer) Update(context.Context, *UpdateTaskRequest) (*emptypb.Empty, error) {
 | 
			
		||||
	return nil, status.Errorf(codes.Unimplemented, "method Update not implemented")
 | 
			
		||||
}
 | 
			
		||||
func (UnimplementedTasksServer) Metrics(context.Context, *MetricsRequest) (*MetricsResponse, error) {
 | 
			
		||||
	return nil, status.Errorf(codes.Unimplemented, "method Metrics not implemented")
 | 
			
		||||
}
 | 
			
		||||
func (UnimplementedTasksServer) Wait(context.Context, *WaitRequest) (*WaitResponse, error) {
 | 
			
		||||
	return nil, status.Errorf(codes.Unimplemented, "method Wait not implemented")
 | 
			
		||||
}
 | 
			
		||||
func (UnimplementedTasksServer) mustEmbedUnimplementedTasksServer() {}
 | 
			
		||||
 | 
			
		||||
// UnsafeTasksServer may be embedded to opt out of forward compatibility for this service.
 | 
			
		||||
// Use of this interface is not recommended, as added methods to TasksServer will
 | 
			
		||||
// result in compilation errors.
 | 
			
		||||
type UnsafeTasksServer interface {
 | 
			
		||||
	mustEmbedUnimplementedTasksServer()
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func RegisterTasksServer(s grpc.ServiceRegistrar, srv TasksServer) {
 | 
			
		||||
	s.RegisterService(&Tasks_ServiceDesc, srv)
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func _Tasks_Create_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
 | 
			
		||||
	in := new(CreateTaskRequest)
 | 
			
		||||
	if err := dec(in); err != nil {
 | 
			
		||||
		return nil, err
 | 
			
		||||
	}
 | 
			
		||||
	if interceptor == nil {
 | 
			
		||||
		return srv.(TasksServer).Create(ctx, in)
 | 
			
		||||
	}
 | 
			
		||||
	info := &grpc.UnaryServerInfo{
 | 
			
		||||
		Server:     srv,
 | 
			
		||||
		FullMethod: "/containerd.services.tasks.v1.Tasks/Create",
 | 
			
		||||
	}
 | 
			
		||||
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
 | 
			
		||||
		return srv.(TasksServer).Create(ctx, req.(*CreateTaskRequest))
 | 
			
		||||
	}
 | 
			
		||||
	return interceptor(ctx, in, info, handler)
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func _Tasks_Start_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
 | 
			
		||||
	in := new(StartRequest)
 | 
			
		||||
	if err := dec(in); err != nil {
 | 
			
		||||
		return nil, err
 | 
			
		||||
	}
 | 
			
		||||
	if interceptor == nil {
 | 
			
		||||
		return srv.(TasksServer).Start(ctx, in)
 | 
			
		||||
	}
 | 
			
		||||
	info := &grpc.UnaryServerInfo{
 | 
			
		||||
		Server:     srv,
 | 
			
		||||
		FullMethod: "/containerd.services.tasks.v1.Tasks/Start",
 | 
			
		||||
	}
 | 
			
		||||
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
 | 
			
		||||
		return srv.(TasksServer).Start(ctx, req.(*StartRequest))
 | 
			
		||||
	}
 | 
			
		||||
	return interceptor(ctx, in, info, handler)
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func _Tasks_Delete_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
 | 
			
		||||
	in := new(DeleteTaskRequest)
 | 
			
		||||
	if err := dec(in); err != nil {
 | 
			
		||||
		return nil, err
 | 
			
		||||
	}
 | 
			
		||||
	if interceptor == nil {
 | 
			
		||||
		return srv.(TasksServer).Delete(ctx, in)
 | 
			
		||||
	}
 | 
			
		||||
	info := &grpc.UnaryServerInfo{
 | 
			
		||||
		Server:     srv,
 | 
			
		||||
		FullMethod: "/containerd.services.tasks.v1.Tasks/Delete",
 | 
			
		||||
	}
 | 
			
		||||
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
 | 
			
		||||
		return srv.(TasksServer).Delete(ctx, req.(*DeleteTaskRequest))
 | 
			
		||||
	}
 | 
			
		||||
	return interceptor(ctx, in, info, handler)
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func _Tasks_DeleteProcess_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
 | 
			
		||||
	in := new(DeleteProcessRequest)
 | 
			
		||||
	if err := dec(in); err != nil {
 | 
			
		||||
		return nil, err
 | 
			
		||||
	}
 | 
			
		||||
	if interceptor == nil {
 | 
			
		||||
		return srv.(TasksServer).DeleteProcess(ctx, in)
 | 
			
		||||
	}
 | 
			
		||||
	info := &grpc.UnaryServerInfo{
 | 
			
		||||
		Server:     srv,
 | 
			
		||||
		FullMethod: "/containerd.services.tasks.v1.Tasks/DeleteProcess",
 | 
			
		||||
	}
 | 
			
		||||
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
 | 
			
		||||
		return srv.(TasksServer).DeleteProcess(ctx, req.(*DeleteProcessRequest))
 | 
			
		||||
	}
 | 
			
		||||
	return interceptor(ctx, in, info, handler)
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func _Tasks_Get_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
 | 
			
		||||
	in := new(GetRequest)
 | 
			
		||||
	if err := dec(in); err != nil {
 | 
			
		||||
		return nil, err
 | 
			
		||||
	}
 | 
			
		||||
	if interceptor == nil {
 | 
			
		||||
		return srv.(TasksServer).Get(ctx, in)
 | 
			
		||||
	}
 | 
			
		||||
	info := &grpc.UnaryServerInfo{
 | 
			
		||||
		Server:     srv,
 | 
			
		||||
		FullMethod: "/containerd.services.tasks.v1.Tasks/Get",
 | 
			
		||||
	}
 | 
			
		||||
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
 | 
			
		||||
		return srv.(TasksServer).Get(ctx, req.(*GetRequest))
 | 
			
		||||
	}
 | 
			
		||||
	return interceptor(ctx, in, info, handler)
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func _Tasks_List_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
 | 
			
		||||
	in := new(ListTasksRequest)
 | 
			
		||||
	if err := dec(in); err != nil {
 | 
			
		||||
		return nil, err
 | 
			
		||||
	}
 | 
			
		||||
	if interceptor == nil {
 | 
			
		||||
		return srv.(TasksServer).List(ctx, in)
 | 
			
		||||
	}
 | 
			
		||||
	info := &grpc.UnaryServerInfo{
 | 
			
		||||
		Server:     srv,
 | 
			
		||||
		FullMethod: "/containerd.services.tasks.v1.Tasks/List",
 | 
			
		||||
	}
 | 
			
		||||
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
 | 
			
		||||
		return srv.(TasksServer).List(ctx, req.(*ListTasksRequest))
 | 
			
		||||
	}
 | 
			
		||||
	return interceptor(ctx, in, info, handler)
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func _Tasks_Kill_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
 | 
			
		||||
	in := new(KillRequest)
 | 
			
		||||
	if err := dec(in); err != nil {
 | 
			
		||||
		return nil, err
 | 
			
		||||
	}
 | 
			
		||||
	if interceptor == nil {
 | 
			
		||||
		return srv.(TasksServer).Kill(ctx, in)
 | 
			
		||||
	}
 | 
			
		||||
	info := &grpc.UnaryServerInfo{
 | 
			
		||||
		Server:     srv,
 | 
			
		||||
		FullMethod: "/containerd.services.tasks.v1.Tasks/Kill",
 | 
			
		||||
	}
 | 
			
		||||
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
 | 
			
		||||
		return srv.(TasksServer).Kill(ctx, req.(*KillRequest))
 | 
			
		||||
	}
 | 
			
		||||
	return interceptor(ctx, in, info, handler)
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func _Tasks_Exec_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
 | 
			
		||||
	in := new(ExecProcessRequest)
 | 
			
		||||
	if err := dec(in); err != nil {
 | 
			
		||||
		return nil, err
 | 
			
		||||
	}
 | 
			
		||||
	if interceptor == nil {
 | 
			
		||||
		return srv.(TasksServer).Exec(ctx, in)
 | 
			
		||||
	}
 | 
			
		||||
	info := &grpc.UnaryServerInfo{
 | 
			
		||||
		Server:     srv,
 | 
			
		||||
		FullMethod: "/containerd.services.tasks.v1.Tasks/Exec",
 | 
			
		||||
	}
 | 
			
		||||
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
 | 
			
		||||
		return srv.(TasksServer).Exec(ctx, req.(*ExecProcessRequest))
 | 
			
		||||
	}
 | 
			
		||||
	return interceptor(ctx, in, info, handler)
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func _Tasks_ResizePty_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
 | 
			
		||||
	in := new(ResizePtyRequest)
 | 
			
		||||
	if err := dec(in); err != nil {
 | 
			
		||||
		return nil, err
 | 
			
		||||
	}
 | 
			
		||||
	if interceptor == nil {
 | 
			
		||||
		return srv.(TasksServer).ResizePty(ctx, in)
 | 
			
		||||
	}
 | 
			
		||||
	info := &grpc.UnaryServerInfo{
 | 
			
		||||
		Server:     srv,
 | 
			
		||||
		FullMethod: "/containerd.services.tasks.v1.Tasks/ResizePty",
 | 
			
		||||
	}
 | 
			
		||||
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
 | 
			
		||||
		return srv.(TasksServer).ResizePty(ctx, req.(*ResizePtyRequest))
 | 
			
		||||
	}
 | 
			
		||||
	return interceptor(ctx, in, info, handler)
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func _Tasks_CloseIO_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
 | 
			
		||||
	in := new(CloseIORequest)
 | 
			
		||||
	if err := dec(in); err != nil {
 | 
			
		||||
		return nil, err
 | 
			
		||||
	}
 | 
			
		||||
	if interceptor == nil {
 | 
			
		||||
		return srv.(TasksServer).CloseIO(ctx, in)
 | 
			
		||||
	}
 | 
			
		||||
	info := &grpc.UnaryServerInfo{
 | 
			
		||||
		Server:     srv,
 | 
			
		||||
		FullMethod: "/containerd.services.tasks.v1.Tasks/CloseIO",
 | 
			
		||||
	}
 | 
			
		||||
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
 | 
			
		||||
		return srv.(TasksServer).CloseIO(ctx, req.(*CloseIORequest))
 | 
			
		||||
	}
 | 
			
		||||
	return interceptor(ctx, in, info, handler)
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func _Tasks_Pause_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
 | 
			
		||||
	in := new(PauseTaskRequest)
 | 
			
		||||
	if err := dec(in); err != nil {
 | 
			
		||||
		return nil, err
 | 
			
		||||
	}
 | 
			
		||||
	if interceptor == nil {
 | 
			
		||||
		return srv.(TasksServer).Pause(ctx, in)
 | 
			
		||||
	}
 | 
			
		||||
	info := &grpc.UnaryServerInfo{
 | 
			
		||||
		Server:     srv,
 | 
			
		||||
		FullMethod: "/containerd.services.tasks.v1.Tasks/Pause",
 | 
			
		||||
	}
 | 
			
		||||
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
 | 
			
		||||
		return srv.(TasksServer).Pause(ctx, req.(*PauseTaskRequest))
 | 
			
		||||
	}
 | 
			
		||||
	return interceptor(ctx, in, info, handler)
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func _Tasks_Resume_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
 | 
			
		||||
	in := new(ResumeTaskRequest)
 | 
			
		||||
	if err := dec(in); err != nil {
 | 
			
		||||
		return nil, err
 | 
			
		||||
	}
 | 
			
		||||
	if interceptor == nil {
 | 
			
		||||
		return srv.(TasksServer).Resume(ctx, in)
 | 
			
		||||
	}
 | 
			
		||||
	info := &grpc.UnaryServerInfo{
 | 
			
		||||
		Server:     srv,
 | 
			
		||||
		FullMethod: "/containerd.services.tasks.v1.Tasks/Resume",
 | 
			
		||||
	}
 | 
			
		||||
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
 | 
			
		||||
		return srv.(TasksServer).Resume(ctx, req.(*ResumeTaskRequest))
 | 
			
		||||
	}
 | 
			
		||||
	return interceptor(ctx, in, info, handler)
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func _Tasks_ListPids_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
 | 
			
		||||
	in := new(ListPidsRequest)
 | 
			
		||||
	if err := dec(in); err != nil {
 | 
			
		||||
		return nil, err
 | 
			
		||||
	}
 | 
			
		||||
	if interceptor == nil {
 | 
			
		||||
		return srv.(TasksServer).ListPids(ctx, in)
 | 
			
		||||
	}
 | 
			
		||||
	info := &grpc.UnaryServerInfo{
 | 
			
		||||
		Server:     srv,
 | 
			
		||||
		FullMethod: "/containerd.services.tasks.v1.Tasks/ListPids",
 | 
			
		||||
	}
 | 
			
		||||
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
 | 
			
		||||
		return srv.(TasksServer).ListPids(ctx, req.(*ListPidsRequest))
 | 
			
		||||
	}
 | 
			
		||||
	return interceptor(ctx, in, info, handler)
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func _Tasks_Checkpoint_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
 | 
			
		||||
	in := new(CheckpointTaskRequest)
 | 
			
		||||
	if err := dec(in); err != nil {
 | 
			
		||||
		return nil, err
 | 
			
		||||
	}
 | 
			
		||||
	if interceptor == nil {
 | 
			
		||||
		return srv.(TasksServer).Checkpoint(ctx, in)
 | 
			
		||||
	}
 | 
			
		||||
	info := &grpc.UnaryServerInfo{
 | 
			
		||||
		Server:     srv,
 | 
			
		||||
		FullMethod: "/containerd.services.tasks.v1.Tasks/Checkpoint",
 | 
			
		||||
	}
 | 
			
		||||
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
 | 
			
		||||
		return srv.(TasksServer).Checkpoint(ctx, req.(*CheckpointTaskRequest))
 | 
			
		||||
	}
 | 
			
		||||
	return interceptor(ctx, in, info, handler)
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func _Tasks_Update_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
 | 
			
		||||
	in := new(UpdateTaskRequest)
 | 
			
		||||
	if err := dec(in); err != nil {
 | 
			
		||||
		return nil, err
 | 
			
		||||
	}
 | 
			
		||||
	if interceptor == nil {
 | 
			
		||||
		return srv.(TasksServer).Update(ctx, in)
 | 
			
		||||
	}
 | 
			
		||||
	info := &grpc.UnaryServerInfo{
 | 
			
		||||
		Server:     srv,
 | 
			
		||||
		FullMethod: "/containerd.services.tasks.v1.Tasks/Update",
 | 
			
		||||
	}
 | 
			
		||||
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
 | 
			
		||||
		return srv.(TasksServer).Update(ctx, req.(*UpdateTaskRequest))
 | 
			
		||||
	}
 | 
			
		||||
	return interceptor(ctx, in, info, handler)
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func _Tasks_Metrics_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
 | 
			
		||||
	in := new(MetricsRequest)
 | 
			
		||||
	if err := dec(in); err != nil {
 | 
			
		||||
		return nil, err
 | 
			
		||||
	}
 | 
			
		||||
	if interceptor == nil {
 | 
			
		||||
		return srv.(TasksServer).Metrics(ctx, in)
 | 
			
		||||
	}
 | 
			
		||||
	info := &grpc.UnaryServerInfo{
 | 
			
		||||
		Server:     srv,
 | 
			
		||||
		FullMethod: "/containerd.services.tasks.v1.Tasks/Metrics",
 | 
			
		||||
	}
 | 
			
		||||
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
 | 
			
		||||
		return srv.(TasksServer).Metrics(ctx, req.(*MetricsRequest))
 | 
			
		||||
	}
 | 
			
		||||
	return interceptor(ctx, in, info, handler)
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func _Tasks_Wait_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
 | 
			
		||||
	in := new(WaitRequest)
 | 
			
		||||
	if err := dec(in); err != nil {
 | 
			
		||||
		return nil, err
 | 
			
		||||
	}
 | 
			
		||||
	if interceptor == nil {
 | 
			
		||||
		return srv.(TasksServer).Wait(ctx, in)
 | 
			
		||||
	}
 | 
			
		||||
	info := &grpc.UnaryServerInfo{
 | 
			
		||||
		Server:     srv,
 | 
			
		||||
		FullMethod: "/containerd.services.tasks.v1.Tasks/Wait",
 | 
			
		||||
	}
 | 
			
		||||
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
 | 
			
		||||
		return srv.(TasksServer).Wait(ctx, req.(*WaitRequest))
 | 
			
		||||
	}
 | 
			
		||||
	return interceptor(ctx, in, info, handler)
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// Tasks_ServiceDesc is the grpc.ServiceDesc for Tasks service.
 | 
			
		||||
// It's only intended for direct use with grpc.RegisterService,
 | 
			
		||||
// and not to be introspected or modified (even as a copy)
 | 
			
		||||
var Tasks_ServiceDesc = grpc.ServiceDesc{
 | 
			
		||||
	ServiceName: "containerd.services.tasks.v1.Tasks",
 | 
			
		||||
	HandlerType: (*TasksServer)(nil),
 | 
			
		||||
	Methods: []grpc.MethodDesc{
 | 
			
		||||
		{
 | 
			
		||||
			MethodName: "Create",
 | 
			
		||||
			Handler:    _Tasks_Create_Handler,
 | 
			
		||||
		},
 | 
			
		||||
		{
 | 
			
		||||
			MethodName: "Start",
 | 
			
		||||
			Handler:    _Tasks_Start_Handler,
 | 
			
		||||
		},
 | 
			
		||||
		{
 | 
			
		||||
			MethodName: "Delete",
 | 
			
		||||
			Handler:    _Tasks_Delete_Handler,
 | 
			
		||||
		},
 | 
			
		||||
		{
 | 
			
		||||
			MethodName: "DeleteProcess",
 | 
			
		||||
			Handler:    _Tasks_DeleteProcess_Handler,
 | 
			
		||||
		},
 | 
			
		||||
		{
 | 
			
		||||
			MethodName: "Get",
 | 
			
		||||
			Handler:    _Tasks_Get_Handler,
 | 
			
		||||
		},
 | 
			
		||||
		{
 | 
			
		||||
			MethodName: "List",
 | 
			
		||||
			Handler:    _Tasks_List_Handler,
 | 
			
		||||
		},
 | 
			
		||||
		{
 | 
			
		||||
			MethodName: "Kill",
 | 
			
		||||
			Handler:    _Tasks_Kill_Handler,
 | 
			
		||||
		},
 | 
			
		||||
		{
 | 
			
		||||
			MethodName: "Exec",
 | 
			
		||||
			Handler:    _Tasks_Exec_Handler,
 | 
			
		||||
		},
 | 
			
		||||
		{
 | 
			
		||||
			MethodName: "ResizePty",
 | 
			
		||||
			Handler:    _Tasks_ResizePty_Handler,
 | 
			
		||||
		},
 | 
			
		||||
		{
 | 
			
		||||
			MethodName: "CloseIO",
 | 
			
		||||
			Handler:    _Tasks_CloseIO_Handler,
 | 
			
		||||
		},
 | 
			
		||||
		{
 | 
			
		||||
			MethodName: "Pause",
 | 
			
		||||
			Handler:    _Tasks_Pause_Handler,
 | 
			
		||||
		},
 | 
			
		||||
		{
 | 
			
		||||
			MethodName: "Resume",
 | 
			
		||||
			Handler:    _Tasks_Resume_Handler,
 | 
			
		||||
		},
 | 
			
		||||
		{
 | 
			
		||||
			MethodName: "ListPids",
 | 
			
		||||
			Handler:    _Tasks_ListPids_Handler,
 | 
			
		||||
		},
 | 
			
		||||
		{
 | 
			
		||||
			MethodName: "Checkpoint",
 | 
			
		||||
			Handler:    _Tasks_Checkpoint_Handler,
 | 
			
		||||
		},
 | 
			
		||||
		{
 | 
			
		||||
			MethodName: "Update",
 | 
			
		||||
			Handler:    _Tasks_Update_Handler,
 | 
			
		||||
		},
 | 
			
		||||
		{
 | 
			
		||||
			MethodName: "Metrics",
 | 
			
		||||
			Handler:    _Tasks_Metrics_Handler,
 | 
			
		||||
		},
 | 
			
		||||
		{
 | 
			
		||||
			MethodName: "Wait",
 | 
			
		||||
			Handler:    _Tasks_Wait_Handler,
 | 
			
		||||
		},
 | 
			
		||||
	},
 | 
			
		||||
	Streams:  []grpc.StreamDesc{},
 | 
			
		||||
	Metadata: "github.com/containerd/containerd/api/services/tasks/v1/tasks.proto",
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										18
									
								
								vendor/github.com/containerd/containerd/api/services/version/v1/doc.go
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										18
									
								
								vendor/github.com/containerd/containerd/api/services/version/v1/doc.go
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,18 @@
 | 
			
		||||
/*
 | 
			
		||||
   Copyright The containerd Authors.
 | 
			
		||||
 | 
			
		||||
   Licensed under the Apache License, Version 2.0 (the "License");
 | 
			
		||||
   you may not use this file except in compliance with the License.
 | 
			
		||||
   You may obtain a copy of the License at
 | 
			
		||||
 | 
			
		||||
       http://www.apache.org/licenses/LICENSE-2.0
 | 
			
		||||
 | 
			
		||||
   Unless required by applicable law or agreed to in writing, software
 | 
			
		||||
   distributed under the License is distributed on an "AS IS" BASIS,
 | 
			
		||||
   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 | 
			
		||||
   See the License for the specific language governing permissions and
 | 
			
		||||
   limitations under the License.
 | 
			
		||||
*/
 | 
			
		||||
 | 
			
		||||
// Package version defines the version service.
 | 
			
		||||
package version
 | 
			
		||||
							
								
								
									
										187
									
								
								vendor/github.com/containerd/containerd/api/services/version/v1/version.pb.go
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										187
									
								
								vendor/github.com/containerd/containerd/api/services/version/v1/version.pb.go
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,187 @@
 | 
			
		||||
//
 | 
			
		||||
//Copyright The containerd Authors.
 | 
			
		||||
//
 | 
			
		||||
//Licensed under the Apache License, Version 2.0 (the "License");
 | 
			
		||||
//you may not use this file except in compliance with the License.
 | 
			
		||||
//You may obtain a copy of the License at
 | 
			
		||||
//
 | 
			
		||||
//http://www.apache.org/licenses/LICENSE-2.0
 | 
			
		||||
//
 | 
			
		||||
//Unless required by applicable law or agreed to in writing, software
 | 
			
		||||
//distributed under the License is distributed on an "AS IS" BASIS,
 | 
			
		||||
//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 | 
			
		||||
//See the License for the specific language governing permissions and
 | 
			
		||||
//limitations under the License.
 | 
			
		||||
 | 
			
		||||
// Code generated by protoc-gen-go. DO NOT EDIT.
 | 
			
		||||
// versions:
 | 
			
		||||
// 	protoc-gen-go v1.28.1
 | 
			
		||||
// 	protoc        v3.20.1
 | 
			
		||||
// source: github.com/containerd/containerd/api/services/version/v1/version.proto
 | 
			
		||||
 | 
			
		||||
package version
 | 
			
		||||
 | 
			
		||||
import (
 | 
			
		||||
	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
 | 
			
		||||
	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 | 
			
		||||
	emptypb "google.golang.org/protobuf/types/known/emptypb"
 | 
			
		||||
	reflect "reflect"
 | 
			
		||||
	sync "sync"
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
const (
 | 
			
		||||
	// Verify that this generated code is sufficiently up-to-date.
 | 
			
		||||
	_ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
 | 
			
		||||
	// Verify that runtime/protoimpl is sufficiently up-to-date.
 | 
			
		||||
	_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
type VersionResponse struct {
 | 
			
		||||
	state         protoimpl.MessageState
 | 
			
		||||
	sizeCache     protoimpl.SizeCache
 | 
			
		||||
	unknownFields protoimpl.UnknownFields
 | 
			
		||||
 | 
			
		||||
	Version  string `protobuf:"bytes,1,opt,name=version,proto3" json:"version,omitempty"`
 | 
			
		||||
	Revision string `protobuf:"bytes,2,opt,name=revision,proto3" json:"revision,omitempty"`
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (x *VersionResponse) Reset() {
 | 
			
		||||
	*x = VersionResponse{}
 | 
			
		||||
	if protoimpl.UnsafeEnabled {
 | 
			
		||||
		mi := &file_github_com_containerd_containerd_api_services_version_v1_version_proto_msgTypes[0]
 | 
			
		||||
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
 | 
			
		||||
		ms.StoreMessageInfo(mi)
 | 
			
		||||
	}
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (x *VersionResponse) String() string {
 | 
			
		||||
	return protoimpl.X.MessageStringOf(x)
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (*VersionResponse) ProtoMessage() {}
 | 
			
		||||
 | 
			
		||||
func (x *VersionResponse) ProtoReflect() protoreflect.Message {
 | 
			
		||||
	mi := &file_github_com_containerd_containerd_api_services_version_v1_version_proto_msgTypes[0]
 | 
			
		||||
	if protoimpl.UnsafeEnabled && x != nil {
 | 
			
		||||
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
 | 
			
		||||
		if ms.LoadMessageInfo() == nil {
 | 
			
		||||
			ms.StoreMessageInfo(mi)
 | 
			
		||||
		}
 | 
			
		||||
		return ms
 | 
			
		||||
	}
 | 
			
		||||
	return mi.MessageOf(x)
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// Deprecated: Use VersionResponse.ProtoReflect.Descriptor instead.
 | 
			
		||||
func (*VersionResponse) Descriptor() ([]byte, []int) {
 | 
			
		||||
	return file_github_com_containerd_containerd_api_services_version_v1_version_proto_rawDescGZIP(), []int{0}
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (x *VersionResponse) GetVersion() string {
 | 
			
		||||
	if x != nil {
 | 
			
		||||
		return x.Version
 | 
			
		||||
	}
 | 
			
		||||
	return ""
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (x *VersionResponse) GetRevision() string {
 | 
			
		||||
	if x != nil {
 | 
			
		||||
		return x.Revision
 | 
			
		||||
	}
 | 
			
		||||
	return ""
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
var File_github_com_containerd_containerd_api_services_version_v1_version_proto protoreflect.FileDescriptor
 | 
			
		||||
 | 
			
		||||
var file_github_com_containerd_containerd_api_services_version_v1_version_proto_rawDesc = []byte{
 | 
			
		||||
	0x0a, 0x46, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x63, 0x6f, 0x6e,
 | 
			
		||||
	0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x64, 0x2f, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65,
 | 
			
		||||
	0x72, 0x64, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x73, 0x2f,
 | 
			
		||||
	0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x31, 0x2f, 0x76, 0x65, 0x72, 0x73, 0x69,
 | 
			
		||||
	0x6f, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x1e, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69,
 | 
			
		||||
	0x6e, 0x65, 0x72, 0x64, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x73, 0x2e, 0x76, 0x65,
 | 
			
		||||
	0x72, 0x73, 0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x1a, 0x1b, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
 | 
			
		||||
	0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x65, 0x6d, 0x70, 0x74, 0x79, 0x2e,
 | 
			
		||||
	0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0x47, 0x0a, 0x0f, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e,
 | 
			
		||||
	0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x76, 0x65, 0x72, 0x73,
 | 
			
		||||
	0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69,
 | 
			
		||||
	0x6f, 0x6e, 0x12, 0x1a, 0x0a, 0x08, 0x72, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x02,
 | 
			
		||||
	0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x72, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x32, 0x5d,
 | 
			
		||||
	0x0a, 0x07, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x52, 0x0a, 0x07, 0x56, 0x65, 0x72,
 | 
			
		||||
	0x73, 0x69, 0x6f, 0x6e, 0x12, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72,
 | 
			
		||||
	0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x1a, 0x2f, 0x2e, 0x63,
 | 
			
		||||
	0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x64, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63,
 | 
			
		||||
	0x65, 0x73, 0x2e, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x56, 0x65,
 | 
			
		||||
	0x72, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x42, 0x42, 0x5a,
 | 
			
		||||
	0x40, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x63, 0x6f, 0x6e, 0x74,
 | 
			
		||||
	0x61, 0x69, 0x6e, 0x65, 0x72, 0x64, 0x2f, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72,
 | 
			
		||||
	0x64, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x73, 0x2f, 0x76,
 | 
			
		||||
	0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x31, 0x3b, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f,
 | 
			
		||||
	0x6e, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
var (
 | 
			
		||||
	file_github_com_containerd_containerd_api_services_version_v1_version_proto_rawDescOnce sync.Once
 | 
			
		||||
	file_github_com_containerd_containerd_api_services_version_v1_version_proto_rawDescData = file_github_com_containerd_containerd_api_services_version_v1_version_proto_rawDesc
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
func file_github_com_containerd_containerd_api_services_version_v1_version_proto_rawDescGZIP() []byte {
 | 
			
		||||
	file_github_com_containerd_containerd_api_services_version_v1_version_proto_rawDescOnce.Do(func() {
 | 
			
		||||
		file_github_com_containerd_containerd_api_services_version_v1_version_proto_rawDescData = protoimpl.X.CompressGZIP(file_github_com_containerd_containerd_api_services_version_v1_version_proto_rawDescData)
 | 
			
		||||
	})
 | 
			
		||||
	return file_github_com_containerd_containerd_api_services_version_v1_version_proto_rawDescData
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
var file_github_com_containerd_containerd_api_services_version_v1_version_proto_msgTypes = make([]protoimpl.MessageInfo, 1)
 | 
			
		||||
var file_github_com_containerd_containerd_api_services_version_v1_version_proto_goTypes = []interface{}{
 | 
			
		||||
	(*VersionResponse)(nil), // 0: containerd.services.version.v1.VersionResponse
 | 
			
		||||
	(*emptypb.Empty)(nil),   // 1: google.protobuf.Empty
 | 
			
		||||
}
 | 
			
		||||
var file_github_com_containerd_containerd_api_services_version_v1_version_proto_depIdxs = []int32{
 | 
			
		||||
	1, // 0: containerd.services.version.v1.Version.Version:input_type -> google.protobuf.Empty
 | 
			
		||||
	0, // 1: containerd.services.version.v1.Version.Version:output_type -> containerd.services.version.v1.VersionResponse
 | 
			
		||||
	1, // [1:2] is the sub-list for method output_type
 | 
			
		||||
	0, // [0:1] is the sub-list for method input_type
 | 
			
		||||
	0, // [0:0] is the sub-list for extension type_name
 | 
			
		||||
	0, // [0:0] is the sub-list for extension extendee
 | 
			
		||||
	0, // [0:0] is the sub-list for field type_name
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func init() { file_github_com_containerd_containerd_api_services_version_v1_version_proto_init() }
 | 
			
		||||
func file_github_com_containerd_containerd_api_services_version_v1_version_proto_init() {
 | 
			
		||||
	if File_github_com_containerd_containerd_api_services_version_v1_version_proto != nil {
 | 
			
		||||
		return
 | 
			
		||||
	}
 | 
			
		||||
	if !protoimpl.UnsafeEnabled {
 | 
			
		||||
		file_github_com_containerd_containerd_api_services_version_v1_version_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
 | 
			
		||||
			switch v := v.(*VersionResponse); i {
 | 
			
		||||
			case 0:
 | 
			
		||||
				return &v.state
 | 
			
		||||
			case 1:
 | 
			
		||||
				return &v.sizeCache
 | 
			
		||||
			case 2:
 | 
			
		||||
				return &v.unknownFields
 | 
			
		||||
			default:
 | 
			
		||||
				return nil
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
	type x struct{}
 | 
			
		||||
	out := protoimpl.TypeBuilder{
 | 
			
		||||
		File: protoimpl.DescBuilder{
 | 
			
		||||
			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
 | 
			
		||||
			RawDescriptor: file_github_com_containerd_containerd_api_services_version_v1_version_proto_rawDesc,
 | 
			
		||||
			NumEnums:      0,
 | 
			
		||||
			NumMessages:   1,
 | 
			
		||||
			NumExtensions: 0,
 | 
			
		||||
			NumServices:   1,
 | 
			
		||||
		},
 | 
			
		||||
		GoTypes:           file_github_com_containerd_containerd_api_services_version_v1_version_proto_goTypes,
 | 
			
		||||
		DependencyIndexes: file_github_com_containerd_containerd_api_services_version_v1_version_proto_depIdxs,
 | 
			
		||||
		MessageInfos:      file_github_com_containerd_containerd_api_services_version_v1_version_proto_msgTypes,
 | 
			
		||||
	}.Build()
 | 
			
		||||
	File_github_com_containerd_containerd_api_services_version_v1_version_proto = out.File
 | 
			
		||||
	file_github_com_containerd_containerd_api_services_version_v1_version_proto_rawDesc = nil
 | 
			
		||||
	file_github_com_containerd_containerd_api_services_version_v1_version_proto_goTypes = nil
 | 
			
		||||
	file_github_com_containerd_containerd_api_services_version_v1_version_proto_depIdxs = nil
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										33
									
								
								vendor/github.com/containerd/containerd/api/services/version/v1/version.proto
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										33
									
								
								vendor/github.com/containerd/containerd/api/services/version/v1/version.proto
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,33 @@
 | 
			
		||||
/*
 | 
			
		||||
	Copyright The containerd Authors.
 | 
			
		||||
 | 
			
		||||
	Licensed under the Apache License, Version 2.0 (the "License");
 | 
			
		||||
	you may not use this file except in compliance with the License.
 | 
			
		||||
	You may obtain a copy of the License at
 | 
			
		||||
 | 
			
		||||
		http://www.apache.org/licenses/LICENSE-2.0
 | 
			
		||||
 | 
			
		||||
	Unless required by applicable law or agreed to in writing, software
 | 
			
		||||
	distributed under the License is distributed on an "AS IS" BASIS,
 | 
			
		||||
	WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 | 
			
		||||
	See the License for the specific language governing permissions and
 | 
			
		||||
	limitations under the License.
 | 
			
		||||
*/
 | 
			
		||||
 | 
			
		||||
syntax = "proto3";
 | 
			
		||||
 | 
			
		||||
package containerd.services.version.v1;
 | 
			
		||||
 | 
			
		||||
import "google/protobuf/empty.proto";
 | 
			
		||||
 | 
			
		||||
// TODO(stevvooe): Should version service actually be versioned?
 | 
			
		||||
option go_package = "github.com/containerd/containerd/api/services/version/v1;version";
 | 
			
		||||
 | 
			
		||||
service Version {
 | 
			
		||||
	rpc Version(google.protobuf.Empty) returns (VersionResponse);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
message VersionResponse {
 | 
			
		||||
	string version = 1;
 | 
			
		||||
	string revision = 2;
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										106
									
								
								vendor/github.com/containerd/containerd/api/services/version/v1/version_grpc.pb.go
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										106
									
								
								vendor/github.com/containerd/containerd/api/services/version/v1/version_grpc.pb.go
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,106 @@
 | 
			
		||||
// Code generated by protoc-gen-go-grpc. DO NOT EDIT.
 | 
			
		||||
// versions:
 | 
			
		||||
// - protoc-gen-go-grpc v1.2.0
 | 
			
		||||
// - protoc             v3.20.1
 | 
			
		||||
// source: github.com/containerd/containerd/api/services/version/v1/version.proto
 | 
			
		||||
 | 
			
		||||
package version
 | 
			
		||||
 | 
			
		||||
import (
 | 
			
		||||
	context "context"
 | 
			
		||||
	grpc "google.golang.org/grpc"
 | 
			
		||||
	codes "google.golang.org/grpc/codes"
 | 
			
		||||
	status "google.golang.org/grpc/status"
 | 
			
		||||
	emptypb "google.golang.org/protobuf/types/known/emptypb"
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
// This is a compile-time assertion to ensure that this generated file
 | 
			
		||||
// is compatible with the grpc package it is being compiled against.
 | 
			
		||||
// Requires gRPC-Go v1.32.0 or later.
 | 
			
		||||
const _ = grpc.SupportPackageIsVersion7
 | 
			
		||||
 | 
			
		||||
// VersionClient is the client API for Version service.
 | 
			
		||||
//
 | 
			
		||||
// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://pkg.go.dev/google.golang.org/grpc/?tab=doc#ClientConn.NewStream.
 | 
			
		||||
type VersionClient interface {
 | 
			
		||||
	Version(ctx context.Context, in *emptypb.Empty, opts ...grpc.CallOption) (*VersionResponse, error)
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
type versionClient struct {
 | 
			
		||||
	cc grpc.ClientConnInterface
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func NewVersionClient(cc grpc.ClientConnInterface) VersionClient {
 | 
			
		||||
	return &versionClient{cc}
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (c *versionClient) Version(ctx context.Context, in *emptypb.Empty, opts ...grpc.CallOption) (*VersionResponse, error) {
 | 
			
		||||
	out := new(VersionResponse)
 | 
			
		||||
	err := c.cc.Invoke(ctx, "/containerd.services.version.v1.Version/Version", in, out, opts...)
 | 
			
		||||
	if err != nil {
 | 
			
		||||
		return nil, err
 | 
			
		||||
	}
 | 
			
		||||
	return out, nil
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// VersionServer is the server API for Version service.
 | 
			
		||||
// All implementations must embed UnimplementedVersionServer
 | 
			
		||||
// for forward compatibility
 | 
			
		||||
type VersionServer interface {
 | 
			
		||||
	Version(context.Context, *emptypb.Empty) (*VersionResponse, error)
 | 
			
		||||
	mustEmbedUnimplementedVersionServer()
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// UnimplementedVersionServer must be embedded to have forward compatible implementations.
 | 
			
		||||
type UnimplementedVersionServer struct {
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (UnimplementedVersionServer) Version(context.Context, *emptypb.Empty) (*VersionResponse, error) {
 | 
			
		||||
	return nil, status.Errorf(codes.Unimplemented, "method Version not implemented")
 | 
			
		||||
}
 | 
			
		||||
func (UnimplementedVersionServer) mustEmbedUnimplementedVersionServer() {}
 | 
			
		||||
 | 
			
		||||
// UnsafeVersionServer may be embedded to opt out of forward compatibility for this service.
 | 
			
		||||
// Use of this interface is not recommended, as added methods to VersionServer will
 | 
			
		||||
// result in compilation errors.
 | 
			
		||||
type UnsafeVersionServer interface {
 | 
			
		||||
	mustEmbedUnimplementedVersionServer()
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func RegisterVersionServer(s grpc.ServiceRegistrar, srv VersionServer) {
 | 
			
		||||
	s.RegisterService(&Version_ServiceDesc, srv)
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func _Version_Version_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
 | 
			
		||||
	in := new(emptypb.Empty)
 | 
			
		||||
	if err := dec(in); err != nil {
 | 
			
		||||
		return nil, err
 | 
			
		||||
	}
 | 
			
		||||
	if interceptor == nil {
 | 
			
		||||
		return srv.(VersionServer).Version(ctx, in)
 | 
			
		||||
	}
 | 
			
		||||
	info := &grpc.UnaryServerInfo{
 | 
			
		||||
		Server:     srv,
 | 
			
		||||
		FullMethod: "/containerd.services.version.v1.Version/Version",
 | 
			
		||||
	}
 | 
			
		||||
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
 | 
			
		||||
		return srv.(VersionServer).Version(ctx, req.(*emptypb.Empty))
 | 
			
		||||
	}
 | 
			
		||||
	return interceptor(ctx, in, info, handler)
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// Version_ServiceDesc is the grpc.ServiceDesc for Version service.
 | 
			
		||||
// It's only intended for direct use with grpc.RegisterService,
 | 
			
		||||
// and not to be introspected or modified (even as a copy)
 | 
			
		||||
var Version_ServiceDesc = grpc.ServiceDesc{
 | 
			
		||||
	ServiceName: "containerd.services.version.v1.Version",
 | 
			
		||||
	HandlerType: (*VersionServer)(nil),
 | 
			
		||||
	Methods: []grpc.MethodDesc{
 | 
			
		||||
		{
 | 
			
		||||
			MethodName: "Version",
 | 
			
		||||
			Handler:    _Version_Version_Handler,
 | 
			
		||||
		},
 | 
			
		||||
	},
 | 
			
		||||
	Streams:  []grpc.StreamDesc{},
 | 
			
		||||
	Metadata: "github.com/containerd/containerd/api/services/version/v1/version.proto",
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										206
									
								
								vendor/github.com/containerd/containerd/api/types/descriptor.pb.go
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										206
									
								
								vendor/github.com/containerd/containerd/api/types/descriptor.pb.go
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,206 @@
 | 
			
		||||
//
 | 
			
		||||
//Copyright The containerd Authors.
 | 
			
		||||
//
 | 
			
		||||
//Licensed under the Apache License, Version 2.0 (the "License");
 | 
			
		||||
//you may not use this file except in compliance with the License.
 | 
			
		||||
//You may obtain a copy of the License at
 | 
			
		||||
//
 | 
			
		||||
//http://www.apache.org/licenses/LICENSE-2.0
 | 
			
		||||
//
 | 
			
		||||
//Unless required by applicable law or agreed to in writing, software
 | 
			
		||||
//distributed under the License is distributed on an "AS IS" BASIS,
 | 
			
		||||
//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 | 
			
		||||
//See the License for the specific language governing permissions and
 | 
			
		||||
//limitations under the License.
 | 
			
		||||
 | 
			
		||||
// Code generated by protoc-gen-go. DO NOT EDIT.
 | 
			
		||||
// versions:
 | 
			
		||||
// 	protoc-gen-go v1.28.1
 | 
			
		||||
// 	protoc        v3.20.1
 | 
			
		||||
// source: github.com/containerd/containerd/api/types/descriptor.proto
 | 
			
		||||
 | 
			
		||||
package types
 | 
			
		||||
 | 
			
		||||
import (
 | 
			
		||||
	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
 | 
			
		||||
	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 | 
			
		||||
	reflect "reflect"
 | 
			
		||||
	sync "sync"
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
const (
 | 
			
		||||
	// Verify that this generated code is sufficiently up-to-date.
 | 
			
		||||
	_ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
 | 
			
		||||
	// Verify that runtime/protoimpl is sufficiently up-to-date.
 | 
			
		||||
	_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
// Descriptor describes a blob in a content store.
 | 
			
		||||
//
 | 
			
		||||
// This descriptor can be used to reference content from an
 | 
			
		||||
// oci descriptor found in a manifest.
 | 
			
		||||
// See https://godoc.org/github.com/opencontainers/image-spec/specs-go/v1#Descriptor
 | 
			
		||||
type Descriptor struct {
 | 
			
		||||
	state         protoimpl.MessageState
 | 
			
		||||
	sizeCache     protoimpl.SizeCache
 | 
			
		||||
	unknownFields protoimpl.UnknownFields
 | 
			
		||||
 | 
			
		||||
	MediaType   string            `protobuf:"bytes,1,opt,name=media_type,json=mediaType,proto3" json:"media_type,omitempty"`
 | 
			
		||||
	Digest      string            `protobuf:"bytes,2,opt,name=digest,proto3" json:"digest,omitempty"`
 | 
			
		||||
	Size        int64             `protobuf:"varint,3,opt,name=size,proto3" json:"size,omitempty"`
 | 
			
		||||
	Annotations map[string]string `protobuf:"bytes,5,rep,name=annotations,proto3" json:"annotations,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (x *Descriptor) Reset() {
 | 
			
		||||
	*x = Descriptor{}
 | 
			
		||||
	if protoimpl.UnsafeEnabled {
 | 
			
		||||
		mi := &file_github_com_containerd_containerd_api_types_descriptor_proto_msgTypes[0]
 | 
			
		||||
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
 | 
			
		||||
		ms.StoreMessageInfo(mi)
 | 
			
		||||
	}
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (x *Descriptor) String() string {
 | 
			
		||||
	return protoimpl.X.MessageStringOf(x)
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (*Descriptor) ProtoMessage() {}
 | 
			
		||||
 | 
			
		||||
func (x *Descriptor) ProtoReflect() protoreflect.Message {
 | 
			
		||||
	mi := &file_github_com_containerd_containerd_api_types_descriptor_proto_msgTypes[0]
 | 
			
		||||
	if protoimpl.UnsafeEnabled && x != nil {
 | 
			
		||||
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
 | 
			
		||||
		if ms.LoadMessageInfo() == nil {
 | 
			
		||||
			ms.StoreMessageInfo(mi)
 | 
			
		||||
		}
 | 
			
		||||
		return ms
 | 
			
		||||
	}
 | 
			
		||||
	return mi.MessageOf(x)
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// Deprecated: Use Descriptor.ProtoReflect.Descriptor instead.
 | 
			
		||||
func (*Descriptor) Descriptor() ([]byte, []int) {
 | 
			
		||||
	return file_github_com_containerd_containerd_api_types_descriptor_proto_rawDescGZIP(), []int{0}
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (x *Descriptor) GetMediaType() string {
 | 
			
		||||
	if x != nil {
 | 
			
		||||
		return x.MediaType
 | 
			
		||||
	}
 | 
			
		||||
	return ""
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (x *Descriptor) GetDigest() string {
 | 
			
		||||
	if x != nil {
 | 
			
		||||
		return x.Digest
 | 
			
		||||
	}
 | 
			
		||||
	return ""
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (x *Descriptor) GetSize() int64 {
 | 
			
		||||
	if x != nil {
 | 
			
		||||
		return x.Size
 | 
			
		||||
	}
 | 
			
		||||
	return 0
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (x *Descriptor) GetAnnotations() map[string]string {
 | 
			
		||||
	if x != nil {
 | 
			
		||||
		return x.Annotations
 | 
			
		||||
	}
 | 
			
		||||
	return nil
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
var File_github_com_containerd_containerd_api_types_descriptor_proto protoreflect.FileDescriptor
 | 
			
		||||
 | 
			
		||||
var file_github_com_containerd_containerd_api_types_descriptor_proto_rawDesc = []byte{
 | 
			
		||||
	0x0a, 0x3b, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x63, 0x6f, 0x6e,
 | 
			
		||||
	0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x64, 0x2f, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65,
 | 
			
		||||
	0x72, 0x64, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2f, 0x64, 0x65, 0x73,
 | 
			
		||||
	0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x10, 0x63,
 | 
			
		||||
	0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x64, 0x2e, 0x74, 0x79, 0x70, 0x65, 0x73, 0x22,
 | 
			
		||||
	0xe8, 0x01, 0x0a, 0x0a, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x12, 0x1d,
 | 
			
		||||
	0x0a, 0x0a, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01,
 | 
			
		||||
	0x28, 0x09, 0x52, 0x09, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x54, 0x79, 0x70, 0x65, 0x12, 0x16, 0x0a,
 | 
			
		||||
	0x06, 0x64, 0x69, 0x67, 0x65, 0x73, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x64,
 | 
			
		||||
	0x69, 0x67, 0x65, 0x73, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x03, 0x20,
 | 
			
		||||
	0x01, 0x28, 0x03, 0x52, 0x04, 0x73, 0x69, 0x7a, 0x65, 0x12, 0x4f, 0x0a, 0x0b, 0x61, 0x6e, 0x6e,
 | 
			
		||||
	0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2d,
 | 
			
		||||
	0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x64, 0x2e, 0x74, 0x79, 0x70, 0x65,
 | 
			
		||||
	0x73, 0x2e, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x2e, 0x41, 0x6e, 0x6e,
 | 
			
		||||
	0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x0b, 0x61,
 | 
			
		||||
	0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x1a, 0x3e, 0x0a, 0x10, 0x41, 0x6e,
 | 
			
		||||
	0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10,
 | 
			
		||||
	0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79,
 | 
			
		||||
	0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52,
 | 
			
		||||
	0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x42, 0x32, 0x5a, 0x30, 0x67, 0x69,
 | 
			
		||||
	0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e,
 | 
			
		||||
	0x65, 0x72, 0x64, 0x2f, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x64, 0x2f, 0x61,
 | 
			
		||||
	0x70, 0x69, 0x2f, 0x74, 0x79, 0x70, 0x65, 0x73, 0x3b, 0x74, 0x79, 0x70, 0x65, 0x73, 0x62, 0x06,
 | 
			
		||||
	0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
var (
 | 
			
		||||
	file_github_com_containerd_containerd_api_types_descriptor_proto_rawDescOnce sync.Once
 | 
			
		||||
	file_github_com_containerd_containerd_api_types_descriptor_proto_rawDescData = file_github_com_containerd_containerd_api_types_descriptor_proto_rawDesc
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
func file_github_com_containerd_containerd_api_types_descriptor_proto_rawDescGZIP() []byte {
 | 
			
		||||
	file_github_com_containerd_containerd_api_types_descriptor_proto_rawDescOnce.Do(func() {
 | 
			
		||||
		file_github_com_containerd_containerd_api_types_descriptor_proto_rawDescData = protoimpl.X.CompressGZIP(file_github_com_containerd_containerd_api_types_descriptor_proto_rawDescData)
 | 
			
		||||
	})
 | 
			
		||||
	return file_github_com_containerd_containerd_api_types_descriptor_proto_rawDescData
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
var file_github_com_containerd_containerd_api_types_descriptor_proto_msgTypes = make([]protoimpl.MessageInfo, 2)
 | 
			
		||||
var file_github_com_containerd_containerd_api_types_descriptor_proto_goTypes = []interface{}{
 | 
			
		||||
	(*Descriptor)(nil), // 0: containerd.types.Descriptor
 | 
			
		||||
	nil,                // 1: containerd.types.Descriptor.AnnotationsEntry
 | 
			
		||||
}
 | 
			
		||||
var file_github_com_containerd_containerd_api_types_descriptor_proto_depIdxs = []int32{
 | 
			
		||||
	1, // 0: containerd.types.Descriptor.annotations:type_name -> containerd.types.Descriptor.AnnotationsEntry
 | 
			
		||||
	1, // [1:1] is the sub-list for method output_type
 | 
			
		||||
	1, // [1:1] is the sub-list for method input_type
 | 
			
		||||
	1, // [1:1] is the sub-list for extension type_name
 | 
			
		||||
	1, // [1:1] is the sub-list for extension extendee
 | 
			
		||||
	0, // [0:1] is the sub-list for field type_name
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func init() { file_github_com_containerd_containerd_api_types_descriptor_proto_init() }
 | 
			
		||||
func file_github_com_containerd_containerd_api_types_descriptor_proto_init() {
 | 
			
		||||
	if File_github_com_containerd_containerd_api_types_descriptor_proto != nil {
 | 
			
		||||
		return
 | 
			
		||||
	}
 | 
			
		||||
	if !protoimpl.UnsafeEnabled {
 | 
			
		||||
		file_github_com_containerd_containerd_api_types_descriptor_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
 | 
			
		||||
			switch v := v.(*Descriptor); i {
 | 
			
		||||
			case 0:
 | 
			
		||||
				return &v.state
 | 
			
		||||
			case 1:
 | 
			
		||||
				return &v.sizeCache
 | 
			
		||||
			case 2:
 | 
			
		||||
				return &v.unknownFields
 | 
			
		||||
			default:
 | 
			
		||||
				return nil
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
	type x struct{}
 | 
			
		||||
	out := protoimpl.TypeBuilder{
 | 
			
		||||
		File: protoimpl.DescBuilder{
 | 
			
		||||
			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
 | 
			
		||||
			RawDescriptor: file_github_com_containerd_containerd_api_types_descriptor_proto_rawDesc,
 | 
			
		||||
			NumEnums:      0,
 | 
			
		||||
			NumMessages:   2,
 | 
			
		||||
			NumExtensions: 0,
 | 
			
		||||
			NumServices:   0,
 | 
			
		||||
		},
 | 
			
		||||
		GoTypes:           file_github_com_containerd_containerd_api_types_descriptor_proto_goTypes,
 | 
			
		||||
		DependencyIndexes: file_github_com_containerd_containerd_api_types_descriptor_proto_depIdxs,
 | 
			
		||||
		MessageInfos:      file_github_com_containerd_containerd_api_types_descriptor_proto_msgTypes,
 | 
			
		||||
	}.Build()
 | 
			
		||||
	File_github_com_containerd_containerd_api_types_descriptor_proto = out.File
 | 
			
		||||
	file_github_com_containerd_containerd_api_types_descriptor_proto_rawDesc = nil
 | 
			
		||||
	file_github_com_containerd_containerd_api_types_descriptor_proto_goTypes = nil
 | 
			
		||||
	file_github_com_containerd_containerd_api_types_descriptor_proto_depIdxs = nil
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										33
									
								
								vendor/github.com/containerd/containerd/api/types/descriptor.proto
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										33
									
								
								vendor/github.com/containerd/containerd/api/types/descriptor.proto
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,33 @@
 | 
			
		||||
/*
 | 
			
		||||
	Copyright The containerd Authors.
 | 
			
		||||
 | 
			
		||||
	Licensed under the Apache License, Version 2.0 (the "License");
 | 
			
		||||
	you may not use this file except in compliance with the License.
 | 
			
		||||
	You may obtain a copy of the License at
 | 
			
		||||
 | 
			
		||||
		http://www.apache.org/licenses/LICENSE-2.0
 | 
			
		||||
 | 
			
		||||
	Unless required by applicable law or agreed to in writing, software
 | 
			
		||||
	distributed under the License is distributed on an "AS IS" BASIS,
 | 
			
		||||
	WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 | 
			
		||||
	See the License for the specific language governing permissions and
 | 
			
		||||
	limitations under the License.
 | 
			
		||||
*/
 | 
			
		||||
 | 
			
		||||
syntax = "proto3";
 | 
			
		||||
 | 
			
		||||
package containerd.types;
 | 
			
		||||
 | 
			
		||||
option go_package = "github.com/containerd/containerd/api/types;types";
 | 
			
		||||
 | 
			
		||||
// Descriptor describes a blob in a content store.
 | 
			
		||||
//
 | 
			
		||||
// This descriptor can be used to reference content from an
 | 
			
		||||
// oci descriptor found in a manifest.
 | 
			
		||||
// See https://godoc.org/github.com/opencontainers/image-spec/specs-go/v1#Descriptor
 | 
			
		||||
message Descriptor {
 | 
			
		||||
	string media_type = 1;
 | 
			
		||||
	string digest = 2;
 | 
			
		||||
	int64 size = 3;
 | 
			
		||||
	map<string, string> annotations = 5;
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										17
									
								
								vendor/github.com/containerd/containerd/api/types/doc.go
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										17
									
								
								vendor/github.com/containerd/containerd/api/types/doc.go
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,17 @@
 | 
			
		||||
/*
 | 
			
		||||
   Copyright The containerd Authors.
 | 
			
		||||
 | 
			
		||||
   Licensed under the Apache License, Version 2.0 (the "License");
 | 
			
		||||
   you may not use this file except in compliance with the License.
 | 
			
		||||
   You may obtain a copy of the License at
 | 
			
		||||
 | 
			
		||||
       http://www.apache.org/licenses/LICENSE-2.0
 | 
			
		||||
 | 
			
		||||
   Unless required by applicable law or agreed to in writing, software
 | 
			
		||||
   distributed under the License is distributed on an "AS IS" BASIS,
 | 
			
		||||
   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 | 
			
		||||
   See the License for the specific language governing permissions and
 | 
			
		||||
   limitations under the License.
 | 
			
		||||
*/
 | 
			
		||||
 | 
			
		||||
package types
 | 
			
		||||
							
								
								
									
										144
									
								
								vendor/github.com/containerd/containerd/api/types/fieldpath.pb.go
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										144
									
								
								vendor/github.com/containerd/containerd/api/types/fieldpath.pb.go
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,144 @@
 | 
			
		||||
// Protocol Buffers for Go with Gadgets
 | 
			
		||||
//
 | 
			
		||||
// Copyright (c) 2013, The GoGo Authors. All rights reserved.
 | 
			
		||||
// http://github.com/gogo/protobuf
 | 
			
		||||
//
 | 
			
		||||
// Redistribution and use in source and binary forms, with or without
 | 
			
		||||
// modification, are permitted provided that the following conditions are
 | 
			
		||||
// met:
 | 
			
		||||
//
 | 
			
		||||
//     * Redistributions of source code must retain the above copyright
 | 
			
		||||
// notice, this list of conditions and the following disclaimer.
 | 
			
		||||
//     * Redistributions in binary form must reproduce the above
 | 
			
		||||
// copyright notice, this list of conditions and the following disclaimer
 | 
			
		||||
// in the documentation and/or other materials provided with the
 | 
			
		||||
// distribution.
 | 
			
		||||
//
 | 
			
		||||
// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
 | 
			
		||||
// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
 | 
			
		||||
// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
 | 
			
		||||
// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
 | 
			
		||||
// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
 | 
			
		||||
// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
 | 
			
		||||
// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
 | 
			
		||||
// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
 | 
			
		||||
// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
 | 
			
		||||
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
 | 
			
		||||
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 | 
			
		||||
 | 
			
		||||
// Code generated by protoc-gen-go. DO NOT EDIT.
 | 
			
		||||
// versions:
 | 
			
		||||
// 	protoc-gen-go v1.28.1
 | 
			
		||||
// 	protoc        v3.20.1
 | 
			
		||||
// source: github.com/containerd/containerd/api/types/fieldpath.proto
 | 
			
		||||
 | 
			
		||||
package types
 | 
			
		||||
 | 
			
		||||
import (
 | 
			
		||||
	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
 | 
			
		||||
	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 | 
			
		||||
	descriptorpb "google.golang.org/protobuf/types/descriptorpb"
 | 
			
		||||
	reflect "reflect"
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
const (
 | 
			
		||||
	// Verify that this generated code is sufficiently up-to-date.
 | 
			
		||||
	_ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
 | 
			
		||||
	// Verify that runtime/protoimpl is sufficiently up-to-date.
 | 
			
		||||
	_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
var file_github_com_containerd_containerd_api_types_fieldpath_proto_extTypes = []protoimpl.ExtensionInfo{
 | 
			
		||||
	{
 | 
			
		||||
		ExtendedType:  (*descriptorpb.FileOptions)(nil),
 | 
			
		||||
		ExtensionType: (*bool)(nil),
 | 
			
		||||
		Field:         63300,
 | 
			
		||||
		Name:          "containerd.types.fieldpath_all",
 | 
			
		||||
		Tag:           "varint,63300,opt,name=fieldpath_all",
 | 
			
		||||
		Filename:      "github.com/containerd/containerd/api/types/fieldpath.proto",
 | 
			
		||||
	},
 | 
			
		||||
	{
 | 
			
		||||
		ExtendedType:  (*descriptorpb.MessageOptions)(nil),
 | 
			
		||||
		ExtensionType: (*bool)(nil),
 | 
			
		||||
		Field:         64400,
 | 
			
		||||
		Name:          "containerd.types.fieldpath",
 | 
			
		||||
		Tag:           "varint,64400,opt,name=fieldpath",
 | 
			
		||||
		Filename:      "github.com/containerd/containerd/api/types/fieldpath.proto",
 | 
			
		||||
	},
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// Extension fields to descriptorpb.FileOptions.
 | 
			
		||||
var (
 | 
			
		||||
	// optional bool fieldpath_all = 63300;
 | 
			
		||||
	E_FieldpathAll = &file_github_com_containerd_containerd_api_types_fieldpath_proto_extTypes[0]
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
// Extension fields to descriptorpb.MessageOptions.
 | 
			
		||||
var (
 | 
			
		||||
	// optional bool fieldpath = 64400;
 | 
			
		||||
	E_Fieldpath = &file_github_com_containerd_containerd_api_types_fieldpath_proto_extTypes[1]
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
var File_github_com_containerd_containerd_api_types_fieldpath_proto protoreflect.FileDescriptor
 | 
			
		||||
 | 
			
		||||
var file_github_com_containerd_containerd_api_types_fieldpath_proto_rawDesc = []byte{
 | 
			
		||||
	0x0a, 0x3a, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x63, 0x6f, 0x6e,
 | 
			
		||||
	0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x64, 0x2f, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65,
 | 
			
		||||
	0x72, 0x64, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2f, 0x66, 0x69, 0x65,
 | 
			
		||||
	0x6c, 0x64, 0x70, 0x61, 0x74, 0x68, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x10, 0x63, 0x6f,
 | 
			
		||||
	0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x64, 0x2e, 0x74, 0x79, 0x70, 0x65, 0x73, 0x1a, 0x20,
 | 
			
		||||
	0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f,
 | 
			
		||||
	0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
 | 
			
		||||
	0x3a, 0x46, 0x0a, 0x0d, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x70, 0x61, 0x74, 0x68, 0x5f, 0x61, 0x6c,
 | 
			
		||||
	0x6c, 0x12, 0x1c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
 | 
			
		||||
	0x62, 0x75, 0x66, 0x2e, 0x46, 0x69, 0x6c, 0x65, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18,
 | 
			
		||||
	0xc4, 0xee, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x70, 0x61,
 | 
			
		||||
	0x74, 0x68, 0x41, 0x6c, 0x6c, 0x88, 0x01, 0x01, 0x3a, 0x42, 0x0a, 0x09, 0x66, 0x69, 0x65, 0x6c,
 | 
			
		||||
	0x64, 0x70, 0x61, 0x74, 0x68, 0x12, 0x1f, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70,
 | 
			
		||||
	0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x4f,
 | 
			
		||||
	0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x90, 0xf7, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09,
 | 
			
		||||
	0x66, 0x69, 0x65, 0x6c, 0x64, 0x70, 0x61, 0x74, 0x68, 0x88, 0x01, 0x01, 0x42, 0x32, 0x5a, 0x30,
 | 
			
		||||
	0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x63, 0x6f, 0x6e, 0x74, 0x61,
 | 
			
		||||
	0x69, 0x6e, 0x65, 0x72, 0x64, 0x2f, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x64,
 | 
			
		||||
	0x2f, 0x61, 0x70, 0x69, 0x2f, 0x74, 0x79, 0x70, 0x65, 0x73, 0x3b, 0x74, 0x79, 0x70, 0x65, 0x73,
 | 
			
		||||
	0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
var file_github_com_containerd_containerd_api_types_fieldpath_proto_goTypes = []interface{}{
 | 
			
		||||
	(*descriptorpb.FileOptions)(nil),    // 0: google.protobuf.FileOptions
 | 
			
		||||
	(*descriptorpb.MessageOptions)(nil), // 1: google.protobuf.MessageOptions
 | 
			
		||||
}
 | 
			
		||||
var file_github_com_containerd_containerd_api_types_fieldpath_proto_depIdxs = []int32{
 | 
			
		||||
	0, // 0: containerd.types.fieldpath_all:extendee -> google.protobuf.FileOptions
 | 
			
		||||
	1, // 1: containerd.types.fieldpath:extendee -> google.protobuf.MessageOptions
 | 
			
		||||
	2, // [2:2] is the sub-list for method output_type
 | 
			
		||||
	2, // [2:2] is the sub-list for method input_type
 | 
			
		||||
	2, // [2:2] is the sub-list for extension type_name
 | 
			
		||||
	0, // [0:2] is the sub-list for extension extendee
 | 
			
		||||
	0, // [0:0] is the sub-list for field type_name
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func init() { file_github_com_containerd_containerd_api_types_fieldpath_proto_init() }
 | 
			
		||||
func file_github_com_containerd_containerd_api_types_fieldpath_proto_init() {
 | 
			
		||||
	if File_github_com_containerd_containerd_api_types_fieldpath_proto != nil {
 | 
			
		||||
		return
 | 
			
		||||
	}
 | 
			
		||||
	type x struct{}
 | 
			
		||||
	out := protoimpl.TypeBuilder{
 | 
			
		||||
		File: protoimpl.DescBuilder{
 | 
			
		||||
			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
 | 
			
		||||
			RawDescriptor: file_github_com_containerd_containerd_api_types_fieldpath_proto_rawDesc,
 | 
			
		||||
			NumEnums:      0,
 | 
			
		||||
			NumMessages:   0,
 | 
			
		||||
			NumExtensions: 2,
 | 
			
		||||
			NumServices:   0,
 | 
			
		||||
		},
 | 
			
		||||
		GoTypes:           file_github_com_containerd_containerd_api_types_fieldpath_proto_goTypes,
 | 
			
		||||
		DependencyIndexes: file_github_com_containerd_containerd_api_types_fieldpath_proto_depIdxs,
 | 
			
		||||
		ExtensionInfos:    file_github_com_containerd_containerd_api_types_fieldpath_proto_extTypes,
 | 
			
		||||
	}.Build()
 | 
			
		||||
	File_github_com_containerd_containerd_api_types_fieldpath_proto = out.File
 | 
			
		||||
	file_github_com_containerd_containerd_api_types_fieldpath_proto_rawDesc = nil
 | 
			
		||||
	file_github_com_containerd_containerd_api_types_fieldpath_proto_goTypes = nil
 | 
			
		||||
	file_github_com_containerd_containerd_api_types_fieldpath_proto_depIdxs = nil
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										42
									
								
								vendor/github.com/containerd/containerd/api/types/fieldpath.proto
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										42
									
								
								vendor/github.com/containerd/containerd/api/types/fieldpath.proto
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,42 @@
 | 
			
		||||
// Protocol Buffers for Go with Gadgets
 | 
			
		||||
//
 | 
			
		||||
// Copyright (c) 2013, The GoGo Authors. All rights reserved.
 | 
			
		||||
// http://github.com/gogo/protobuf
 | 
			
		||||
//
 | 
			
		||||
// Redistribution and use in source and binary forms, with or without
 | 
			
		||||
// modification, are permitted provided that the following conditions are
 | 
			
		||||
// met:
 | 
			
		||||
//
 | 
			
		||||
//     * Redistributions of source code must retain the above copyright
 | 
			
		||||
// notice, this list of conditions and the following disclaimer.
 | 
			
		||||
//     * Redistributions in binary form must reproduce the above
 | 
			
		||||
// copyright notice, this list of conditions and the following disclaimer
 | 
			
		||||
// in the documentation and/or other materials provided with the
 | 
			
		||||
// distribution.
 | 
			
		||||
//
 | 
			
		||||
// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
 | 
			
		||||
// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
 | 
			
		||||
// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
 | 
			
		||||
// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
 | 
			
		||||
// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
 | 
			
		||||
// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
 | 
			
		||||
// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
 | 
			
		||||
// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
 | 
			
		||||
// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
 | 
			
		||||
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
 | 
			
		||||
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 | 
			
		||||
 | 
			
		||||
syntax = "proto3";
 | 
			
		||||
package containerd.types;
 | 
			
		||||
 | 
			
		||||
import "google/protobuf/descriptor.proto";
 | 
			
		||||
 | 
			
		||||
option go_package = "github.com/containerd/containerd/api/types;types";
 | 
			
		||||
 | 
			
		||||
extend google.protobuf.FileOptions {
 | 
			
		||||
	optional bool fieldpath_all = 63300;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
extend google.protobuf.MessageOptions {
 | 
			
		||||
	optional bool fieldpath = 64400;
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										194
									
								
								vendor/github.com/containerd/containerd/api/types/metrics.pb.go
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										194
									
								
								vendor/github.com/containerd/containerd/api/types/metrics.pb.go
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,194 @@
 | 
			
		||||
//
 | 
			
		||||
//Copyright The containerd Authors.
 | 
			
		||||
//
 | 
			
		||||
//Licensed under the Apache License, Version 2.0 (the "License");
 | 
			
		||||
//you may not use this file except in compliance with the License.
 | 
			
		||||
//You may obtain a copy of the License at
 | 
			
		||||
//
 | 
			
		||||
//http://www.apache.org/licenses/LICENSE-2.0
 | 
			
		||||
//
 | 
			
		||||
//Unless required by applicable law or agreed to in writing, software
 | 
			
		||||
//distributed under the License is distributed on an "AS IS" BASIS,
 | 
			
		||||
//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 | 
			
		||||
//See the License for the specific language governing permissions and
 | 
			
		||||
//limitations under the License.
 | 
			
		||||
 | 
			
		||||
// Code generated by protoc-gen-go. DO NOT EDIT.
 | 
			
		||||
// versions:
 | 
			
		||||
// 	protoc-gen-go v1.28.1
 | 
			
		||||
// 	protoc        v3.20.1
 | 
			
		||||
// source: github.com/containerd/containerd/api/types/metrics.proto
 | 
			
		||||
 | 
			
		||||
package types
 | 
			
		||||
 | 
			
		||||
import (
 | 
			
		||||
	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
 | 
			
		||||
	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 | 
			
		||||
	anypb "google.golang.org/protobuf/types/known/anypb"
 | 
			
		||||
	timestamppb "google.golang.org/protobuf/types/known/timestamppb"
 | 
			
		||||
	reflect "reflect"
 | 
			
		||||
	sync "sync"
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
const (
 | 
			
		||||
	// Verify that this generated code is sufficiently up-to-date.
 | 
			
		||||
	_ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
 | 
			
		||||
	// Verify that runtime/protoimpl is sufficiently up-to-date.
 | 
			
		||||
	_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
type Metric struct {
 | 
			
		||||
	state         protoimpl.MessageState
 | 
			
		||||
	sizeCache     protoimpl.SizeCache
 | 
			
		||||
	unknownFields protoimpl.UnknownFields
 | 
			
		||||
 | 
			
		||||
	Timestamp *timestamppb.Timestamp `protobuf:"bytes,1,opt,name=timestamp,proto3" json:"timestamp,omitempty"`
 | 
			
		||||
	ID        string                 `protobuf:"bytes,2,opt,name=id,proto3" json:"id,omitempty"`
 | 
			
		||||
	Data      *anypb.Any             `protobuf:"bytes,3,opt,name=data,proto3" json:"data,omitempty"`
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (x *Metric) Reset() {
 | 
			
		||||
	*x = Metric{}
 | 
			
		||||
	if protoimpl.UnsafeEnabled {
 | 
			
		||||
		mi := &file_github_com_containerd_containerd_api_types_metrics_proto_msgTypes[0]
 | 
			
		||||
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
 | 
			
		||||
		ms.StoreMessageInfo(mi)
 | 
			
		||||
	}
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (x *Metric) String() string {
 | 
			
		||||
	return protoimpl.X.MessageStringOf(x)
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (*Metric) ProtoMessage() {}
 | 
			
		||||
 | 
			
		||||
func (x *Metric) ProtoReflect() protoreflect.Message {
 | 
			
		||||
	mi := &file_github_com_containerd_containerd_api_types_metrics_proto_msgTypes[0]
 | 
			
		||||
	if protoimpl.UnsafeEnabled && x != nil {
 | 
			
		||||
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
 | 
			
		||||
		if ms.LoadMessageInfo() == nil {
 | 
			
		||||
			ms.StoreMessageInfo(mi)
 | 
			
		||||
		}
 | 
			
		||||
		return ms
 | 
			
		||||
	}
 | 
			
		||||
	return mi.MessageOf(x)
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// Deprecated: Use Metric.ProtoReflect.Descriptor instead.
 | 
			
		||||
func (*Metric) Descriptor() ([]byte, []int) {
 | 
			
		||||
	return file_github_com_containerd_containerd_api_types_metrics_proto_rawDescGZIP(), []int{0}
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (x *Metric) GetTimestamp() *timestamppb.Timestamp {
 | 
			
		||||
	if x != nil {
 | 
			
		||||
		return x.Timestamp
 | 
			
		||||
	}
 | 
			
		||||
	return nil
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (x *Metric) GetID() string {
 | 
			
		||||
	if x != nil {
 | 
			
		||||
		return x.ID
 | 
			
		||||
	}
 | 
			
		||||
	return ""
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (x *Metric) GetData() *anypb.Any {
 | 
			
		||||
	if x != nil {
 | 
			
		||||
		return x.Data
 | 
			
		||||
	}
 | 
			
		||||
	return nil
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
var File_github_com_containerd_containerd_api_types_metrics_proto protoreflect.FileDescriptor
 | 
			
		||||
 | 
			
		||||
var file_github_com_containerd_containerd_api_types_metrics_proto_rawDesc = []byte{
 | 
			
		||||
	0x0a, 0x38, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x63, 0x6f, 0x6e,
 | 
			
		||||
	0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x64, 0x2f, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65,
 | 
			
		||||
	0x72, 0x64, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2f, 0x6d, 0x65, 0x74,
 | 
			
		||||
	0x72, 0x69, 0x63, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x10, 0x63, 0x6f, 0x6e, 0x74,
 | 
			
		||||
	0x61, 0x69, 0x6e, 0x65, 0x72, 0x64, 0x2e, 0x74, 0x79, 0x70, 0x65, 0x73, 0x1a, 0x19, 0x67, 0x6f,
 | 
			
		||||
	0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x61, 0x6e,
 | 
			
		||||
	0x79, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f,
 | 
			
		||||
	0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61,
 | 
			
		||||
	0x6d, 0x70, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0x7c, 0x0a, 0x06, 0x4d, 0x65, 0x74, 0x72,
 | 
			
		||||
	0x69, 0x63, 0x12, 0x38, 0x0a, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x18,
 | 
			
		||||
	0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70,
 | 
			
		||||
	0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d,
 | 
			
		||||
	0x70, 0x52, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x12, 0x0e, 0x0a, 0x02,
 | 
			
		||||
	0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x28, 0x0a, 0x04,
 | 
			
		||||
	0x64, 0x61, 0x74, 0x61, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x67, 0x6f, 0x6f,
 | 
			
		||||
	0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x41, 0x6e, 0x79,
 | 
			
		||||
	0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x42, 0x32, 0x5a, 0x30, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62,
 | 
			
		||||
	0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x64, 0x2f,
 | 
			
		||||
	0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x64, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x74,
 | 
			
		||||
	0x79, 0x70, 0x65, 0x73, 0x3b, 0x74, 0x79, 0x70, 0x65, 0x73, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74,
 | 
			
		||||
	0x6f, 0x33,
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
var (
 | 
			
		||||
	file_github_com_containerd_containerd_api_types_metrics_proto_rawDescOnce sync.Once
 | 
			
		||||
	file_github_com_containerd_containerd_api_types_metrics_proto_rawDescData = file_github_com_containerd_containerd_api_types_metrics_proto_rawDesc
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
func file_github_com_containerd_containerd_api_types_metrics_proto_rawDescGZIP() []byte {
 | 
			
		||||
	file_github_com_containerd_containerd_api_types_metrics_proto_rawDescOnce.Do(func() {
 | 
			
		||||
		file_github_com_containerd_containerd_api_types_metrics_proto_rawDescData = protoimpl.X.CompressGZIP(file_github_com_containerd_containerd_api_types_metrics_proto_rawDescData)
 | 
			
		||||
	})
 | 
			
		||||
	return file_github_com_containerd_containerd_api_types_metrics_proto_rawDescData
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
var file_github_com_containerd_containerd_api_types_metrics_proto_msgTypes = make([]protoimpl.MessageInfo, 1)
 | 
			
		||||
var file_github_com_containerd_containerd_api_types_metrics_proto_goTypes = []interface{}{
 | 
			
		||||
	(*Metric)(nil),                // 0: containerd.types.Metric
 | 
			
		||||
	(*timestamppb.Timestamp)(nil), // 1: google.protobuf.Timestamp
 | 
			
		||||
	(*anypb.Any)(nil),             // 2: google.protobuf.Any
 | 
			
		||||
}
 | 
			
		||||
var file_github_com_containerd_containerd_api_types_metrics_proto_depIdxs = []int32{
 | 
			
		||||
	1, // 0: containerd.types.Metric.timestamp:type_name -> google.protobuf.Timestamp
 | 
			
		||||
	2, // 1: containerd.types.Metric.data:type_name -> google.protobuf.Any
 | 
			
		||||
	2, // [2:2] is the sub-list for method output_type
 | 
			
		||||
	2, // [2:2] is the sub-list for method input_type
 | 
			
		||||
	2, // [2:2] is the sub-list for extension type_name
 | 
			
		||||
	2, // [2:2] is the sub-list for extension extendee
 | 
			
		||||
	0, // [0:2] is the sub-list for field type_name
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func init() { file_github_com_containerd_containerd_api_types_metrics_proto_init() }
 | 
			
		||||
func file_github_com_containerd_containerd_api_types_metrics_proto_init() {
 | 
			
		||||
	if File_github_com_containerd_containerd_api_types_metrics_proto != nil {
 | 
			
		||||
		return
 | 
			
		||||
	}
 | 
			
		||||
	if !protoimpl.UnsafeEnabled {
 | 
			
		||||
		file_github_com_containerd_containerd_api_types_metrics_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
 | 
			
		||||
			switch v := v.(*Metric); i {
 | 
			
		||||
			case 0:
 | 
			
		||||
				return &v.state
 | 
			
		||||
			case 1:
 | 
			
		||||
				return &v.sizeCache
 | 
			
		||||
			case 2:
 | 
			
		||||
				return &v.unknownFields
 | 
			
		||||
			default:
 | 
			
		||||
				return nil
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
	type x struct{}
 | 
			
		||||
	out := protoimpl.TypeBuilder{
 | 
			
		||||
		File: protoimpl.DescBuilder{
 | 
			
		||||
			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
 | 
			
		||||
			RawDescriptor: file_github_com_containerd_containerd_api_types_metrics_proto_rawDesc,
 | 
			
		||||
			NumEnums:      0,
 | 
			
		||||
			NumMessages:   1,
 | 
			
		||||
			NumExtensions: 0,
 | 
			
		||||
			NumServices:   0,
 | 
			
		||||
		},
 | 
			
		||||
		GoTypes:           file_github_com_containerd_containerd_api_types_metrics_proto_goTypes,
 | 
			
		||||
		DependencyIndexes: file_github_com_containerd_containerd_api_types_metrics_proto_depIdxs,
 | 
			
		||||
		MessageInfos:      file_github_com_containerd_containerd_api_types_metrics_proto_msgTypes,
 | 
			
		||||
	}.Build()
 | 
			
		||||
	File_github_com_containerd_containerd_api_types_metrics_proto = out.File
 | 
			
		||||
	file_github_com_containerd_containerd_api_types_metrics_proto_rawDesc = nil
 | 
			
		||||
	file_github_com_containerd_containerd_api_types_metrics_proto_goTypes = nil
 | 
			
		||||
	file_github_com_containerd_containerd_api_types_metrics_proto_depIdxs = nil
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										30
									
								
								vendor/github.com/containerd/containerd/api/types/metrics.proto
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										30
									
								
								vendor/github.com/containerd/containerd/api/types/metrics.proto
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,30 @@
 | 
			
		||||
/*
 | 
			
		||||
	Copyright The containerd Authors.
 | 
			
		||||
 | 
			
		||||
	Licensed under the Apache License, Version 2.0 (the "License");
 | 
			
		||||
	you may not use this file except in compliance with the License.
 | 
			
		||||
	You may obtain a copy of the License at
 | 
			
		||||
 | 
			
		||||
		http://www.apache.org/licenses/LICENSE-2.0
 | 
			
		||||
 | 
			
		||||
	Unless required by applicable law or agreed to in writing, software
 | 
			
		||||
	distributed under the License is distributed on an "AS IS" BASIS,
 | 
			
		||||
	WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 | 
			
		||||
	See the License for the specific language governing permissions and
 | 
			
		||||
	limitations under the License.
 | 
			
		||||
*/
 | 
			
		||||
 | 
			
		||||
syntax = "proto3";
 | 
			
		||||
 | 
			
		||||
package containerd.types;
 | 
			
		||||
 | 
			
		||||
import "google/protobuf/any.proto";
 | 
			
		||||
import "google/protobuf/timestamp.proto";
 | 
			
		||||
 | 
			
		||||
option go_package = "github.com/containerd/containerd/api/types;types";
 | 
			
		||||
 | 
			
		||||
message Metric {
 | 
			
		||||
	google.protobuf.Timestamp timestamp = 1;
 | 
			
		||||
	string id = 2;
 | 
			
		||||
	google.protobuf.Any data = 3;
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										202
									
								
								vendor/github.com/containerd/containerd/api/types/mount.pb.go
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										202
									
								
								vendor/github.com/containerd/containerd/api/types/mount.pb.go
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,202 @@
 | 
			
		||||
//
 | 
			
		||||
//Copyright The containerd Authors.
 | 
			
		||||
//
 | 
			
		||||
//Licensed under the Apache License, Version 2.0 (the "License");
 | 
			
		||||
//you may not use this file except in compliance with the License.
 | 
			
		||||
//You may obtain a copy of the License at
 | 
			
		||||
//
 | 
			
		||||
//http://www.apache.org/licenses/LICENSE-2.0
 | 
			
		||||
//
 | 
			
		||||
//Unless required by applicable law or agreed to in writing, software
 | 
			
		||||
//distributed under the License is distributed on an "AS IS" BASIS,
 | 
			
		||||
//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 | 
			
		||||
//See the License for the specific language governing permissions and
 | 
			
		||||
//limitations under the License.
 | 
			
		||||
 | 
			
		||||
// Code generated by protoc-gen-go. DO NOT EDIT.
 | 
			
		||||
// versions:
 | 
			
		||||
// 	protoc-gen-go v1.28.1
 | 
			
		||||
// 	protoc        v3.20.1
 | 
			
		||||
// source: github.com/containerd/containerd/api/types/mount.proto
 | 
			
		||||
 | 
			
		||||
package types
 | 
			
		||||
 | 
			
		||||
import (
 | 
			
		||||
	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
 | 
			
		||||
	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 | 
			
		||||
	reflect "reflect"
 | 
			
		||||
	sync "sync"
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
const (
 | 
			
		||||
	// Verify that this generated code is sufficiently up-to-date.
 | 
			
		||||
	_ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
 | 
			
		||||
	// Verify that runtime/protoimpl is sufficiently up-to-date.
 | 
			
		||||
	_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
// Mount describes mounts for a container.
 | 
			
		||||
//
 | 
			
		||||
// This type is the lingua franca of ContainerD. All services provide mounts
 | 
			
		||||
// to be used with the container at creation time.
 | 
			
		||||
//
 | 
			
		||||
// The Mount type follows the structure of the mount syscall, including a type,
 | 
			
		||||
// source, target and options.
 | 
			
		||||
type Mount struct {
 | 
			
		||||
	state         protoimpl.MessageState
 | 
			
		||||
	sizeCache     protoimpl.SizeCache
 | 
			
		||||
	unknownFields protoimpl.UnknownFields
 | 
			
		||||
 | 
			
		||||
	// Type defines the nature of the mount.
 | 
			
		||||
	Type string `protobuf:"bytes,1,opt,name=type,proto3" json:"type,omitempty"`
 | 
			
		||||
	// Source specifies the name of the mount. Depending on mount type, this
 | 
			
		||||
	// may be a volume name or a host path, or even ignored.
 | 
			
		||||
	Source string `protobuf:"bytes,2,opt,name=source,proto3" json:"source,omitempty"`
 | 
			
		||||
	// Target path in container
 | 
			
		||||
	Target string `protobuf:"bytes,3,opt,name=target,proto3" json:"target,omitempty"`
 | 
			
		||||
	// Options specifies zero or more fstab style mount options.
 | 
			
		||||
	Options []string `protobuf:"bytes,4,rep,name=options,proto3" json:"options,omitempty"`
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (x *Mount) Reset() {
 | 
			
		||||
	*x = Mount{}
 | 
			
		||||
	if protoimpl.UnsafeEnabled {
 | 
			
		||||
		mi := &file_github_com_containerd_containerd_api_types_mount_proto_msgTypes[0]
 | 
			
		||||
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
 | 
			
		||||
		ms.StoreMessageInfo(mi)
 | 
			
		||||
	}
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (x *Mount) String() string {
 | 
			
		||||
	return protoimpl.X.MessageStringOf(x)
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (*Mount) ProtoMessage() {}
 | 
			
		||||
 | 
			
		||||
func (x *Mount) ProtoReflect() protoreflect.Message {
 | 
			
		||||
	mi := &file_github_com_containerd_containerd_api_types_mount_proto_msgTypes[0]
 | 
			
		||||
	if protoimpl.UnsafeEnabled && x != nil {
 | 
			
		||||
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
 | 
			
		||||
		if ms.LoadMessageInfo() == nil {
 | 
			
		||||
			ms.StoreMessageInfo(mi)
 | 
			
		||||
		}
 | 
			
		||||
		return ms
 | 
			
		||||
	}
 | 
			
		||||
	return mi.MessageOf(x)
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// Deprecated: Use Mount.ProtoReflect.Descriptor instead.
 | 
			
		||||
func (*Mount) Descriptor() ([]byte, []int) {
 | 
			
		||||
	return file_github_com_containerd_containerd_api_types_mount_proto_rawDescGZIP(), []int{0}
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (x *Mount) GetType() string {
 | 
			
		||||
	if x != nil {
 | 
			
		||||
		return x.Type
 | 
			
		||||
	}
 | 
			
		||||
	return ""
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (x *Mount) GetSource() string {
 | 
			
		||||
	if x != nil {
 | 
			
		||||
		return x.Source
 | 
			
		||||
	}
 | 
			
		||||
	return ""
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (x *Mount) GetTarget() string {
 | 
			
		||||
	if x != nil {
 | 
			
		||||
		return x.Target
 | 
			
		||||
	}
 | 
			
		||||
	return ""
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (x *Mount) GetOptions() []string {
 | 
			
		||||
	if x != nil {
 | 
			
		||||
		return x.Options
 | 
			
		||||
	}
 | 
			
		||||
	return nil
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
var File_github_com_containerd_containerd_api_types_mount_proto protoreflect.FileDescriptor
 | 
			
		||||
 | 
			
		||||
var file_github_com_containerd_containerd_api_types_mount_proto_rawDesc = []byte{
 | 
			
		||||
	0x0a, 0x36, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x63, 0x6f, 0x6e,
 | 
			
		||||
	0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x64, 0x2f, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65,
 | 
			
		||||
	0x72, 0x64, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2f, 0x6d, 0x6f, 0x75,
 | 
			
		||||
	0x6e, 0x74, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x10, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69,
 | 
			
		||||
	0x6e, 0x65, 0x72, 0x64, 0x2e, 0x74, 0x79, 0x70, 0x65, 0x73, 0x22, 0x65, 0x0a, 0x05, 0x4d, 0x6f,
 | 
			
		||||
	0x75, 0x6e, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28,
 | 
			
		||||
	0x09, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63,
 | 
			
		||||
	0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12,
 | 
			
		||||
	0x16, 0x0a, 0x06, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52,
 | 
			
		||||
	0x06, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f,
 | 
			
		||||
	0x6e, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x09, 0x52, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e,
 | 
			
		||||
	0x73, 0x42, 0x32, 0x5a, 0x30, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f,
 | 
			
		||||
	0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x64, 0x2f, 0x63, 0x6f, 0x6e, 0x74, 0x61,
 | 
			
		||||
	0x69, 0x6e, 0x65, 0x72, 0x64, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x74, 0x79, 0x70, 0x65, 0x73, 0x3b,
 | 
			
		||||
	0x74, 0x79, 0x70, 0x65, 0x73, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
var (
 | 
			
		||||
	file_github_com_containerd_containerd_api_types_mount_proto_rawDescOnce sync.Once
 | 
			
		||||
	file_github_com_containerd_containerd_api_types_mount_proto_rawDescData = file_github_com_containerd_containerd_api_types_mount_proto_rawDesc
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
func file_github_com_containerd_containerd_api_types_mount_proto_rawDescGZIP() []byte {
 | 
			
		||||
	file_github_com_containerd_containerd_api_types_mount_proto_rawDescOnce.Do(func() {
 | 
			
		||||
		file_github_com_containerd_containerd_api_types_mount_proto_rawDescData = protoimpl.X.CompressGZIP(file_github_com_containerd_containerd_api_types_mount_proto_rawDescData)
 | 
			
		||||
	})
 | 
			
		||||
	return file_github_com_containerd_containerd_api_types_mount_proto_rawDescData
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
var file_github_com_containerd_containerd_api_types_mount_proto_msgTypes = make([]protoimpl.MessageInfo, 1)
 | 
			
		||||
var file_github_com_containerd_containerd_api_types_mount_proto_goTypes = []interface{}{
 | 
			
		||||
	(*Mount)(nil), // 0: containerd.types.Mount
 | 
			
		||||
}
 | 
			
		||||
var file_github_com_containerd_containerd_api_types_mount_proto_depIdxs = []int32{
 | 
			
		||||
	0, // [0:0] is the sub-list for method output_type
 | 
			
		||||
	0, // [0:0] is the sub-list for method input_type
 | 
			
		||||
	0, // [0:0] is the sub-list for extension type_name
 | 
			
		||||
	0, // [0:0] is the sub-list for extension extendee
 | 
			
		||||
	0, // [0:0] is the sub-list for field type_name
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func init() { file_github_com_containerd_containerd_api_types_mount_proto_init() }
 | 
			
		||||
func file_github_com_containerd_containerd_api_types_mount_proto_init() {
 | 
			
		||||
	if File_github_com_containerd_containerd_api_types_mount_proto != nil {
 | 
			
		||||
		return
 | 
			
		||||
	}
 | 
			
		||||
	if !protoimpl.UnsafeEnabled {
 | 
			
		||||
		file_github_com_containerd_containerd_api_types_mount_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
 | 
			
		||||
			switch v := v.(*Mount); i {
 | 
			
		||||
			case 0:
 | 
			
		||||
				return &v.state
 | 
			
		||||
			case 1:
 | 
			
		||||
				return &v.sizeCache
 | 
			
		||||
			case 2:
 | 
			
		||||
				return &v.unknownFields
 | 
			
		||||
			default:
 | 
			
		||||
				return nil
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
	type x struct{}
 | 
			
		||||
	out := protoimpl.TypeBuilder{
 | 
			
		||||
		File: protoimpl.DescBuilder{
 | 
			
		||||
			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
 | 
			
		||||
			RawDescriptor: file_github_com_containerd_containerd_api_types_mount_proto_rawDesc,
 | 
			
		||||
			NumEnums:      0,
 | 
			
		||||
			NumMessages:   1,
 | 
			
		||||
			NumExtensions: 0,
 | 
			
		||||
			NumServices:   0,
 | 
			
		||||
		},
 | 
			
		||||
		GoTypes:           file_github_com_containerd_containerd_api_types_mount_proto_goTypes,
 | 
			
		||||
		DependencyIndexes: file_github_com_containerd_containerd_api_types_mount_proto_depIdxs,
 | 
			
		||||
		MessageInfos:      file_github_com_containerd_containerd_api_types_mount_proto_msgTypes,
 | 
			
		||||
	}.Build()
 | 
			
		||||
	File_github_com_containerd_containerd_api_types_mount_proto = out.File
 | 
			
		||||
	file_github_com_containerd_containerd_api_types_mount_proto_rawDesc = nil
 | 
			
		||||
	file_github_com_containerd_containerd_api_types_mount_proto_goTypes = nil
 | 
			
		||||
	file_github_com_containerd_containerd_api_types_mount_proto_depIdxs = nil
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										43
									
								
								vendor/github.com/containerd/containerd/api/types/mount.proto
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										43
									
								
								vendor/github.com/containerd/containerd/api/types/mount.proto
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,43 @@
 | 
			
		||||
/*
 | 
			
		||||
	Copyright The containerd Authors.
 | 
			
		||||
 | 
			
		||||
	Licensed under the Apache License, Version 2.0 (the "License");
 | 
			
		||||
	you may not use this file except in compliance with the License.
 | 
			
		||||
	You may obtain a copy of the License at
 | 
			
		||||
 | 
			
		||||
		http://www.apache.org/licenses/LICENSE-2.0
 | 
			
		||||
 | 
			
		||||
	Unless required by applicable law or agreed to in writing, software
 | 
			
		||||
	distributed under the License is distributed on an "AS IS" BASIS,
 | 
			
		||||
	WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 | 
			
		||||
	See the License for the specific language governing permissions and
 | 
			
		||||
	limitations under the License.
 | 
			
		||||
*/
 | 
			
		||||
 | 
			
		||||
syntax = "proto3";
 | 
			
		||||
 | 
			
		||||
package containerd.types;
 | 
			
		||||
 | 
			
		||||
option go_package = "github.com/containerd/containerd/api/types;types";
 | 
			
		||||
 | 
			
		||||
// Mount describes mounts for a container.
 | 
			
		||||
//
 | 
			
		||||
// This type is the lingua franca of ContainerD. All services provide mounts
 | 
			
		||||
// to be used with the container at creation time.
 | 
			
		||||
//
 | 
			
		||||
// The Mount type follows the structure of the mount syscall, including a type,
 | 
			
		||||
// source, target and options.
 | 
			
		||||
message Mount {
 | 
			
		||||
	// Type defines the nature of the mount.
 | 
			
		||||
	string type = 1;
 | 
			
		||||
 | 
			
		||||
	// Source specifies the name of the mount. Depending on mount type, this
 | 
			
		||||
	// may be a volume name or a host path, or even ignored.
 | 
			
		||||
	string source = 2;
 | 
			
		||||
 | 
			
		||||
	// Target path in container
 | 
			
		||||
	string target = 3;
 | 
			
		||||
 | 
			
		||||
	// Options specifies zero or more fstab style mount options.
 | 
			
		||||
	repeated string options = 4;
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										184
									
								
								vendor/github.com/containerd/containerd/api/types/platform.pb.go
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										184
									
								
								vendor/github.com/containerd/containerd/api/types/platform.pb.go
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,184 @@
 | 
			
		||||
//
 | 
			
		||||
//Copyright The containerd Authors.
 | 
			
		||||
//
 | 
			
		||||
//Licensed under the Apache License, Version 2.0 (the "License");
 | 
			
		||||
//you may not use this file except in compliance with the License.
 | 
			
		||||
//You may obtain a copy of the License at
 | 
			
		||||
//
 | 
			
		||||
//http://www.apache.org/licenses/LICENSE-2.0
 | 
			
		||||
//
 | 
			
		||||
//Unless required by applicable law or agreed to in writing, software
 | 
			
		||||
//distributed under the License is distributed on an "AS IS" BASIS,
 | 
			
		||||
//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 | 
			
		||||
//See the License for the specific language governing permissions and
 | 
			
		||||
//limitations under the License.
 | 
			
		||||
 | 
			
		||||
// Code generated by protoc-gen-go. DO NOT EDIT.
 | 
			
		||||
// versions:
 | 
			
		||||
// 	protoc-gen-go v1.28.1
 | 
			
		||||
// 	protoc        v3.20.1
 | 
			
		||||
// source: github.com/containerd/containerd/api/types/platform.proto
 | 
			
		||||
 | 
			
		||||
package types
 | 
			
		||||
 | 
			
		||||
import (
 | 
			
		||||
	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
 | 
			
		||||
	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 | 
			
		||||
	reflect "reflect"
 | 
			
		||||
	sync "sync"
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
const (
 | 
			
		||||
	// Verify that this generated code is sufficiently up-to-date.
 | 
			
		||||
	_ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
 | 
			
		||||
	// Verify that runtime/protoimpl is sufficiently up-to-date.
 | 
			
		||||
	_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
// Platform follows the structure of the OCI platform specification, from
 | 
			
		||||
// descriptors.
 | 
			
		||||
type Platform struct {
 | 
			
		||||
	state         protoimpl.MessageState
 | 
			
		||||
	sizeCache     protoimpl.SizeCache
 | 
			
		||||
	unknownFields protoimpl.UnknownFields
 | 
			
		||||
 | 
			
		||||
	OS           string `protobuf:"bytes,1,opt,name=os,proto3" json:"os,omitempty"`
 | 
			
		||||
	Architecture string `protobuf:"bytes,2,opt,name=architecture,proto3" json:"architecture,omitempty"`
 | 
			
		||||
	Variant      string `protobuf:"bytes,3,opt,name=variant,proto3" json:"variant,omitempty"`
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (x *Platform) Reset() {
 | 
			
		||||
	*x = Platform{}
 | 
			
		||||
	if protoimpl.UnsafeEnabled {
 | 
			
		||||
		mi := &file_github_com_containerd_containerd_api_types_platform_proto_msgTypes[0]
 | 
			
		||||
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
 | 
			
		||||
		ms.StoreMessageInfo(mi)
 | 
			
		||||
	}
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (x *Platform) String() string {
 | 
			
		||||
	return protoimpl.X.MessageStringOf(x)
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (*Platform) ProtoMessage() {}
 | 
			
		||||
 | 
			
		||||
func (x *Platform) ProtoReflect() protoreflect.Message {
 | 
			
		||||
	mi := &file_github_com_containerd_containerd_api_types_platform_proto_msgTypes[0]
 | 
			
		||||
	if protoimpl.UnsafeEnabled && x != nil {
 | 
			
		||||
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
 | 
			
		||||
		if ms.LoadMessageInfo() == nil {
 | 
			
		||||
			ms.StoreMessageInfo(mi)
 | 
			
		||||
		}
 | 
			
		||||
		return ms
 | 
			
		||||
	}
 | 
			
		||||
	return mi.MessageOf(x)
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// Deprecated: Use Platform.ProtoReflect.Descriptor instead.
 | 
			
		||||
func (*Platform) Descriptor() ([]byte, []int) {
 | 
			
		||||
	return file_github_com_containerd_containerd_api_types_platform_proto_rawDescGZIP(), []int{0}
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (x *Platform) GetOS() string {
 | 
			
		||||
	if x != nil {
 | 
			
		||||
		return x.OS
 | 
			
		||||
	}
 | 
			
		||||
	return ""
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (x *Platform) GetArchitecture() string {
 | 
			
		||||
	if x != nil {
 | 
			
		||||
		return x.Architecture
 | 
			
		||||
	}
 | 
			
		||||
	return ""
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (x *Platform) GetVariant() string {
 | 
			
		||||
	if x != nil {
 | 
			
		||||
		return x.Variant
 | 
			
		||||
	}
 | 
			
		||||
	return ""
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
var File_github_com_containerd_containerd_api_types_platform_proto protoreflect.FileDescriptor
 | 
			
		||||
 | 
			
		||||
var file_github_com_containerd_containerd_api_types_platform_proto_rawDesc = []byte{
 | 
			
		||||
	0x0a, 0x39, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x63, 0x6f, 0x6e,
 | 
			
		||||
	0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x64, 0x2f, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65,
 | 
			
		||||
	0x72, 0x64, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2f, 0x70, 0x6c, 0x61,
 | 
			
		||||
	0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x10, 0x63, 0x6f, 0x6e,
 | 
			
		||||
	0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x64, 0x2e, 0x74, 0x79, 0x70, 0x65, 0x73, 0x22, 0x58, 0x0a,
 | 
			
		||||
	0x08, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x12, 0x0e, 0x0a, 0x02, 0x6f, 0x73, 0x18,
 | 
			
		||||
	0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x6f, 0x73, 0x12, 0x22, 0x0a, 0x0c, 0x61, 0x72, 0x63,
 | 
			
		||||
	0x68, 0x69, 0x74, 0x65, 0x63, 0x74, 0x75, 0x72, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52,
 | 
			
		||||
	0x0c, 0x61, 0x72, 0x63, 0x68, 0x69, 0x74, 0x65, 0x63, 0x74, 0x75, 0x72, 0x65, 0x12, 0x18, 0x0a,
 | 
			
		||||
	0x07, 0x76, 0x61, 0x72, 0x69, 0x61, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07,
 | 
			
		||||
	0x76, 0x61, 0x72, 0x69, 0x61, 0x6e, 0x74, 0x42, 0x32, 0x5a, 0x30, 0x67, 0x69, 0x74, 0x68, 0x75,
 | 
			
		||||
	0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x64,
 | 
			
		||||
	0x2f, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x64, 0x2f, 0x61, 0x70, 0x69, 0x2f,
 | 
			
		||||
	0x74, 0x79, 0x70, 0x65, 0x73, 0x3b, 0x74, 0x79, 0x70, 0x65, 0x73, 0x62, 0x06, 0x70, 0x72, 0x6f,
 | 
			
		||||
	0x74, 0x6f, 0x33,
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
var (
 | 
			
		||||
	file_github_com_containerd_containerd_api_types_platform_proto_rawDescOnce sync.Once
 | 
			
		||||
	file_github_com_containerd_containerd_api_types_platform_proto_rawDescData = file_github_com_containerd_containerd_api_types_platform_proto_rawDesc
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
func file_github_com_containerd_containerd_api_types_platform_proto_rawDescGZIP() []byte {
 | 
			
		||||
	file_github_com_containerd_containerd_api_types_platform_proto_rawDescOnce.Do(func() {
 | 
			
		||||
		file_github_com_containerd_containerd_api_types_platform_proto_rawDescData = protoimpl.X.CompressGZIP(file_github_com_containerd_containerd_api_types_platform_proto_rawDescData)
 | 
			
		||||
	})
 | 
			
		||||
	return file_github_com_containerd_containerd_api_types_platform_proto_rawDescData
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
var file_github_com_containerd_containerd_api_types_platform_proto_msgTypes = make([]protoimpl.MessageInfo, 1)
 | 
			
		||||
var file_github_com_containerd_containerd_api_types_platform_proto_goTypes = []interface{}{
 | 
			
		||||
	(*Platform)(nil), // 0: containerd.types.Platform
 | 
			
		||||
}
 | 
			
		||||
var file_github_com_containerd_containerd_api_types_platform_proto_depIdxs = []int32{
 | 
			
		||||
	0, // [0:0] is the sub-list for method output_type
 | 
			
		||||
	0, // [0:0] is the sub-list for method input_type
 | 
			
		||||
	0, // [0:0] is the sub-list for extension type_name
 | 
			
		||||
	0, // [0:0] is the sub-list for extension extendee
 | 
			
		||||
	0, // [0:0] is the sub-list for field type_name
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func init() { file_github_com_containerd_containerd_api_types_platform_proto_init() }
 | 
			
		||||
func file_github_com_containerd_containerd_api_types_platform_proto_init() {
 | 
			
		||||
	if File_github_com_containerd_containerd_api_types_platform_proto != nil {
 | 
			
		||||
		return
 | 
			
		||||
	}
 | 
			
		||||
	if !protoimpl.UnsafeEnabled {
 | 
			
		||||
		file_github_com_containerd_containerd_api_types_platform_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
 | 
			
		||||
			switch v := v.(*Platform); i {
 | 
			
		||||
			case 0:
 | 
			
		||||
				return &v.state
 | 
			
		||||
			case 1:
 | 
			
		||||
				return &v.sizeCache
 | 
			
		||||
			case 2:
 | 
			
		||||
				return &v.unknownFields
 | 
			
		||||
			default:
 | 
			
		||||
				return nil
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
	type x struct{}
 | 
			
		||||
	out := protoimpl.TypeBuilder{
 | 
			
		||||
		File: protoimpl.DescBuilder{
 | 
			
		||||
			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
 | 
			
		||||
			RawDescriptor: file_github_com_containerd_containerd_api_types_platform_proto_rawDesc,
 | 
			
		||||
			NumEnums:      0,
 | 
			
		||||
			NumMessages:   1,
 | 
			
		||||
			NumExtensions: 0,
 | 
			
		||||
			NumServices:   0,
 | 
			
		||||
		},
 | 
			
		||||
		GoTypes:           file_github_com_containerd_containerd_api_types_platform_proto_goTypes,
 | 
			
		||||
		DependencyIndexes: file_github_com_containerd_containerd_api_types_platform_proto_depIdxs,
 | 
			
		||||
		MessageInfos:      file_github_com_containerd_containerd_api_types_platform_proto_msgTypes,
 | 
			
		||||
	}.Build()
 | 
			
		||||
	File_github_com_containerd_containerd_api_types_platform_proto = out.File
 | 
			
		||||
	file_github_com_containerd_containerd_api_types_platform_proto_rawDesc = nil
 | 
			
		||||
	file_github_com_containerd_containerd_api_types_platform_proto_goTypes = nil
 | 
			
		||||
	file_github_com_containerd_containerd_api_types_platform_proto_depIdxs = nil
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										29
									
								
								vendor/github.com/containerd/containerd/api/types/platform.proto
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										29
									
								
								vendor/github.com/containerd/containerd/api/types/platform.proto
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,29 @@
 | 
			
		||||
/*
 | 
			
		||||
	Copyright The containerd Authors.
 | 
			
		||||
 | 
			
		||||
	Licensed under the Apache License, Version 2.0 (the "License");
 | 
			
		||||
	you may not use this file except in compliance with the License.
 | 
			
		||||
	You may obtain a copy of the License at
 | 
			
		||||
 | 
			
		||||
		http://www.apache.org/licenses/LICENSE-2.0
 | 
			
		||||
 | 
			
		||||
	Unless required by applicable law or agreed to in writing, software
 | 
			
		||||
	distributed under the License is distributed on an "AS IS" BASIS,
 | 
			
		||||
	WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 | 
			
		||||
	See the License for the specific language governing permissions and
 | 
			
		||||
	limitations under the License.
 | 
			
		||||
*/
 | 
			
		||||
 | 
			
		||||
syntax = "proto3";
 | 
			
		||||
 | 
			
		||||
package containerd.types;
 | 
			
		||||
 | 
			
		||||
option go_package = "github.com/containerd/containerd/api/types;types";
 | 
			
		||||
 | 
			
		||||
// Platform follows the structure of the OCI platform specification, from
 | 
			
		||||
// descriptors.
 | 
			
		||||
message Platform {
 | 
			
		||||
	string os = 1;
 | 
			
		||||
	string architecture = 2;
 | 
			
		||||
	string variant = 3;
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										346
									
								
								vendor/github.com/containerd/containerd/api/types/sandbox.pb.go
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										346
									
								
								vendor/github.com/containerd/containerd/api/types/sandbox.pb.go
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,346 @@
 | 
			
		||||
//
 | 
			
		||||
//Copyright The containerd Authors.
 | 
			
		||||
//
 | 
			
		||||
//Licensed under the Apache License, Version 2.0 (the "License");
 | 
			
		||||
//you may not use this file except in compliance with the License.
 | 
			
		||||
//You may obtain a copy of the License at
 | 
			
		||||
//
 | 
			
		||||
//http://www.apache.org/licenses/LICENSE-2.0
 | 
			
		||||
//
 | 
			
		||||
//Unless required by applicable law or agreed to in writing, software
 | 
			
		||||
//distributed under the License is distributed on an "AS IS" BASIS,
 | 
			
		||||
//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 | 
			
		||||
//See the License for the specific language governing permissions and
 | 
			
		||||
//limitations under the License.
 | 
			
		||||
 | 
			
		||||
// Code generated by protoc-gen-go. DO NOT EDIT.
 | 
			
		||||
// versions:
 | 
			
		||||
// 	protoc-gen-go v1.28.1
 | 
			
		||||
// 	protoc        v3.20.1
 | 
			
		||||
// source: github.com/containerd/containerd/api/types/sandbox.proto
 | 
			
		||||
 | 
			
		||||
package types
 | 
			
		||||
 | 
			
		||||
import (
 | 
			
		||||
	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
 | 
			
		||||
	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 | 
			
		||||
	anypb "google.golang.org/protobuf/types/known/anypb"
 | 
			
		||||
	timestamppb "google.golang.org/protobuf/types/known/timestamppb"
 | 
			
		||||
	reflect "reflect"
 | 
			
		||||
	sync "sync"
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
const (
 | 
			
		||||
	// Verify that this generated code is sufficiently up-to-date.
 | 
			
		||||
	_ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
 | 
			
		||||
	// Verify that runtime/protoimpl is sufficiently up-to-date.
 | 
			
		||||
	_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
// Sandbox represents a sandbox metadata object that keeps all info required by controller to
 | 
			
		||||
// work with a particular instance.
 | 
			
		||||
type Sandbox struct {
 | 
			
		||||
	state         protoimpl.MessageState
 | 
			
		||||
	sizeCache     protoimpl.SizeCache
 | 
			
		||||
	unknownFields protoimpl.UnknownFields
 | 
			
		||||
 | 
			
		||||
	// SandboxID is a unique instance identifier within namespace
 | 
			
		||||
	SandboxID string `protobuf:"bytes,1,opt,name=sandbox_id,json=sandboxId,proto3" json:"sandbox_id,omitempty"`
 | 
			
		||||
	// Runtime specifies which runtime to use for executing this container.
 | 
			
		||||
	Runtime *Sandbox_Runtime `protobuf:"bytes,2,opt,name=runtime,proto3" json:"runtime,omitempty"`
 | 
			
		||||
	// Spec is sandbox configuration (kin of OCI runtime spec), spec's data will be written to a config.json file in the
 | 
			
		||||
	// bundle directory (similary to OCI spec).
 | 
			
		||||
	Spec *anypb.Any `protobuf:"bytes,3,opt,name=spec,proto3" json:"spec,omitempty"`
 | 
			
		||||
	// Labels provides an area to include arbitrary data on containers.
 | 
			
		||||
	Labels map[string]string `protobuf:"bytes,4,rep,name=labels,proto3" json:"labels,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
 | 
			
		||||
	// CreatedAt is the time the container was first created.
 | 
			
		||||
	CreatedAt *timestamppb.Timestamp `protobuf:"bytes,5,opt,name=created_at,json=createdAt,proto3" json:"created_at,omitempty"`
 | 
			
		||||
	// UpdatedAt is the last time the container was mutated.
 | 
			
		||||
	UpdatedAt *timestamppb.Timestamp `protobuf:"bytes,6,opt,name=updated_at,json=updatedAt,proto3" json:"updated_at,omitempty"`
 | 
			
		||||
	// Extensions allow clients to provide optional blobs that can be handled by runtime.
 | 
			
		||||
	Extensions map[string]*anypb.Any `protobuf:"bytes,7,rep,name=extensions,proto3" json:"extensions,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (x *Sandbox) Reset() {
 | 
			
		||||
	*x = Sandbox{}
 | 
			
		||||
	if protoimpl.UnsafeEnabled {
 | 
			
		||||
		mi := &file_github_com_containerd_containerd_api_types_sandbox_proto_msgTypes[0]
 | 
			
		||||
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
 | 
			
		||||
		ms.StoreMessageInfo(mi)
 | 
			
		||||
	}
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (x *Sandbox) String() string {
 | 
			
		||||
	return protoimpl.X.MessageStringOf(x)
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (*Sandbox) ProtoMessage() {}
 | 
			
		||||
 | 
			
		||||
func (x *Sandbox) ProtoReflect() protoreflect.Message {
 | 
			
		||||
	mi := &file_github_com_containerd_containerd_api_types_sandbox_proto_msgTypes[0]
 | 
			
		||||
	if protoimpl.UnsafeEnabled && x != nil {
 | 
			
		||||
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
 | 
			
		||||
		if ms.LoadMessageInfo() == nil {
 | 
			
		||||
			ms.StoreMessageInfo(mi)
 | 
			
		||||
		}
 | 
			
		||||
		return ms
 | 
			
		||||
	}
 | 
			
		||||
	return mi.MessageOf(x)
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// Deprecated: Use Sandbox.ProtoReflect.Descriptor instead.
 | 
			
		||||
func (*Sandbox) Descriptor() ([]byte, []int) {
 | 
			
		||||
	return file_github_com_containerd_containerd_api_types_sandbox_proto_rawDescGZIP(), []int{0}
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (x *Sandbox) GetSandboxID() string {
 | 
			
		||||
	if x != nil {
 | 
			
		||||
		return x.SandboxID
 | 
			
		||||
	}
 | 
			
		||||
	return ""
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (x *Sandbox) GetRuntime() *Sandbox_Runtime {
 | 
			
		||||
	if x != nil {
 | 
			
		||||
		return x.Runtime
 | 
			
		||||
	}
 | 
			
		||||
	return nil
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (x *Sandbox) GetSpec() *anypb.Any {
 | 
			
		||||
	if x != nil {
 | 
			
		||||
		return x.Spec
 | 
			
		||||
	}
 | 
			
		||||
	return nil
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (x *Sandbox) GetLabels() map[string]string {
 | 
			
		||||
	if x != nil {
 | 
			
		||||
		return x.Labels
 | 
			
		||||
	}
 | 
			
		||||
	return nil
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (x *Sandbox) GetCreatedAt() *timestamppb.Timestamp {
 | 
			
		||||
	if x != nil {
 | 
			
		||||
		return x.CreatedAt
 | 
			
		||||
	}
 | 
			
		||||
	return nil
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (x *Sandbox) GetUpdatedAt() *timestamppb.Timestamp {
 | 
			
		||||
	if x != nil {
 | 
			
		||||
		return x.UpdatedAt
 | 
			
		||||
	}
 | 
			
		||||
	return nil
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (x *Sandbox) GetExtensions() map[string]*anypb.Any {
 | 
			
		||||
	if x != nil {
 | 
			
		||||
		return x.Extensions
 | 
			
		||||
	}
 | 
			
		||||
	return nil
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
type Sandbox_Runtime struct {
 | 
			
		||||
	state         protoimpl.MessageState
 | 
			
		||||
	sizeCache     protoimpl.SizeCache
 | 
			
		||||
	unknownFields protoimpl.UnknownFields
 | 
			
		||||
 | 
			
		||||
	// Name is the name of the runtime.
 | 
			
		||||
	Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
 | 
			
		||||
	// Options specify additional runtime initialization options for the shim (this data will be available in StartShim).
 | 
			
		||||
	// Typically this data expected to be runtime shim implementation specific.
 | 
			
		||||
	Options *anypb.Any `protobuf:"bytes,2,opt,name=options,proto3" json:"options,omitempty"`
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (x *Sandbox_Runtime) Reset() {
 | 
			
		||||
	*x = Sandbox_Runtime{}
 | 
			
		||||
	if protoimpl.UnsafeEnabled {
 | 
			
		||||
		mi := &file_github_com_containerd_containerd_api_types_sandbox_proto_msgTypes[1]
 | 
			
		||||
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
 | 
			
		||||
		ms.StoreMessageInfo(mi)
 | 
			
		||||
	}
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (x *Sandbox_Runtime) String() string {
 | 
			
		||||
	return protoimpl.X.MessageStringOf(x)
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (*Sandbox_Runtime) ProtoMessage() {}
 | 
			
		||||
 | 
			
		||||
func (x *Sandbox_Runtime) ProtoReflect() protoreflect.Message {
 | 
			
		||||
	mi := &file_github_com_containerd_containerd_api_types_sandbox_proto_msgTypes[1]
 | 
			
		||||
	if protoimpl.UnsafeEnabled && x != nil {
 | 
			
		||||
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
 | 
			
		||||
		if ms.LoadMessageInfo() == nil {
 | 
			
		||||
			ms.StoreMessageInfo(mi)
 | 
			
		||||
		}
 | 
			
		||||
		return ms
 | 
			
		||||
	}
 | 
			
		||||
	return mi.MessageOf(x)
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// Deprecated: Use Sandbox_Runtime.ProtoReflect.Descriptor instead.
 | 
			
		||||
func (*Sandbox_Runtime) Descriptor() ([]byte, []int) {
 | 
			
		||||
	return file_github_com_containerd_containerd_api_types_sandbox_proto_rawDescGZIP(), []int{0, 0}
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (x *Sandbox_Runtime) GetName() string {
 | 
			
		||||
	if x != nil {
 | 
			
		||||
		return x.Name
 | 
			
		||||
	}
 | 
			
		||||
	return ""
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (x *Sandbox_Runtime) GetOptions() *anypb.Any {
 | 
			
		||||
	if x != nil {
 | 
			
		||||
		return x.Options
 | 
			
		||||
	}
 | 
			
		||||
	return nil
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
var File_github_com_containerd_containerd_api_types_sandbox_proto protoreflect.FileDescriptor
 | 
			
		||||
 | 
			
		||||
var file_github_com_containerd_containerd_api_types_sandbox_proto_rawDesc = []byte{
 | 
			
		||||
	0x0a, 0x38, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x63, 0x6f, 0x6e,
 | 
			
		||||
	0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x64, 0x2f, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65,
 | 
			
		||||
	0x72, 0x64, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2f, 0x73, 0x61, 0x6e,
 | 
			
		||||
	0x64, 0x62, 0x6f, 0x78, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x10, 0x63, 0x6f, 0x6e, 0x74,
 | 
			
		||||
	0x61, 0x69, 0x6e, 0x65, 0x72, 0x64, 0x2e, 0x74, 0x79, 0x70, 0x65, 0x73, 0x1a, 0x19, 0x67, 0x6f,
 | 
			
		||||
	0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x61, 0x6e,
 | 
			
		||||
	0x79, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f,
 | 
			
		||||
	0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61,
 | 
			
		||||
	0x6d, 0x70, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xee, 0x04, 0x0a, 0x07, 0x53, 0x61, 0x6e,
 | 
			
		||||
	0x64, 0x62, 0x6f, 0x78, 0x12, 0x1d, 0x0a, 0x0a, 0x73, 0x61, 0x6e, 0x64, 0x62, 0x6f, 0x78, 0x5f,
 | 
			
		||||
	0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x73, 0x61, 0x6e, 0x64, 0x62, 0x6f,
 | 
			
		||||
	0x78, 0x49, 0x64, 0x12, 0x3b, 0x0a, 0x07, 0x72, 0x75, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x02,
 | 
			
		||||
	0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72,
 | 
			
		||||
	0x64, 0x2e, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x53, 0x61, 0x6e, 0x64, 0x62, 0x6f, 0x78, 0x2e,
 | 
			
		||||
	0x52, 0x75, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x52, 0x07, 0x72, 0x75, 0x6e, 0x74, 0x69, 0x6d, 0x65,
 | 
			
		||||
	0x12, 0x28, 0x0a, 0x04, 0x73, 0x70, 0x65, 0x63, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14,
 | 
			
		||||
	0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66,
 | 
			
		||||
	0x2e, 0x41, 0x6e, 0x79, 0x52, 0x04, 0x73, 0x70, 0x65, 0x63, 0x12, 0x3d, 0x0a, 0x06, 0x6c, 0x61,
 | 
			
		||||
	0x62, 0x65, 0x6c, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x63, 0x6f, 0x6e,
 | 
			
		||||
	0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x64, 0x2e, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x53, 0x61,
 | 
			
		||||
	0x6e, 0x64, 0x62, 0x6f, 0x78, 0x2e, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72,
 | 
			
		||||
	0x79, 0x52, 0x06, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x12, 0x39, 0x0a, 0x0a, 0x63, 0x72, 0x65,
 | 
			
		||||
	0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e,
 | 
			
		||||
	0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e,
 | 
			
		||||
	0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74,
 | 
			
		||||
	0x65, 0x64, 0x41, 0x74, 0x12, 0x39, 0x0a, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x5f,
 | 
			
		||||
	0x61, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
 | 
			
		||||
	0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73,
 | 
			
		||||
	0x74, 0x61, 0x6d, 0x70, 0x52, 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12,
 | 
			
		||||
	0x49, 0x0a, 0x0a, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x07, 0x20,
 | 
			
		||||
	0x03, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x64,
 | 
			
		||||
	0x2e, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x53, 0x61, 0x6e, 0x64, 0x62, 0x6f, 0x78, 0x2e, 0x45,
 | 
			
		||||
	0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x0a,
 | 
			
		||||
	0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x1a, 0x4d, 0x0a, 0x07, 0x52, 0x75,
 | 
			
		||||
	0x6e, 0x74, 0x69, 0x6d, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20,
 | 
			
		||||
	0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x2e, 0x0a, 0x07, 0x6f, 0x70, 0x74,
 | 
			
		||||
	0x69, 0x6f, 0x6e, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x67, 0x6f, 0x6f,
 | 
			
		||||
	0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x41, 0x6e, 0x79,
 | 
			
		||||
	0x52, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x1a, 0x39, 0x0a, 0x0b, 0x4c, 0x61, 0x62,
 | 
			
		||||
	0x65, 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18,
 | 
			
		||||
	0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61,
 | 
			
		||||
	0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65,
 | 
			
		||||
	0x3a, 0x02, 0x38, 0x01, 0x1a, 0x53, 0x0a, 0x0f, 0x45, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f,
 | 
			
		||||
	0x6e, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01,
 | 
			
		||||
	0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x2a, 0x0a, 0x05, 0x76, 0x61, 0x6c,
 | 
			
		||||
	0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
 | 
			
		||||
	0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x41, 0x6e, 0x79, 0x52, 0x05,
 | 
			
		||||
	0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x42, 0x32, 0x5a, 0x30, 0x67, 0x69, 0x74,
 | 
			
		||||
	0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65,
 | 
			
		||||
	0x72, 0x64, 0x2f, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x64, 0x2f, 0x61, 0x70,
 | 
			
		||||
	0x69, 0x2f, 0x74, 0x79, 0x70, 0x65, 0x73, 0x3b, 0x74, 0x79, 0x70, 0x65, 0x73, 0x62, 0x06, 0x70,
 | 
			
		||||
	0x72, 0x6f, 0x74, 0x6f, 0x33,
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
var (
 | 
			
		||||
	file_github_com_containerd_containerd_api_types_sandbox_proto_rawDescOnce sync.Once
 | 
			
		||||
	file_github_com_containerd_containerd_api_types_sandbox_proto_rawDescData = file_github_com_containerd_containerd_api_types_sandbox_proto_rawDesc
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
func file_github_com_containerd_containerd_api_types_sandbox_proto_rawDescGZIP() []byte {
 | 
			
		||||
	file_github_com_containerd_containerd_api_types_sandbox_proto_rawDescOnce.Do(func() {
 | 
			
		||||
		file_github_com_containerd_containerd_api_types_sandbox_proto_rawDescData = protoimpl.X.CompressGZIP(file_github_com_containerd_containerd_api_types_sandbox_proto_rawDescData)
 | 
			
		||||
	})
 | 
			
		||||
	return file_github_com_containerd_containerd_api_types_sandbox_proto_rawDescData
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
var file_github_com_containerd_containerd_api_types_sandbox_proto_msgTypes = make([]protoimpl.MessageInfo, 4)
 | 
			
		||||
var file_github_com_containerd_containerd_api_types_sandbox_proto_goTypes = []interface{}{
 | 
			
		||||
	(*Sandbox)(nil),               // 0: containerd.types.Sandbox
 | 
			
		||||
	(*Sandbox_Runtime)(nil),       // 1: containerd.types.Sandbox.Runtime
 | 
			
		||||
	nil,                           // 2: containerd.types.Sandbox.LabelsEntry
 | 
			
		||||
	nil,                           // 3: containerd.types.Sandbox.ExtensionsEntry
 | 
			
		||||
	(*anypb.Any)(nil),             // 4: google.protobuf.Any
 | 
			
		||||
	(*timestamppb.Timestamp)(nil), // 5: google.protobuf.Timestamp
 | 
			
		||||
}
 | 
			
		||||
var file_github_com_containerd_containerd_api_types_sandbox_proto_depIdxs = []int32{
 | 
			
		||||
	1, // 0: containerd.types.Sandbox.runtime:type_name -> containerd.types.Sandbox.Runtime
 | 
			
		||||
	4, // 1: containerd.types.Sandbox.spec:type_name -> google.protobuf.Any
 | 
			
		||||
	2, // 2: containerd.types.Sandbox.labels:type_name -> containerd.types.Sandbox.LabelsEntry
 | 
			
		||||
	5, // 3: containerd.types.Sandbox.created_at:type_name -> google.protobuf.Timestamp
 | 
			
		||||
	5, // 4: containerd.types.Sandbox.updated_at:type_name -> google.protobuf.Timestamp
 | 
			
		||||
	3, // 5: containerd.types.Sandbox.extensions:type_name -> containerd.types.Sandbox.ExtensionsEntry
 | 
			
		||||
	4, // 6: containerd.types.Sandbox.Runtime.options:type_name -> google.protobuf.Any
 | 
			
		||||
	4, // 7: containerd.types.Sandbox.ExtensionsEntry.value:type_name -> google.protobuf.Any
 | 
			
		||||
	8, // [8:8] is the sub-list for method output_type
 | 
			
		||||
	8, // [8:8] is the sub-list for method input_type
 | 
			
		||||
	8, // [8:8] is the sub-list for extension type_name
 | 
			
		||||
	8, // [8:8] is the sub-list for extension extendee
 | 
			
		||||
	0, // [0:8] is the sub-list for field type_name
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func init() { file_github_com_containerd_containerd_api_types_sandbox_proto_init() }
 | 
			
		||||
func file_github_com_containerd_containerd_api_types_sandbox_proto_init() {
 | 
			
		||||
	if File_github_com_containerd_containerd_api_types_sandbox_proto != nil {
 | 
			
		||||
		return
 | 
			
		||||
	}
 | 
			
		||||
	if !protoimpl.UnsafeEnabled {
 | 
			
		||||
		file_github_com_containerd_containerd_api_types_sandbox_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
 | 
			
		||||
			switch v := v.(*Sandbox); i {
 | 
			
		||||
			case 0:
 | 
			
		||||
				return &v.state
 | 
			
		||||
			case 1:
 | 
			
		||||
				return &v.sizeCache
 | 
			
		||||
			case 2:
 | 
			
		||||
				return &v.unknownFields
 | 
			
		||||
			default:
 | 
			
		||||
				return nil
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
		file_github_com_containerd_containerd_api_types_sandbox_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
 | 
			
		||||
			switch v := v.(*Sandbox_Runtime); i {
 | 
			
		||||
			case 0:
 | 
			
		||||
				return &v.state
 | 
			
		||||
			case 1:
 | 
			
		||||
				return &v.sizeCache
 | 
			
		||||
			case 2:
 | 
			
		||||
				return &v.unknownFields
 | 
			
		||||
			default:
 | 
			
		||||
				return nil
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
	type x struct{}
 | 
			
		||||
	out := protoimpl.TypeBuilder{
 | 
			
		||||
		File: protoimpl.DescBuilder{
 | 
			
		||||
			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
 | 
			
		||||
			RawDescriptor: file_github_com_containerd_containerd_api_types_sandbox_proto_rawDesc,
 | 
			
		||||
			NumEnums:      0,
 | 
			
		||||
			NumMessages:   4,
 | 
			
		||||
			NumExtensions: 0,
 | 
			
		||||
			NumServices:   0,
 | 
			
		||||
		},
 | 
			
		||||
		GoTypes:           file_github_com_containerd_containerd_api_types_sandbox_proto_goTypes,
 | 
			
		||||
		DependencyIndexes: file_github_com_containerd_containerd_api_types_sandbox_proto_depIdxs,
 | 
			
		||||
		MessageInfos:      file_github_com_containerd_containerd_api_types_sandbox_proto_msgTypes,
 | 
			
		||||
	}.Build()
 | 
			
		||||
	File_github_com_containerd_containerd_api_types_sandbox_proto = out.File
 | 
			
		||||
	file_github_com_containerd_containerd_api_types_sandbox_proto_rawDesc = nil
 | 
			
		||||
	file_github_com_containerd_containerd_api_types_sandbox_proto_goTypes = nil
 | 
			
		||||
	file_github_com_containerd_containerd_api_types_sandbox_proto_depIdxs = nil
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										51
									
								
								vendor/github.com/containerd/containerd/api/types/sandbox.proto
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										51
									
								
								vendor/github.com/containerd/containerd/api/types/sandbox.proto
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,51 @@
 | 
			
		||||
/*
 | 
			
		||||
	Copyright The containerd Authors.
 | 
			
		||||
 | 
			
		||||
	Licensed under the Apache License, Version 2.0 (the "License");
 | 
			
		||||
	you may not use this file except in compliance with the License.
 | 
			
		||||
	You may obtain a copy of the License at
 | 
			
		||||
 | 
			
		||||
		http://www.apache.org/licenses/LICENSE-2.0
 | 
			
		||||
 | 
			
		||||
	Unless required by applicable law or agreed to in writing, software
 | 
			
		||||
	distributed under the License is distributed on an "AS IS" BASIS,
 | 
			
		||||
	WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 | 
			
		||||
	See the License for the specific language governing permissions and
 | 
			
		||||
	limitations under the License.
 | 
			
		||||
*/
 | 
			
		||||
 | 
			
		||||
syntax = "proto3";
 | 
			
		||||
 | 
			
		||||
package containerd.types;
 | 
			
		||||
 | 
			
		||||
import "google/protobuf/any.proto";
 | 
			
		||||
import "google/protobuf/timestamp.proto";
 | 
			
		||||
 | 
			
		||||
option go_package = "github.com/containerd/containerd/api/types;types";
 | 
			
		||||
 | 
			
		||||
// Sandbox represents a sandbox metadata object that keeps all info required by controller to
 | 
			
		||||
// work with a particular instance.
 | 
			
		||||
message Sandbox {
 | 
			
		||||
	// SandboxID is a unique instance identifier within namespace
 | 
			
		||||
	string sandbox_id = 1;
 | 
			
		||||
	message Runtime {
 | 
			
		||||
		// Name is the name of the runtime.
 | 
			
		||||
		string name = 1;
 | 
			
		||||
		// Options specify additional runtime initialization options for the shim (this data will be available in StartShim).
 | 
			
		||||
		// Typically this data expected to be runtime shim implementation specific.
 | 
			
		||||
		google.protobuf.Any options = 2;
 | 
			
		||||
	}
 | 
			
		||||
	// Runtime specifies which runtime to use for executing this container.
 | 
			
		||||
	Runtime runtime = 2;
 | 
			
		||||
	// Spec is sandbox configuration (kin of OCI runtime spec), spec's data will be written to a config.json file in the
 | 
			
		||||
	// bundle directory (similary to OCI spec).
 | 
			
		||||
	google.protobuf.Any spec = 3;
 | 
			
		||||
	// Labels provides an area to include arbitrary data on containers.
 | 
			
		||||
	map<string, string> labels  = 4;
 | 
			
		||||
	// CreatedAt is the time the container was first created.
 | 
			
		||||
	google.protobuf.Timestamp created_at = 5;
 | 
			
		||||
	// UpdatedAt is the last time the container was mutated.
 | 
			
		||||
	google.protobuf.Timestamp updated_at = 6;
 | 
			
		||||
	// Extensions allow clients to provide optional blobs that can be handled by runtime.
 | 
			
		||||
	map<string, google.protobuf.Any> extensions = 7;
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										18
									
								
								vendor/github.com/containerd/containerd/api/types/task/doc.go
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										18
									
								
								vendor/github.com/containerd/containerd/api/types/task/doc.go
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,18 @@
 | 
			
		||||
/*
 | 
			
		||||
   Copyright The containerd Authors.
 | 
			
		||||
 | 
			
		||||
   Licensed under the Apache License, Version 2.0 (the "License");
 | 
			
		||||
   you may not use this file except in compliance with the License.
 | 
			
		||||
   You may obtain a copy of the License at
 | 
			
		||||
 | 
			
		||||
       http://www.apache.org/licenses/LICENSE-2.0
 | 
			
		||||
 | 
			
		||||
   Unless required by applicable law or agreed to in writing, software
 | 
			
		||||
   distributed under the License is distributed on an "AS IS" BASIS,
 | 
			
		||||
   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 | 
			
		||||
   See the License for the specific language governing permissions and
 | 
			
		||||
   limitations under the License.
 | 
			
		||||
*/
 | 
			
		||||
 | 
			
		||||
// Package task defines the task service.
 | 
			
		||||
package task
 | 
			
		||||
							
								
								
									
										406
									
								
								vendor/github.com/containerd/containerd/api/types/task/task.pb.go
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										406
									
								
								vendor/github.com/containerd/containerd/api/types/task/task.pb.go
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,406 @@
 | 
			
		||||
//
 | 
			
		||||
//Copyright The containerd Authors.
 | 
			
		||||
//
 | 
			
		||||
//Licensed under the Apache License, Version 2.0 (the "License");
 | 
			
		||||
//you may not use this file except in compliance with the License.
 | 
			
		||||
//You may obtain a copy of the License at
 | 
			
		||||
//
 | 
			
		||||
//http://www.apache.org/licenses/LICENSE-2.0
 | 
			
		||||
//
 | 
			
		||||
//Unless required by applicable law or agreed to in writing, software
 | 
			
		||||
//distributed under the License is distributed on an "AS IS" BASIS,
 | 
			
		||||
//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 | 
			
		||||
//See the License for the specific language governing permissions and
 | 
			
		||||
//limitations under the License.
 | 
			
		||||
 | 
			
		||||
// Code generated by protoc-gen-go. DO NOT EDIT.
 | 
			
		||||
// versions:
 | 
			
		||||
// 	protoc-gen-go v1.28.1
 | 
			
		||||
// 	protoc        v3.20.1
 | 
			
		||||
// source: github.com/containerd/containerd/api/types/task/task.proto
 | 
			
		||||
 | 
			
		||||
package task
 | 
			
		||||
 | 
			
		||||
import (
 | 
			
		||||
	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
 | 
			
		||||
	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
 | 
			
		||||
	anypb "google.golang.org/protobuf/types/known/anypb"
 | 
			
		||||
	timestamppb "google.golang.org/protobuf/types/known/timestamppb"
 | 
			
		||||
	reflect "reflect"
 | 
			
		||||
	sync "sync"
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
const (
 | 
			
		||||
	// Verify that this generated code is sufficiently up-to-date.
 | 
			
		||||
	_ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
 | 
			
		||||
	// Verify that runtime/protoimpl is sufficiently up-to-date.
 | 
			
		||||
	_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
type Status int32
 | 
			
		||||
 | 
			
		||||
const (
 | 
			
		||||
	Status_UNKNOWN Status = 0
 | 
			
		||||
	Status_CREATED Status = 1
 | 
			
		||||
	Status_RUNNING Status = 2
 | 
			
		||||
	Status_STOPPED Status = 3
 | 
			
		||||
	Status_PAUSED  Status = 4
 | 
			
		||||
	Status_PAUSING Status = 5
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
// Enum value maps for Status.
 | 
			
		||||
var (
 | 
			
		||||
	Status_name = map[int32]string{
 | 
			
		||||
		0: "UNKNOWN",
 | 
			
		||||
		1: "CREATED",
 | 
			
		||||
		2: "RUNNING",
 | 
			
		||||
		3: "STOPPED",
 | 
			
		||||
		4: "PAUSED",
 | 
			
		||||
		5: "PAUSING",
 | 
			
		||||
	}
 | 
			
		||||
	Status_value = map[string]int32{
 | 
			
		||||
		"UNKNOWN": 0,
 | 
			
		||||
		"CREATED": 1,
 | 
			
		||||
		"RUNNING": 2,
 | 
			
		||||
		"STOPPED": 3,
 | 
			
		||||
		"PAUSED":  4,
 | 
			
		||||
		"PAUSING": 5,
 | 
			
		||||
	}
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
func (x Status) Enum() *Status {
 | 
			
		||||
	p := new(Status)
 | 
			
		||||
	*p = x
 | 
			
		||||
	return p
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (x Status) String() string {
 | 
			
		||||
	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (Status) Descriptor() protoreflect.EnumDescriptor {
 | 
			
		||||
	return file_github_com_containerd_containerd_api_types_task_task_proto_enumTypes[0].Descriptor()
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (Status) Type() protoreflect.EnumType {
 | 
			
		||||
	return &file_github_com_containerd_containerd_api_types_task_task_proto_enumTypes[0]
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (x Status) Number() protoreflect.EnumNumber {
 | 
			
		||||
	return protoreflect.EnumNumber(x)
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// Deprecated: Use Status.Descriptor instead.
 | 
			
		||||
func (Status) EnumDescriptor() ([]byte, []int) {
 | 
			
		||||
	return file_github_com_containerd_containerd_api_types_task_task_proto_rawDescGZIP(), []int{0}
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
type Process struct {
 | 
			
		||||
	state         protoimpl.MessageState
 | 
			
		||||
	sizeCache     protoimpl.SizeCache
 | 
			
		||||
	unknownFields protoimpl.UnknownFields
 | 
			
		||||
 | 
			
		||||
	ContainerID string                 `protobuf:"bytes,1,opt,name=container_id,json=containerId,proto3" json:"container_id,omitempty"`
 | 
			
		||||
	ID          string                 `protobuf:"bytes,2,opt,name=id,proto3" json:"id,omitempty"`
 | 
			
		||||
	Pid         uint32                 `protobuf:"varint,3,opt,name=pid,proto3" json:"pid,omitempty"`
 | 
			
		||||
	Status      Status                 `protobuf:"varint,4,opt,name=status,proto3,enum=containerd.v1.types.Status" json:"status,omitempty"`
 | 
			
		||||
	Stdin       string                 `protobuf:"bytes,5,opt,name=stdin,proto3" json:"stdin,omitempty"`
 | 
			
		||||
	Stdout      string                 `protobuf:"bytes,6,opt,name=stdout,proto3" json:"stdout,omitempty"`
 | 
			
		||||
	Stderr      string                 `protobuf:"bytes,7,opt,name=stderr,proto3" json:"stderr,omitempty"`
 | 
			
		||||
	Terminal    bool                   `protobuf:"varint,8,opt,name=terminal,proto3" json:"terminal,omitempty"`
 | 
			
		||||
	ExitStatus  uint32                 `protobuf:"varint,9,opt,name=exit_status,json=exitStatus,proto3" json:"exit_status,omitempty"`
 | 
			
		||||
	ExitedAt    *timestamppb.Timestamp `protobuf:"bytes,10,opt,name=exited_at,json=exitedAt,proto3" json:"exited_at,omitempty"`
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (x *Process) Reset() {
 | 
			
		||||
	*x = Process{}
 | 
			
		||||
	if protoimpl.UnsafeEnabled {
 | 
			
		||||
		mi := &file_github_com_containerd_containerd_api_types_task_task_proto_msgTypes[0]
 | 
			
		||||
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
 | 
			
		||||
		ms.StoreMessageInfo(mi)
 | 
			
		||||
	}
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (x *Process) String() string {
 | 
			
		||||
	return protoimpl.X.MessageStringOf(x)
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (*Process) ProtoMessage() {}
 | 
			
		||||
 | 
			
		||||
func (x *Process) ProtoReflect() protoreflect.Message {
 | 
			
		||||
	mi := &file_github_com_containerd_containerd_api_types_task_task_proto_msgTypes[0]
 | 
			
		||||
	if protoimpl.UnsafeEnabled && x != nil {
 | 
			
		||||
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
 | 
			
		||||
		if ms.LoadMessageInfo() == nil {
 | 
			
		||||
			ms.StoreMessageInfo(mi)
 | 
			
		||||
		}
 | 
			
		||||
		return ms
 | 
			
		||||
	}
 | 
			
		||||
	return mi.MessageOf(x)
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// Deprecated: Use Process.ProtoReflect.Descriptor instead.
 | 
			
		||||
func (*Process) Descriptor() ([]byte, []int) {
 | 
			
		||||
	return file_github_com_containerd_containerd_api_types_task_task_proto_rawDescGZIP(), []int{0}
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (x *Process) GetContainerID() string {
 | 
			
		||||
	if x != nil {
 | 
			
		||||
		return x.ContainerID
 | 
			
		||||
	}
 | 
			
		||||
	return ""
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (x *Process) GetID() string {
 | 
			
		||||
	if x != nil {
 | 
			
		||||
		return x.ID
 | 
			
		||||
	}
 | 
			
		||||
	return ""
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (x *Process) GetPid() uint32 {
 | 
			
		||||
	if x != nil {
 | 
			
		||||
		return x.Pid
 | 
			
		||||
	}
 | 
			
		||||
	return 0
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (x *Process) GetStatus() Status {
 | 
			
		||||
	if x != nil {
 | 
			
		||||
		return x.Status
 | 
			
		||||
	}
 | 
			
		||||
	return Status_UNKNOWN
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (x *Process) GetStdin() string {
 | 
			
		||||
	if x != nil {
 | 
			
		||||
		return x.Stdin
 | 
			
		||||
	}
 | 
			
		||||
	return ""
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (x *Process) GetStdout() string {
 | 
			
		||||
	if x != nil {
 | 
			
		||||
		return x.Stdout
 | 
			
		||||
	}
 | 
			
		||||
	return ""
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (x *Process) GetStderr() string {
 | 
			
		||||
	if x != nil {
 | 
			
		||||
		return x.Stderr
 | 
			
		||||
	}
 | 
			
		||||
	return ""
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (x *Process) GetTerminal() bool {
 | 
			
		||||
	if x != nil {
 | 
			
		||||
		return x.Terminal
 | 
			
		||||
	}
 | 
			
		||||
	return false
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (x *Process) GetExitStatus() uint32 {
 | 
			
		||||
	if x != nil {
 | 
			
		||||
		return x.ExitStatus
 | 
			
		||||
	}
 | 
			
		||||
	return 0
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (x *Process) GetExitedAt() *timestamppb.Timestamp {
 | 
			
		||||
	if x != nil {
 | 
			
		||||
		return x.ExitedAt
 | 
			
		||||
	}
 | 
			
		||||
	return nil
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
type ProcessInfo struct {
 | 
			
		||||
	state         protoimpl.MessageState
 | 
			
		||||
	sizeCache     protoimpl.SizeCache
 | 
			
		||||
	unknownFields protoimpl.UnknownFields
 | 
			
		||||
 | 
			
		||||
	// PID is the process ID.
 | 
			
		||||
	Pid uint32 `protobuf:"varint,1,opt,name=pid,proto3" json:"pid,omitempty"`
 | 
			
		||||
	// Info contains additional process information.
 | 
			
		||||
	//
 | 
			
		||||
	// Info varies by platform.
 | 
			
		||||
	Info *anypb.Any `protobuf:"bytes,2,opt,name=info,proto3" json:"info,omitempty"`
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (x *ProcessInfo) Reset() {
 | 
			
		||||
	*x = ProcessInfo{}
 | 
			
		||||
	if protoimpl.UnsafeEnabled {
 | 
			
		||||
		mi := &file_github_com_containerd_containerd_api_types_task_task_proto_msgTypes[1]
 | 
			
		||||
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
 | 
			
		||||
		ms.StoreMessageInfo(mi)
 | 
			
		||||
	}
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (x *ProcessInfo) String() string {
 | 
			
		||||
	return protoimpl.X.MessageStringOf(x)
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (*ProcessInfo) ProtoMessage() {}
 | 
			
		||||
 | 
			
		||||
func (x *ProcessInfo) ProtoReflect() protoreflect.Message {
 | 
			
		||||
	mi := &file_github_com_containerd_containerd_api_types_task_task_proto_msgTypes[1]
 | 
			
		||||
	if protoimpl.UnsafeEnabled && x != nil {
 | 
			
		||||
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
 | 
			
		||||
		if ms.LoadMessageInfo() == nil {
 | 
			
		||||
			ms.StoreMessageInfo(mi)
 | 
			
		||||
		}
 | 
			
		||||
		return ms
 | 
			
		||||
	}
 | 
			
		||||
	return mi.MessageOf(x)
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// Deprecated: Use ProcessInfo.ProtoReflect.Descriptor instead.
 | 
			
		||||
func (*ProcessInfo) Descriptor() ([]byte, []int) {
 | 
			
		||||
	return file_github_com_containerd_containerd_api_types_task_task_proto_rawDescGZIP(), []int{1}
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (x *ProcessInfo) GetPid() uint32 {
 | 
			
		||||
	if x != nil {
 | 
			
		||||
		return x.Pid
 | 
			
		||||
	}
 | 
			
		||||
	return 0
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (x *ProcessInfo) GetInfo() *anypb.Any {
 | 
			
		||||
	if x != nil {
 | 
			
		||||
		return x.Info
 | 
			
		||||
	}
 | 
			
		||||
	return nil
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
var File_github_com_containerd_containerd_api_types_task_task_proto protoreflect.FileDescriptor
 | 
			
		||||
 | 
			
		||||
var file_github_com_containerd_containerd_api_types_task_task_proto_rawDesc = []byte{
 | 
			
		||||
	0x0a, 0x3a, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x63, 0x6f, 0x6e,
 | 
			
		||||
	0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x64, 0x2f, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65,
 | 
			
		||||
	0x72, 0x64, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2f, 0x74, 0x61, 0x73,
 | 
			
		||||
	0x6b, 0x2f, 0x74, 0x61, 0x73, 0x6b, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x13, 0x63, 0x6f,
 | 
			
		||||
	0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x64, 0x2e, 0x76, 0x31, 0x2e, 0x74, 0x79, 0x70, 0x65,
 | 
			
		||||
	0x73, 0x1a, 0x1f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62,
 | 
			
		||||
	0x75, 0x66, 0x2f, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x2e, 0x70, 0x72, 0x6f,
 | 
			
		||||
	0x74, 0x6f, 0x1a, 0x19, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f,
 | 
			
		||||
	0x62, 0x75, 0x66, 0x2f, 0x61, 0x6e, 0x79, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xbf, 0x02,
 | 
			
		||||
	0x0a, 0x07, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x12, 0x21, 0x0a, 0x0c, 0x63, 0x6f, 0x6e,
 | 
			
		||||
	0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52,
 | 
			
		||||
	0x0b, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x49, 0x64, 0x12, 0x0e, 0x0a, 0x02,
 | 
			
		||||
	0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x10, 0x0a, 0x03,
 | 
			
		||||
	0x70, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x03, 0x70, 0x69, 0x64, 0x12, 0x33,
 | 
			
		||||
	0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1b,
 | 
			
		||||
	0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x64, 0x2e, 0x76, 0x31, 0x2e, 0x74,
 | 
			
		||||
	0x79, 0x70, 0x65, 0x73, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x06, 0x73, 0x74, 0x61,
 | 
			
		||||
	0x74, 0x75, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x74, 0x64, 0x69, 0x6e, 0x18, 0x05, 0x20, 0x01,
 | 
			
		||||
	0x28, 0x09, 0x52, 0x05, 0x73, 0x74, 0x64, 0x69, 0x6e, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x64,
 | 
			
		||||
	0x6f, 0x75, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, 0x64, 0x6f, 0x75,
 | 
			
		||||
	0x74, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x64, 0x65, 0x72, 0x72, 0x18, 0x07, 0x20, 0x01, 0x28,
 | 
			
		||||
	0x09, 0x52, 0x06, 0x73, 0x74, 0x64, 0x65, 0x72, 0x72, 0x12, 0x1a, 0x0a, 0x08, 0x74, 0x65, 0x72,
 | 
			
		||||
	0x6d, 0x69, 0x6e, 0x61, 0x6c, 0x18, 0x08, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x74, 0x65, 0x72,
 | 
			
		||||
	0x6d, 0x69, 0x6e, 0x61, 0x6c, 0x12, 0x1f, 0x0a, 0x0b, 0x65, 0x78, 0x69, 0x74, 0x5f, 0x73, 0x74,
 | 
			
		||||
	0x61, 0x74, 0x75, 0x73, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x65, 0x78, 0x69, 0x74,
 | 
			
		||||
	0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x37, 0x0a, 0x09, 0x65, 0x78, 0x69, 0x74, 0x65, 0x64,
 | 
			
		||||
	0x5f, 0x61, 0x74, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
 | 
			
		||||
	0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65,
 | 
			
		||||
	0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x08, 0x65, 0x78, 0x69, 0x74, 0x65, 0x64, 0x41, 0x74, 0x22,
 | 
			
		||||
	0x49, 0x0a, 0x0b, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x10,
 | 
			
		||||
	0x0a, 0x03, 0x70, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x03, 0x70, 0x69, 0x64,
 | 
			
		||||
	0x12, 0x28, 0x0a, 0x04, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14,
 | 
			
		||||
	0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66,
 | 
			
		||||
	0x2e, 0x41, 0x6e, 0x79, 0x52, 0x04, 0x69, 0x6e, 0x66, 0x6f, 0x2a, 0x55, 0x0a, 0x06, 0x53, 0x74,
 | 
			
		||||
	0x61, 0x74, 0x75, 0x73, 0x12, 0x0b, 0x0a, 0x07, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x10,
 | 
			
		||||
	0x00, 0x12, 0x0b, 0x0a, 0x07, 0x43, 0x52, 0x45, 0x41, 0x54, 0x45, 0x44, 0x10, 0x01, 0x12, 0x0b,
 | 
			
		||||
	0x0a, 0x07, 0x52, 0x55, 0x4e, 0x4e, 0x49, 0x4e, 0x47, 0x10, 0x02, 0x12, 0x0b, 0x0a, 0x07, 0x53,
 | 
			
		||||
	0x54, 0x4f, 0x50, 0x50, 0x45, 0x44, 0x10, 0x03, 0x12, 0x0a, 0x0a, 0x06, 0x50, 0x41, 0x55, 0x53,
 | 
			
		||||
	0x45, 0x44, 0x10, 0x04, 0x12, 0x0b, 0x0a, 0x07, 0x50, 0x41, 0x55, 0x53, 0x49, 0x4e, 0x47, 0x10,
 | 
			
		||||
	0x05, 0x42, 0x31, 0x5a, 0x2f, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f,
 | 
			
		||||
	0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x64, 0x2f, 0x63, 0x6f, 0x6e, 0x74, 0x61,
 | 
			
		||||
	0x69, 0x6e, 0x65, 0x72, 0x64, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2f,
 | 
			
		||||
	0x74, 0x61, 0x73, 0x6b, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
var (
 | 
			
		||||
	file_github_com_containerd_containerd_api_types_task_task_proto_rawDescOnce sync.Once
 | 
			
		||||
	file_github_com_containerd_containerd_api_types_task_task_proto_rawDescData = file_github_com_containerd_containerd_api_types_task_task_proto_rawDesc
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
func file_github_com_containerd_containerd_api_types_task_task_proto_rawDescGZIP() []byte {
 | 
			
		||||
	file_github_com_containerd_containerd_api_types_task_task_proto_rawDescOnce.Do(func() {
 | 
			
		||||
		file_github_com_containerd_containerd_api_types_task_task_proto_rawDescData = protoimpl.X.CompressGZIP(file_github_com_containerd_containerd_api_types_task_task_proto_rawDescData)
 | 
			
		||||
	})
 | 
			
		||||
	return file_github_com_containerd_containerd_api_types_task_task_proto_rawDescData
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
var file_github_com_containerd_containerd_api_types_task_task_proto_enumTypes = make([]protoimpl.EnumInfo, 1)
 | 
			
		||||
var file_github_com_containerd_containerd_api_types_task_task_proto_msgTypes = make([]protoimpl.MessageInfo, 2)
 | 
			
		||||
var file_github_com_containerd_containerd_api_types_task_task_proto_goTypes = []interface{}{
 | 
			
		||||
	(Status)(0),                   // 0: containerd.v1.types.Status
 | 
			
		||||
	(*Process)(nil),               // 1: containerd.v1.types.Process
 | 
			
		||||
	(*ProcessInfo)(nil),           // 2: containerd.v1.types.ProcessInfo
 | 
			
		||||
	(*timestamppb.Timestamp)(nil), // 3: google.protobuf.Timestamp
 | 
			
		||||
	(*anypb.Any)(nil),             // 4: google.protobuf.Any
 | 
			
		||||
}
 | 
			
		||||
var file_github_com_containerd_containerd_api_types_task_task_proto_depIdxs = []int32{
 | 
			
		||||
	0, // 0: containerd.v1.types.Process.status:type_name -> containerd.v1.types.Status
 | 
			
		||||
	3, // 1: containerd.v1.types.Process.exited_at:type_name -> google.protobuf.Timestamp
 | 
			
		||||
	4, // 2: containerd.v1.types.ProcessInfo.info:type_name -> google.protobuf.Any
 | 
			
		||||
	3, // [3:3] is the sub-list for method output_type
 | 
			
		||||
	3, // [3:3] is the sub-list for method input_type
 | 
			
		||||
	3, // [3:3] is the sub-list for extension type_name
 | 
			
		||||
	3, // [3:3] is the sub-list for extension extendee
 | 
			
		||||
	0, // [0:3] is the sub-list for field type_name
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func init() { file_github_com_containerd_containerd_api_types_task_task_proto_init() }
 | 
			
		||||
func file_github_com_containerd_containerd_api_types_task_task_proto_init() {
 | 
			
		||||
	if File_github_com_containerd_containerd_api_types_task_task_proto != nil {
 | 
			
		||||
		return
 | 
			
		||||
	}
 | 
			
		||||
	if !protoimpl.UnsafeEnabled {
 | 
			
		||||
		file_github_com_containerd_containerd_api_types_task_task_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
 | 
			
		||||
			switch v := v.(*Process); i {
 | 
			
		||||
			case 0:
 | 
			
		||||
				return &v.state
 | 
			
		||||
			case 1:
 | 
			
		||||
				return &v.sizeCache
 | 
			
		||||
			case 2:
 | 
			
		||||
				return &v.unknownFields
 | 
			
		||||
			default:
 | 
			
		||||
				return nil
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
		file_github_com_containerd_containerd_api_types_task_task_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
 | 
			
		||||
			switch v := v.(*ProcessInfo); i {
 | 
			
		||||
			case 0:
 | 
			
		||||
				return &v.state
 | 
			
		||||
			case 1:
 | 
			
		||||
				return &v.sizeCache
 | 
			
		||||
			case 2:
 | 
			
		||||
				return &v.unknownFields
 | 
			
		||||
			default:
 | 
			
		||||
				return nil
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
	type x struct{}
 | 
			
		||||
	out := protoimpl.TypeBuilder{
 | 
			
		||||
		File: protoimpl.DescBuilder{
 | 
			
		||||
			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
 | 
			
		||||
			RawDescriptor: file_github_com_containerd_containerd_api_types_task_task_proto_rawDesc,
 | 
			
		||||
			NumEnums:      1,
 | 
			
		||||
			NumMessages:   2,
 | 
			
		||||
			NumExtensions: 0,
 | 
			
		||||
			NumServices:   0,
 | 
			
		||||
		},
 | 
			
		||||
		GoTypes:           file_github_com_containerd_containerd_api_types_task_task_proto_goTypes,
 | 
			
		||||
		DependencyIndexes: file_github_com_containerd_containerd_api_types_task_task_proto_depIdxs,
 | 
			
		||||
		EnumInfos:         file_github_com_containerd_containerd_api_types_task_task_proto_enumTypes,
 | 
			
		||||
		MessageInfos:      file_github_com_containerd_containerd_api_types_task_task_proto_msgTypes,
 | 
			
		||||
	}.Build()
 | 
			
		||||
	File_github_com_containerd_containerd_api_types_task_task_proto = out.File
 | 
			
		||||
	file_github_com_containerd_containerd_api_types_task_task_proto_rawDesc = nil
 | 
			
		||||
	file_github_com_containerd_containerd_api_types_task_task_proto_goTypes = nil
 | 
			
		||||
	file_github_com_containerd_containerd_api_types_task_task_proto_depIdxs = nil
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										55
									
								
								vendor/github.com/containerd/containerd/api/types/task/task.proto
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										55
									
								
								vendor/github.com/containerd/containerd/api/types/task/task.proto
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,55 @@
 | 
			
		||||
/*
 | 
			
		||||
	Copyright The containerd Authors.
 | 
			
		||||
 | 
			
		||||
	Licensed under the Apache License, Version 2.0 (the "License");
 | 
			
		||||
	you may not use this file except in compliance with the License.
 | 
			
		||||
	You may obtain a copy of the License at
 | 
			
		||||
 | 
			
		||||
		http://www.apache.org/licenses/LICENSE-2.0
 | 
			
		||||
 | 
			
		||||
	Unless required by applicable law or agreed to in writing, software
 | 
			
		||||
	distributed under the License is distributed on an "AS IS" BASIS,
 | 
			
		||||
	WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 | 
			
		||||
	See the License for the specific language governing permissions and
 | 
			
		||||
	limitations under the License.
 | 
			
		||||
*/
 | 
			
		||||
 | 
			
		||||
syntax = "proto3";
 | 
			
		||||
 | 
			
		||||
package containerd.v1.types;
 | 
			
		||||
 | 
			
		||||
import "google/protobuf/timestamp.proto";
 | 
			
		||||
import "google/protobuf/any.proto";
 | 
			
		||||
 | 
			
		||||
option go_package = "github.com/containerd/containerd/api/types/task";
 | 
			
		||||
 | 
			
		||||
enum Status {
 | 
			
		||||
	UNKNOWN = 0;
 | 
			
		||||
	CREATED = 1;
 | 
			
		||||
	RUNNING = 2;
 | 
			
		||||
	STOPPED = 3;
 | 
			
		||||
	PAUSED = 4;
 | 
			
		||||
	PAUSING = 5;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
message Process {
 | 
			
		||||
	string container_id = 1;
 | 
			
		||||
	string id = 2;
 | 
			
		||||
	uint32 pid = 3;
 | 
			
		||||
	Status status = 4;
 | 
			
		||||
	string stdin = 5;
 | 
			
		||||
	string stdout = 6;
 | 
			
		||||
	string stderr = 7;
 | 
			
		||||
	bool terminal = 8;
 | 
			
		||||
	uint32 exit_status = 9;
 | 
			
		||||
	google.protobuf.Timestamp exited_at = 10;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
message ProcessInfo {
 | 
			
		||||
	// PID is the process ID.
 | 
			
		||||
	uint32 pid = 1;
 | 
			
		||||
	// Info contains additional process information.
 | 
			
		||||
	//
 | 
			
		||||
	// Info varies by platform.
 | 
			
		||||
	google.protobuf.Any info = 2;
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										191
									
								
								vendor/github.com/containerd/errdefs/LICENSE
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										191
									
								
								vendor/github.com/containerd/errdefs/LICENSE
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,191 @@
 | 
			
		||||
 | 
			
		||||
                                 Apache License
 | 
			
		||||
                           Version 2.0, January 2004
 | 
			
		||||
                        https://www.apache.org/licenses/
 | 
			
		||||
 | 
			
		||||
   TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
 | 
			
		||||
 | 
			
		||||
   1. Definitions.
 | 
			
		||||
 | 
			
		||||
      "License" shall mean the terms and conditions for use, reproduction,
 | 
			
		||||
      and distribution as defined by Sections 1 through 9 of this document.
 | 
			
		||||
 | 
			
		||||
      "Licensor" shall mean the copyright owner or entity authorized by
 | 
			
		||||
      the copyright owner that is granting the License.
 | 
			
		||||
 | 
			
		||||
      "Legal Entity" shall mean the union of the acting entity and all
 | 
			
		||||
      other entities that control, are controlled by, or are under common
 | 
			
		||||
      control with that entity. For the purposes of this definition,
 | 
			
		||||
      "control" means (i) the power, direct or indirect, to cause the
 | 
			
		||||
      direction or management of such entity, whether by contract or
 | 
			
		||||
      otherwise, or (ii) ownership of fifty percent (50%) or more of the
 | 
			
		||||
      outstanding shares, or (iii) beneficial ownership of such entity.
 | 
			
		||||
 | 
			
		||||
      "You" (or "Your") shall mean an individual or Legal Entity
 | 
			
		||||
      exercising permissions granted by this License.
 | 
			
		||||
 | 
			
		||||
      "Source" form shall mean the preferred form for making modifications,
 | 
			
		||||
      including but not limited to software source code, documentation
 | 
			
		||||
      source, and configuration files.
 | 
			
		||||
 | 
			
		||||
      "Object" form shall mean any form resulting from mechanical
 | 
			
		||||
      transformation or translation of a Source form, including but
 | 
			
		||||
      not limited to compiled object code, generated documentation,
 | 
			
		||||
      and conversions to other media types.
 | 
			
		||||
 | 
			
		||||
      "Work" shall mean the work of authorship, whether in Source or
 | 
			
		||||
      Object form, made available under the License, as indicated by a
 | 
			
		||||
      copyright notice that is included in or attached to the work
 | 
			
		||||
      (an example is provided in the Appendix below).
 | 
			
		||||
 | 
			
		||||
      "Derivative Works" shall mean any work, whether in Source or Object
 | 
			
		||||
      form, that is based on (or derived from) the Work and for which the
 | 
			
		||||
      editorial revisions, annotations, elaborations, or other modifications
 | 
			
		||||
      represent, as a whole, an original work of authorship. For the purposes
 | 
			
		||||
      of this License, Derivative Works shall not include works that remain
 | 
			
		||||
      separable from, or merely link (or bind by name) to the interfaces of,
 | 
			
		||||
      the Work and Derivative Works thereof.
 | 
			
		||||
 | 
			
		||||
      "Contribution" shall mean any work of authorship, including
 | 
			
		||||
      the original version of the Work and any modifications or additions
 | 
			
		||||
      to that Work or Derivative Works thereof, that is intentionally
 | 
			
		||||
      submitted to Licensor for inclusion in the Work by the copyright owner
 | 
			
		||||
      or by an individual or Legal Entity authorized to submit on behalf of
 | 
			
		||||
      the copyright owner. For the purposes of this definition, "submitted"
 | 
			
		||||
      means any form of electronic, verbal, or written communication sent
 | 
			
		||||
      to the Licensor or its representatives, including but not limited to
 | 
			
		||||
      communication on electronic mailing lists, source code control systems,
 | 
			
		||||
      and issue tracking systems that are managed by, or on behalf of, the
 | 
			
		||||
      Licensor for the purpose of discussing and improving the Work, but
 | 
			
		||||
      excluding communication that is conspicuously marked or otherwise
 | 
			
		||||
      designated in writing by the copyright owner as "Not a Contribution."
 | 
			
		||||
 | 
			
		||||
      "Contributor" shall mean Licensor and any individual or Legal Entity
 | 
			
		||||
      on behalf of whom a Contribution has been received by Licensor and
 | 
			
		||||
      subsequently incorporated within the Work.
 | 
			
		||||
 | 
			
		||||
   2. Grant of Copyright License. Subject to the terms and conditions of
 | 
			
		||||
      this License, each Contributor hereby grants to You a perpetual,
 | 
			
		||||
      worldwide, non-exclusive, no-charge, royalty-free, irrevocable
 | 
			
		||||
      copyright license to reproduce, prepare Derivative Works of,
 | 
			
		||||
      publicly display, publicly perform, sublicense, and distribute the
 | 
			
		||||
      Work and such Derivative Works in Source or Object form.
 | 
			
		||||
 | 
			
		||||
   3. Grant of Patent License. Subject to the terms and conditions of
 | 
			
		||||
      this License, each Contributor hereby grants to You a perpetual,
 | 
			
		||||
      worldwide, non-exclusive, no-charge, royalty-free, irrevocable
 | 
			
		||||
      (except as stated in this section) patent license to make, have made,
 | 
			
		||||
      use, offer to sell, sell, import, and otherwise transfer the Work,
 | 
			
		||||
      where such license applies only to those patent claims licensable
 | 
			
		||||
      by such Contributor that are necessarily infringed by their
 | 
			
		||||
      Contribution(s) alone or by combination of their Contribution(s)
 | 
			
		||||
      with the Work to which such Contribution(s) was submitted. If You
 | 
			
		||||
      institute patent litigation against any entity (including a
 | 
			
		||||
      cross-claim or counterclaim in a lawsuit) alleging that the Work
 | 
			
		||||
      or a Contribution incorporated within the Work constitutes direct
 | 
			
		||||
      or contributory patent infringement, then any patent licenses
 | 
			
		||||
      granted to You under this License for that Work shall terminate
 | 
			
		||||
      as of the date such litigation is filed.
 | 
			
		||||
 | 
			
		||||
   4. Redistribution. You may reproduce and distribute copies of the
 | 
			
		||||
      Work or Derivative Works thereof in any medium, with or without
 | 
			
		||||
      modifications, and in Source or Object form, provided that You
 | 
			
		||||
      meet the following conditions:
 | 
			
		||||
 | 
			
		||||
      (a) You must give any other recipients of the Work or
 | 
			
		||||
          Derivative Works a copy of this License; and
 | 
			
		||||
 | 
			
		||||
      (b) You must cause any modified files to carry prominent notices
 | 
			
		||||
          stating that You changed the files; and
 | 
			
		||||
 | 
			
		||||
      (c) You must retain, in the Source form of any Derivative Works
 | 
			
		||||
          that You distribute, all copyright, patent, trademark, and
 | 
			
		||||
          attribution notices from the Source form of the Work,
 | 
			
		||||
          excluding those notices that do not pertain to any part of
 | 
			
		||||
          the Derivative Works; and
 | 
			
		||||
 | 
			
		||||
      (d) If the Work includes a "NOTICE" text file as part of its
 | 
			
		||||
          distribution, then any Derivative Works that You distribute must
 | 
			
		||||
          include a readable copy of the attribution notices contained
 | 
			
		||||
          within such NOTICE file, excluding those notices that do not
 | 
			
		||||
          pertain to any part of the Derivative Works, in at least one
 | 
			
		||||
          of the following places: within a NOTICE text file distributed
 | 
			
		||||
          as part of the Derivative Works; within the Source form or
 | 
			
		||||
          documentation, if provided along with the Derivative Works; or,
 | 
			
		||||
          within a display generated by the Derivative Works, if and
 | 
			
		||||
          wherever such third-party notices normally appear. The contents
 | 
			
		||||
          of the NOTICE file are for informational purposes only and
 | 
			
		||||
          do not modify the License. You may add Your own attribution
 | 
			
		||||
          notices within Derivative Works that You distribute, alongside
 | 
			
		||||
          or as an addendum to the NOTICE text from the Work, provided
 | 
			
		||||
          that such additional attribution notices cannot be construed
 | 
			
		||||
          as modifying the License.
 | 
			
		||||
 | 
			
		||||
      You may add Your own copyright statement to Your modifications and
 | 
			
		||||
      may provide additional or different license terms and conditions
 | 
			
		||||
      for use, reproduction, or distribution of Your modifications, or
 | 
			
		||||
      for any such Derivative Works as a whole, provided Your use,
 | 
			
		||||
      reproduction, and distribution of the Work otherwise complies with
 | 
			
		||||
      the conditions stated in this License.
 | 
			
		||||
 | 
			
		||||
   5. Submission of Contributions. Unless You explicitly state otherwise,
 | 
			
		||||
      any Contribution intentionally submitted for inclusion in the Work
 | 
			
		||||
      by You to the Licensor shall be under the terms and conditions of
 | 
			
		||||
      this License, without any additional terms or conditions.
 | 
			
		||||
      Notwithstanding the above, nothing herein shall supersede or modify
 | 
			
		||||
      the terms of any separate license agreement you may have executed
 | 
			
		||||
      with Licensor regarding such Contributions.
 | 
			
		||||
 | 
			
		||||
   6. Trademarks. This License does not grant permission to use the trade
 | 
			
		||||
      names, trademarks, service marks, or product names of the Licensor,
 | 
			
		||||
      except as required for reasonable and customary use in describing the
 | 
			
		||||
      origin of the Work and reproducing the content of the NOTICE file.
 | 
			
		||||
 | 
			
		||||
   7. Disclaimer of Warranty. Unless required by applicable law or
 | 
			
		||||
      agreed to in writing, Licensor provides the Work (and each
 | 
			
		||||
      Contributor provides its Contributions) on an "AS IS" BASIS,
 | 
			
		||||
      WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
 | 
			
		||||
      implied, including, without limitation, any warranties or conditions
 | 
			
		||||
      of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
 | 
			
		||||
      PARTICULAR PURPOSE. You are solely responsible for determining the
 | 
			
		||||
      appropriateness of using or redistributing the Work and assume any
 | 
			
		||||
      risks associated with Your exercise of permissions under this License.
 | 
			
		||||
 | 
			
		||||
   8. Limitation of Liability. In no event and under no legal theory,
 | 
			
		||||
      whether in tort (including negligence), contract, or otherwise,
 | 
			
		||||
      unless required by applicable law (such as deliberate and grossly
 | 
			
		||||
      negligent acts) or agreed to in writing, shall any Contributor be
 | 
			
		||||
      liable to You for damages, including any direct, indirect, special,
 | 
			
		||||
      incidental, or consequential damages of any character arising as a
 | 
			
		||||
      result of this License or out of the use or inability to use the
 | 
			
		||||
      Work (including but not limited to damages for loss of goodwill,
 | 
			
		||||
      work stoppage, computer failure or malfunction, or any and all
 | 
			
		||||
      other commercial damages or losses), even if such Contributor
 | 
			
		||||
      has been advised of the possibility of such damages.
 | 
			
		||||
 | 
			
		||||
   9. Accepting Warranty or Additional Liability. While redistributing
 | 
			
		||||
      the Work or Derivative Works thereof, You may choose to offer,
 | 
			
		||||
      and charge a fee for, acceptance of support, warranty, indemnity,
 | 
			
		||||
      or other liability obligations and/or rights consistent with this
 | 
			
		||||
      License. However, in accepting such obligations, You may act only
 | 
			
		||||
      on Your own behalf and on Your sole responsibility, not on behalf
 | 
			
		||||
      of any other Contributor, and only if You agree to indemnify,
 | 
			
		||||
      defend, and hold each Contributor harmless for any liability
 | 
			
		||||
      incurred by, or claims asserted against, such Contributor by reason
 | 
			
		||||
      of your accepting any such warranty or additional liability.
 | 
			
		||||
 | 
			
		||||
   END OF TERMS AND CONDITIONS
 | 
			
		||||
 | 
			
		||||
   Copyright The containerd Authors
 | 
			
		||||
 | 
			
		||||
   Licensed under the Apache License, Version 2.0 (the "License");
 | 
			
		||||
   you may not use this file except in compliance with the License.
 | 
			
		||||
   You may obtain a copy of the License at
 | 
			
		||||
 | 
			
		||||
       https://www.apache.org/licenses/LICENSE-2.0
 | 
			
		||||
 | 
			
		||||
   Unless required by applicable law or agreed to in writing, software
 | 
			
		||||
   distributed under the License is distributed on an "AS IS" BASIS,
 | 
			
		||||
   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 | 
			
		||||
   See the License for the specific language governing permissions and
 | 
			
		||||
   limitations under the License.
 | 
			
		||||
							
								
								
									
										13
									
								
								vendor/github.com/containerd/errdefs/README.md
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										13
									
								
								vendor/github.com/containerd/errdefs/README.md
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,13 @@
 | 
			
		||||
# errdefs
 | 
			
		||||
 | 
			
		||||
A Go package for defining and checking common containerd errors.
 | 
			
		||||
 | 
			
		||||
## Project details
 | 
			
		||||
 | 
			
		||||
**errdefs** is a containerd sub-project, licensed under the [Apache 2.0 license](./LICENSE).
 | 
			
		||||
As a containerd sub-project, you will find the:
 | 
			
		||||
 * [Project governance](https://github.com/containerd/project/blob/main/GOVERNANCE.md),
 | 
			
		||||
 * [Maintainers](https://github.com/containerd/project/blob/main/MAINTAINERS),
 | 
			
		||||
 * and [Contributing guidelines](https://github.com/containerd/project/blob/main/CONTRIBUTING.md)
 | 
			
		||||
 | 
			
		||||
information in our [`containerd/project`](https://github.com/containerd/project) repository.
 | 
			
		||||
							
								
								
									
										92
									
								
								vendor/github.com/containerd/errdefs/errors.go
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										92
									
								
								vendor/github.com/containerd/errdefs/errors.go
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,92 @@
 | 
			
		||||
/*
 | 
			
		||||
   Copyright The containerd Authors.
 | 
			
		||||
 | 
			
		||||
   Licensed under the Apache License, Version 2.0 (the "License");
 | 
			
		||||
   you may not use this file except in compliance with the License.
 | 
			
		||||
   You may obtain a copy of the License at
 | 
			
		||||
 | 
			
		||||
       http://www.apache.org/licenses/LICENSE-2.0
 | 
			
		||||
 | 
			
		||||
   Unless required by applicable law or agreed to in writing, software
 | 
			
		||||
   distributed under the License is distributed on an "AS IS" BASIS,
 | 
			
		||||
   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 | 
			
		||||
   See the License for the specific language governing permissions and
 | 
			
		||||
   limitations under the License.
 | 
			
		||||
*/
 | 
			
		||||
 | 
			
		||||
// Package errdefs defines the common errors used throughout containerd
 | 
			
		||||
// packages.
 | 
			
		||||
//
 | 
			
		||||
// Use with fmt.Errorf to add context to an error.
 | 
			
		||||
//
 | 
			
		||||
// To detect an error class, use the IsXXX functions to tell whether an error
 | 
			
		||||
// is of a certain type.
 | 
			
		||||
//
 | 
			
		||||
// The functions ToGRPC and FromGRPC can be used to map server-side and
 | 
			
		||||
// client-side errors to the correct types.
 | 
			
		||||
package errdefs
 | 
			
		||||
 | 
			
		||||
import (
 | 
			
		||||
	"context"
 | 
			
		||||
	"errors"
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
// Definitions of common error types used throughout containerd. All containerd
 | 
			
		||||
// errors returned by most packages will map into one of these errors classes.
 | 
			
		||||
// Packages should return errors of these types when they want to instruct a
 | 
			
		||||
// client to take a particular action.
 | 
			
		||||
//
 | 
			
		||||
// For the most part, we just try to provide local grpc errors. Most conditions
 | 
			
		||||
// map very well to those defined by grpc.
 | 
			
		||||
var (
 | 
			
		||||
	ErrUnknown            = errors.New("unknown") // used internally to represent a missed mapping.
 | 
			
		||||
	ErrInvalidArgument    = errors.New("invalid argument")
 | 
			
		||||
	ErrNotFound           = errors.New("not found")
 | 
			
		||||
	ErrAlreadyExists      = errors.New("already exists")
 | 
			
		||||
	ErrFailedPrecondition = errors.New("failed precondition")
 | 
			
		||||
	ErrUnavailable        = errors.New("unavailable")
 | 
			
		||||
	ErrNotImplemented     = errors.New("not implemented") // represents not supported and unimplemented
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
// IsInvalidArgument returns true if the error is due to an invalid argument
 | 
			
		||||
func IsInvalidArgument(err error) bool {
 | 
			
		||||
	return errors.Is(err, ErrInvalidArgument)
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// IsNotFound returns true if the error is due to a missing object
 | 
			
		||||
func IsNotFound(err error) bool {
 | 
			
		||||
	return errors.Is(err, ErrNotFound)
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// IsAlreadyExists returns true if the error is due to an already existing
 | 
			
		||||
// metadata item
 | 
			
		||||
func IsAlreadyExists(err error) bool {
 | 
			
		||||
	return errors.Is(err, ErrAlreadyExists)
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// IsFailedPrecondition returns true if an operation could not proceed to the
 | 
			
		||||
// lack of a particular condition
 | 
			
		||||
func IsFailedPrecondition(err error) bool {
 | 
			
		||||
	return errors.Is(err, ErrFailedPrecondition)
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// IsUnavailable returns true if the error is due to a resource being unavailable
 | 
			
		||||
func IsUnavailable(err error) bool {
 | 
			
		||||
	return errors.Is(err, ErrUnavailable)
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// IsNotImplemented returns true if the error is due to not being implemented
 | 
			
		||||
func IsNotImplemented(err error) bool {
 | 
			
		||||
	return errors.Is(err, ErrNotImplemented)
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// IsCanceled returns true if the error is due to `context.Canceled`.
 | 
			
		||||
func IsCanceled(err error) bool {
 | 
			
		||||
	return errors.Is(err, context.Canceled)
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// IsDeadlineExceeded returns true if the error is due to
 | 
			
		||||
// `context.DeadlineExceeded`.
 | 
			
		||||
func IsDeadlineExceeded(err error) bool {
 | 
			
		||||
	return errors.Is(err, context.DeadlineExceeded)
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										147
									
								
								vendor/github.com/containerd/errdefs/grpc.go
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										147
									
								
								vendor/github.com/containerd/errdefs/grpc.go
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,147 @@
 | 
			
		||||
/*
 | 
			
		||||
   Copyright The containerd Authors.
 | 
			
		||||
 | 
			
		||||
   Licensed under the Apache License, Version 2.0 (the "License");
 | 
			
		||||
   you may not use this file except in compliance with the License.
 | 
			
		||||
   You may obtain a copy of the License at
 | 
			
		||||
 | 
			
		||||
       http://www.apache.org/licenses/LICENSE-2.0
 | 
			
		||||
 | 
			
		||||
   Unless required by applicable law or agreed to in writing, software
 | 
			
		||||
   distributed under the License is distributed on an "AS IS" BASIS,
 | 
			
		||||
   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 | 
			
		||||
   See the License for the specific language governing permissions and
 | 
			
		||||
   limitations under the License.
 | 
			
		||||
*/
 | 
			
		||||
 | 
			
		||||
package errdefs
 | 
			
		||||
 | 
			
		||||
import (
 | 
			
		||||
	"context"
 | 
			
		||||
	"fmt"
 | 
			
		||||
	"strings"
 | 
			
		||||
 | 
			
		||||
	"google.golang.org/grpc/codes"
 | 
			
		||||
	"google.golang.org/grpc/status"
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
// ToGRPC will attempt to map the backend containerd error into a grpc error,
 | 
			
		||||
// using the original error message as a description.
 | 
			
		||||
//
 | 
			
		||||
// Further information may be extracted from certain errors depending on their
 | 
			
		||||
// type.
 | 
			
		||||
//
 | 
			
		||||
// If the error is unmapped, the original error will be returned to be handled
 | 
			
		||||
// by the regular grpc error handling stack.
 | 
			
		||||
func ToGRPC(err error) error {
 | 
			
		||||
	if err == nil {
 | 
			
		||||
		return nil
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	if isGRPCError(err) {
 | 
			
		||||
		// error has already been mapped to grpc
 | 
			
		||||
		return err
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	switch {
 | 
			
		||||
	case IsInvalidArgument(err):
 | 
			
		||||
		return status.Errorf(codes.InvalidArgument, err.Error())
 | 
			
		||||
	case IsNotFound(err):
 | 
			
		||||
		return status.Errorf(codes.NotFound, err.Error())
 | 
			
		||||
	case IsAlreadyExists(err):
 | 
			
		||||
		return status.Errorf(codes.AlreadyExists, err.Error())
 | 
			
		||||
	case IsFailedPrecondition(err):
 | 
			
		||||
		return status.Errorf(codes.FailedPrecondition, err.Error())
 | 
			
		||||
	case IsUnavailable(err):
 | 
			
		||||
		return status.Errorf(codes.Unavailable, err.Error())
 | 
			
		||||
	case IsNotImplemented(err):
 | 
			
		||||
		return status.Errorf(codes.Unimplemented, err.Error())
 | 
			
		||||
	case IsCanceled(err):
 | 
			
		||||
		return status.Errorf(codes.Canceled, err.Error())
 | 
			
		||||
	case IsDeadlineExceeded(err):
 | 
			
		||||
		return status.Errorf(codes.DeadlineExceeded, err.Error())
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	return err
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// ToGRPCf maps the error to grpc error codes, assembling the formatting string
 | 
			
		||||
// and combining it with the target error string.
 | 
			
		||||
//
 | 
			
		||||
// This is equivalent to errdefs.ToGRPC(fmt.Errorf("%s: %w", fmt.Sprintf(format, args...), err))
 | 
			
		||||
func ToGRPCf(err error, format string, args ...interface{}) error {
 | 
			
		||||
	return ToGRPC(fmt.Errorf("%s: %w", fmt.Sprintf(format, args...), err))
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// FromGRPC returns the underlying error from a grpc service based on the grpc error code
 | 
			
		||||
func FromGRPC(err error) error {
 | 
			
		||||
	if err == nil {
 | 
			
		||||
		return nil
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	var cls error // divide these into error classes, becomes the cause
 | 
			
		||||
 | 
			
		||||
	switch code(err) {
 | 
			
		||||
	case codes.InvalidArgument:
 | 
			
		||||
		cls = ErrInvalidArgument
 | 
			
		||||
	case codes.AlreadyExists:
 | 
			
		||||
		cls = ErrAlreadyExists
 | 
			
		||||
	case codes.NotFound:
 | 
			
		||||
		cls = ErrNotFound
 | 
			
		||||
	case codes.Unavailable:
 | 
			
		||||
		cls = ErrUnavailable
 | 
			
		||||
	case codes.FailedPrecondition:
 | 
			
		||||
		cls = ErrFailedPrecondition
 | 
			
		||||
	case codes.Unimplemented:
 | 
			
		||||
		cls = ErrNotImplemented
 | 
			
		||||
	case codes.Canceled:
 | 
			
		||||
		cls = context.Canceled
 | 
			
		||||
	case codes.DeadlineExceeded:
 | 
			
		||||
		cls = context.DeadlineExceeded
 | 
			
		||||
	default:
 | 
			
		||||
		cls = ErrUnknown
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	msg := rebaseMessage(cls, err)
 | 
			
		||||
	if msg != "" {
 | 
			
		||||
		err = fmt.Errorf("%s: %w", msg, cls)
 | 
			
		||||
	} else {
 | 
			
		||||
		err = cls
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	return err
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// rebaseMessage removes the repeats for an error at the end of an error
 | 
			
		||||
// string. This will happen when taking an error over grpc then remapping it.
 | 
			
		||||
//
 | 
			
		||||
// Effectively, we just remove the string of cls from the end of err if it
 | 
			
		||||
// appears there.
 | 
			
		||||
func rebaseMessage(cls error, err error) string {
 | 
			
		||||
	desc := errDesc(err)
 | 
			
		||||
	clss := cls.Error()
 | 
			
		||||
	if desc == clss {
 | 
			
		||||
		return ""
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	return strings.TrimSuffix(desc, ": "+clss)
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func isGRPCError(err error) bool {
 | 
			
		||||
	_, ok := status.FromError(err)
 | 
			
		||||
	return ok
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func code(err error) codes.Code {
 | 
			
		||||
	if s, ok := status.FromError(err); ok {
 | 
			
		||||
		return s.Code()
 | 
			
		||||
	}
 | 
			
		||||
	return codes.Unknown
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func errDesc(err error) string {
 | 
			
		||||
	if s, ok := status.FromError(err); ok {
 | 
			
		||||
		return s.Message()
 | 
			
		||||
	}
 | 
			
		||||
	return err.Error()
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										30
									
								
								vendor/github.com/containerd/log/.golangci.yml
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										30
									
								
								vendor/github.com/containerd/log/.golangci.yml
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,30 @@
 | 
			
		||||
linters:
 | 
			
		||||
  enable:
 | 
			
		||||
    - exportloopref # Checks for pointers to enclosing loop variables
 | 
			
		||||
    - gofmt
 | 
			
		||||
    - goimports
 | 
			
		||||
    - gosec
 | 
			
		||||
    - ineffassign
 | 
			
		||||
    - misspell
 | 
			
		||||
    - nolintlint
 | 
			
		||||
    - revive
 | 
			
		||||
    - staticcheck
 | 
			
		||||
    - tenv # Detects using os.Setenv instead of t.Setenv since Go 1.17
 | 
			
		||||
    - unconvert
 | 
			
		||||
    - unused
 | 
			
		||||
    - vet
 | 
			
		||||
    - dupword # Checks for duplicate words in the source code
 | 
			
		||||
  disable:
 | 
			
		||||
    - errcheck
 | 
			
		||||
 | 
			
		||||
run:
 | 
			
		||||
  timeout: 5m
 | 
			
		||||
  skip-dirs:
 | 
			
		||||
    - api
 | 
			
		||||
    - cluster
 | 
			
		||||
    - design
 | 
			
		||||
    - docs
 | 
			
		||||
    - docs/man
 | 
			
		||||
    - releases
 | 
			
		||||
    - reports
 | 
			
		||||
    - test # e2e scripts
 | 
			
		||||
							
								
								
									
										191
									
								
								vendor/github.com/containerd/log/LICENSE
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										191
									
								
								vendor/github.com/containerd/log/LICENSE
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,191 @@
 | 
			
		||||
 | 
			
		||||
                                 Apache License
 | 
			
		||||
                           Version 2.0, January 2004
 | 
			
		||||
                        https://www.apache.org/licenses/
 | 
			
		||||
 | 
			
		||||
   TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
 | 
			
		||||
 | 
			
		||||
   1. Definitions.
 | 
			
		||||
 | 
			
		||||
      "License" shall mean the terms and conditions for use, reproduction,
 | 
			
		||||
      and distribution as defined by Sections 1 through 9 of this document.
 | 
			
		||||
 | 
			
		||||
      "Licensor" shall mean the copyright owner or entity authorized by
 | 
			
		||||
      the copyright owner that is granting the License.
 | 
			
		||||
 | 
			
		||||
      "Legal Entity" shall mean the union of the acting entity and all
 | 
			
		||||
      other entities that control, are controlled by, or are under common
 | 
			
		||||
      control with that entity. For the purposes of this definition,
 | 
			
		||||
      "control" means (i) the power, direct or indirect, to cause the
 | 
			
		||||
      direction or management of such entity, whether by contract or
 | 
			
		||||
      otherwise, or (ii) ownership of fifty percent (50%) or more of the
 | 
			
		||||
      outstanding shares, or (iii) beneficial ownership of such entity.
 | 
			
		||||
 | 
			
		||||
      "You" (or "Your") shall mean an individual or Legal Entity
 | 
			
		||||
      exercising permissions granted by this License.
 | 
			
		||||
 | 
			
		||||
      "Source" form shall mean the preferred form for making modifications,
 | 
			
		||||
      including but not limited to software source code, documentation
 | 
			
		||||
      source, and configuration files.
 | 
			
		||||
 | 
			
		||||
      "Object" form shall mean any form resulting from mechanical
 | 
			
		||||
      transformation or translation of a Source form, including but
 | 
			
		||||
      not limited to compiled object code, generated documentation,
 | 
			
		||||
      and conversions to other media types.
 | 
			
		||||
 | 
			
		||||
      "Work" shall mean the work of authorship, whether in Source or
 | 
			
		||||
      Object form, made available under the License, as indicated by a
 | 
			
		||||
      copyright notice that is included in or attached to the work
 | 
			
		||||
      (an example is provided in the Appendix below).
 | 
			
		||||
 | 
			
		||||
      "Derivative Works" shall mean any work, whether in Source or Object
 | 
			
		||||
      form, that is based on (or derived from) the Work and for which the
 | 
			
		||||
      editorial revisions, annotations, elaborations, or other modifications
 | 
			
		||||
      represent, as a whole, an original work of authorship. For the purposes
 | 
			
		||||
      of this License, Derivative Works shall not include works that remain
 | 
			
		||||
      separable from, or merely link (or bind by name) to the interfaces of,
 | 
			
		||||
      the Work and Derivative Works thereof.
 | 
			
		||||
 | 
			
		||||
      "Contribution" shall mean any work of authorship, including
 | 
			
		||||
      the original version of the Work and any modifications or additions
 | 
			
		||||
      to that Work or Derivative Works thereof, that is intentionally
 | 
			
		||||
      submitted to Licensor for inclusion in the Work by the copyright owner
 | 
			
		||||
      or by an individual or Legal Entity authorized to submit on behalf of
 | 
			
		||||
      the copyright owner. For the purposes of this definition, "submitted"
 | 
			
		||||
      means any form of electronic, verbal, or written communication sent
 | 
			
		||||
      to the Licensor or its representatives, including but not limited to
 | 
			
		||||
      communication on electronic mailing lists, source code control systems,
 | 
			
		||||
      and issue tracking systems that are managed by, or on behalf of, the
 | 
			
		||||
      Licensor for the purpose of discussing and improving the Work, but
 | 
			
		||||
      excluding communication that is conspicuously marked or otherwise
 | 
			
		||||
      designated in writing by the copyright owner as "Not a Contribution."
 | 
			
		||||
 | 
			
		||||
      "Contributor" shall mean Licensor and any individual or Legal Entity
 | 
			
		||||
      on behalf of whom a Contribution has been received by Licensor and
 | 
			
		||||
      subsequently incorporated within the Work.
 | 
			
		||||
 | 
			
		||||
   2. Grant of Copyright License. Subject to the terms and conditions of
 | 
			
		||||
      this License, each Contributor hereby grants to You a perpetual,
 | 
			
		||||
      worldwide, non-exclusive, no-charge, royalty-free, irrevocable
 | 
			
		||||
      copyright license to reproduce, prepare Derivative Works of,
 | 
			
		||||
      publicly display, publicly perform, sublicense, and distribute the
 | 
			
		||||
      Work and such Derivative Works in Source or Object form.
 | 
			
		||||
 | 
			
		||||
   3. Grant of Patent License. Subject to the terms and conditions of
 | 
			
		||||
      this License, each Contributor hereby grants to You a perpetual,
 | 
			
		||||
      worldwide, non-exclusive, no-charge, royalty-free, irrevocable
 | 
			
		||||
      (except as stated in this section) patent license to make, have made,
 | 
			
		||||
      use, offer to sell, sell, import, and otherwise transfer the Work,
 | 
			
		||||
      where such license applies only to those patent claims licensable
 | 
			
		||||
      by such Contributor that are necessarily infringed by their
 | 
			
		||||
      Contribution(s) alone or by combination of their Contribution(s)
 | 
			
		||||
      with the Work to which such Contribution(s) was submitted. If You
 | 
			
		||||
      institute patent litigation against any entity (including a
 | 
			
		||||
      cross-claim or counterclaim in a lawsuit) alleging that the Work
 | 
			
		||||
      or a Contribution incorporated within the Work constitutes direct
 | 
			
		||||
      or contributory patent infringement, then any patent licenses
 | 
			
		||||
      granted to You under this License for that Work shall terminate
 | 
			
		||||
      as of the date such litigation is filed.
 | 
			
		||||
 | 
			
		||||
   4. Redistribution. You may reproduce and distribute copies of the
 | 
			
		||||
      Work or Derivative Works thereof in any medium, with or without
 | 
			
		||||
      modifications, and in Source or Object form, provided that You
 | 
			
		||||
      meet the following conditions:
 | 
			
		||||
 | 
			
		||||
      (a) You must give any other recipients of the Work or
 | 
			
		||||
          Derivative Works a copy of this License; and
 | 
			
		||||
 | 
			
		||||
      (b) You must cause any modified files to carry prominent notices
 | 
			
		||||
          stating that You changed the files; and
 | 
			
		||||
 | 
			
		||||
      (c) You must retain, in the Source form of any Derivative Works
 | 
			
		||||
          that You distribute, all copyright, patent, trademark, and
 | 
			
		||||
          attribution notices from the Source form of the Work,
 | 
			
		||||
          excluding those notices that do not pertain to any part of
 | 
			
		||||
          the Derivative Works; and
 | 
			
		||||
 | 
			
		||||
      (d) If the Work includes a "NOTICE" text file as part of its
 | 
			
		||||
          distribution, then any Derivative Works that You distribute must
 | 
			
		||||
          include a readable copy of the attribution notices contained
 | 
			
		||||
          within such NOTICE file, excluding those notices that do not
 | 
			
		||||
          pertain to any part of the Derivative Works, in at least one
 | 
			
		||||
          of the following places: within a NOTICE text file distributed
 | 
			
		||||
          as part of the Derivative Works; within the Source form or
 | 
			
		||||
          documentation, if provided along with the Derivative Works; or,
 | 
			
		||||
          within a display generated by the Derivative Works, if and
 | 
			
		||||
          wherever such third-party notices normally appear. The contents
 | 
			
		||||
          of the NOTICE file are for informational purposes only and
 | 
			
		||||
          do not modify the License. You may add Your own attribution
 | 
			
		||||
          notices within Derivative Works that You distribute, alongside
 | 
			
		||||
          or as an addendum to the NOTICE text from the Work, provided
 | 
			
		||||
          that such additional attribution notices cannot be construed
 | 
			
		||||
          as modifying the License.
 | 
			
		||||
 | 
			
		||||
      You may add Your own copyright statement to Your modifications and
 | 
			
		||||
      may provide additional or different license terms and conditions
 | 
			
		||||
      for use, reproduction, or distribution of Your modifications, or
 | 
			
		||||
      for any such Derivative Works as a whole, provided Your use,
 | 
			
		||||
      reproduction, and distribution of the Work otherwise complies with
 | 
			
		||||
      the conditions stated in this License.
 | 
			
		||||
 | 
			
		||||
   5. Submission of Contributions. Unless You explicitly state otherwise,
 | 
			
		||||
      any Contribution intentionally submitted for inclusion in the Work
 | 
			
		||||
      by You to the Licensor shall be under the terms and conditions of
 | 
			
		||||
      this License, without any additional terms or conditions.
 | 
			
		||||
      Notwithstanding the above, nothing herein shall supersede or modify
 | 
			
		||||
      the terms of any separate license agreement you may have executed
 | 
			
		||||
      with Licensor regarding such Contributions.
 | 
			
		||||
 | 
			
		||||
   6. Trademarks. This License does not grant permission to use the trade
 | 
			
		||||
      names, trademarks, service marks, or product names of the Licensor,
 | 
			
		||||
      except as required for reasonable and customary use in describing the
 | 
			
		||||
      origin of the Work and reproducing the content of the NOTICE file.
 | 
			
		||||
 | 
			
		||||
   7. Disclaimer of Warranty. Unless required by applicable law or
 | 
			
		||||
      agreed to in writing, Licensor provides the Work (and each
 | 
			
		||||
      Contributor provides its Contributions) on an "AS IS" BASIS,
 | 
			
		||||
      WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
 | 
			
		||||
      implied, including, without limitation, any warranties or conditions
 | 
			
		||||
      of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
 | 
			
		||||
      PARTICULAR PURPOSE. You are solely responsible for determining the
 | 
			
		||||
      appropriateness of using or redistributing the Work and assume any
 | 
			
		||||
      risks associated with Your exercise of permissions under this License.
 | 
			
		||||
 | 
			
		||||
   8. Limitation of Liability. In no event and under no legal theory,
 | 
			
		||||
      whether in tort (including negligence), contract, or otherwise,
 | 
			
		||||
      unless required by applicable law (such as deliberate and grossly
 | 
			
		||||
      negligent acts) or agreed to in writing, shall any Contributor be
 | 
			
		||||
      liable to You for damages, including any direct, indirect, special,
 | 
			
		||||
      incidental, or consequential damages of any character arising as a
 | 
			
		||||
      result of this License or out of the use or inability to use the
 | 
			
		||||
      Work (including but not limited to damages for loss of goodwill,
 | 
			
		||||
      work stoppage, computer failure or malfunction, or any and all
 | 
			
		||||
      other commercial damages or losses), even if such Contributor
 | 
			
		||||
      has been advised of the possibility of such damages.
 | 
			
		||||
 | 
			
		||||
   9. Accepting Warranty or Additional Liability. While redistributing
 | 
			
		||||
      the Work or Derivative Works thereof, You may choose to offer,
 | 
			
		||||
      and charge a fee for, acceptance of support, warranty, indemnity,
 | 
			
		||||
      or other liability obligations and/or rights consistent with this
 | 
			
		||||
      License. However, in accepting such obligations, You may act only
 | 
			
		||||
      on Your own behalf and on Your sole responsibility, not on behalf
 | 
			
		||||
      of any other Contributor, and only if You agree to indemnify,
 | 
			
		||||
      defend, and hold each Contributor harmless for any liability
 | 
			
		||||
      incurred by, or claims asserted against, such Contributor by reason
 | 
			
		||||
      of your accepting any such warranty or additional liability.
 | 
			
		||||
 | 
			
		||||
   END OF TERMS AND CONDITIONS
 | 
			
		||||
 | 
			
		||||
   Copyright The containerd Authors
 | 
			
		||||
 | 
			
		||||
   Licensed under the Apache License, Version 2.0 (the "License");
 | 
			
		||||
   you may not use this file except in compliance with the License.
 | 
			
		||||
   You may obtain a copy of the License at
 | 
			
		||||
 | 
			
		||||
       https://www.apache.org/licenses/LICENSE-2.0
 | 
			
		||||
 | 
			
		||||
   Unless required by applicable law or agreed to in writing, software
 | 
			
		||||
   distributed under the License is distributed on an "AS IS" BASIS,
 | 
			
		||||
   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 | 
			
		||||
   See the License for the specific language governing permissions and
 | 
			
		||||
   limitations under the License.
 | 
			
		||||
							
								
								
									
										17
									
								
								vendor/github.com/containerd/log/README.md
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										17
									
								
								vendor/github.com/containerd/log/README.md
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,17 @@
 | 
			
		||||
# log
 | 
			
		||||
 | 
			
		||||
A Go package providing a common logging interface across containerd repositories and a way for clients to use and configure logging in containerd packages.
 | 
			
		||||
 | 
			
		||||
This package is not intended to be used as a standalone logging package outside of the containerd ecosystem and is intended as an interface wrapper around a logging implementation.
 | 
			
		||||
In the future this package may be replaced with a common go logging interface.
 | 
			
		||||
 | 
			
		||||
## Project details
 | 
			
		||||
 | 
			
		||||
**log** is a containerd sub-project, licensed under the [Apache 2.0 license](./LICENSE).
 | 
			
		||||
As a containerd sub-project, you will find the:
 | 
			
		||||
 * [Project governance](https://github.com/containerd/project/blob/main/GOVERNANCE.md),
 | 
			
		||||
 * [Maintainers](https://github.com/containerd/project/blob/main/MAINTAINERS),
 | 
			
		||||
 * and [Contributing guidelines](https://github.com/containerd/project/blob/main/CONTRIBUTING.md)
 | 
			
		||||
 | 
			
		||||
information in our [`containerd/project`](https://github.com/containerd/project) repository.
 | 
			
		||||
 | 
			
		||||
							
								
								
									
										182
									
								
								vendor/github.com/containerd/log/context.go
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										182
									
								
								vendor/github.com/containerd/log/context.go
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,182 @@
 | 
			
		||||
/*
 | 
			
		||||
   Copyright The containerd Authors.
 | 
			
		||||
 | 
			
		||||
   Licensed under the Apache License, Version 2.0 (the "License");
 | 
			
		||||
   you may not use this file except in compliance with the License.
 | 
			
		||||
   You may obtain a copy of the License at
 | 
			
		||||
 | 
			
		||||
       http://www.apache.org/licenses/LICENSE-2.0
 | 
			
		||||
 | 
			
		||||
   Unless required by applicable law or agreed to in writing, software
 | 
			
		||||
   distributed under the License is distributed on an "AS IS" BASIS,
 | 
			
		||||
   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 | 
			
		||||
   See the License for the specific language governing permissions and
 | 
			
		||||
   limitations under the License.
 | 
			
		||||
*/
 | 
			
		||||
 | 
			
		||||
// Package log provides types and functions related to logging, passing
 | 
			
		||||
// loggers through a context, and attaching context to the logger.
 | 
			
		||||
//
 | 
			
		||||
// # Transitional types
 | 
			
		||||
//
 | 
			
		||||
// This package contains various types that are aliases for types in [logrus].
 | 
			
		||||
// These aliases are intended for transitioning away from hard-coding logrus
 | 
			
		||||
// as logging implementation. Consumers of this package are encouraged to use
 | 
			
		||||
// the type-aliases from this package instead of directly using their logrus
 | 
			
		||||
// equivalent.
 | 
			
		||||
//
 | 
			
		||||
// The intent is to replace these aliases with locally defined types and
 | 
			
		||||
// interfaces once all consumers are no longer directly importing logrus
 | 
			
		||||
// types.
 | 
			
		||||
//
 | 
			
		||||
// IMPORTANT: due to the transitional purpose of this package, it is not
 | 
			
		||||
// guaranteed for the full logrus API to be provided in the future. As
 | 
			
		||||
// outlined, these aliases are provided as a step to transition away from
 | 
			
		||||
// a specific implementation which, as a result, exposes the full logrus API.
 | 
			
		||||
// While no decisions have been made on the ultimate design and interface
 | 
			
		||||
// provided by this package, we do not expect carrying "less common" features.
 | 
			
		||||
package log
 | 
			
		||||
 | 
			
		||||
import (
 | 
			
		||||
	"context"
 | 
			
		||||
	"fmt"
 | 
			
		||||
 | 
			
		||||
	"github.com/sirupsen/logrus"
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
// G is a shorthand for [GetLogger].
 | 
			
		||||
//
 | 
			
		||||
// We may want to define this locally to a package to get package tagged log
 | 
			
		||||
// messages.
 | 
			
		||||
var G = GetLogger
 | 
			
		||||
 | 
			
		||||
// L is an alias for the standard logger.
 | 
			
		||||
var L = &Entry{
 | 
			
		||||
	Logger: logrus.StandardLogger(),
 | 
			
		||||
	// Default is three fields plus a little extra room.
 | 
			
		||||
	Data: make(Fields, 6),
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
type loggerKey struct{}
 | 
			
		||||
 | 
			
		||||
// Fields type to pass to "WithFields".
 | 
			
		||||
type Fields = map[string]any
 | 
			
		||||
 | 
			
		||||
// Entry is a logging entry. It contains all the fields passed with
 | 
			
		||||
// [Entry.WithFields]. It's finally logged when Trace, Debug, Info, Warn,
 | 
			
		||||
// Error, Fatal or Panic is called on it. These objects can be reused and
 | 
			
		||||
// passed around as much as you wish to avoid field duplication.
 | 
			
		||||
//
 | 
			
		||||
// Entry is a transitional type, and currently an alias for [logrus.Entry].
 | 
			
		||||
type Entry = logrus.Entry
 | 
			
		||||
 | 
			
		||||
// RFC3339NanoFixed is [time.RFC3339Nano] with nanoseconds padded using
 | 
			
		||||
// zeros to ensure the formatted time is always the same number of
 | 
			
		||||
// characters.
 | 
			
		||||
const RFC3339NanoFixed = "2006-01-02T15:04:05.000000000Z07:00"
 | 
			
		||||
 | 
			
		||||
// Level is a logging level.
 | 
			
		||||
type Level = logrus.Level
 | 
			
		||||
 | 
			
		||||
// Supported log levels.
 | 
			
		||||
const (
 | 
			
		||||
	// TraceLevel level. Designates finer-grained informational events
 | 
			
		||||
	// than [DebugLevel].
 | 
			
		||||
	TraceLevel Level = logrus.TraceLevel
 | 
			
		||||
 | 
			
		||||
	// DebugLevel level. Usually only enabled when debugging. Very verbose
 | 
			
		||||
	// logging.
 | 
			
		||||
	DebugLevel Level = logrus.DebugLevel
 | 
			
		||||
 | 
			
		||||
	// InfoLevel level. General operational entries about what's going on
 | 
			
		||||
	// inside the application.
 | 
			
		||||
	InfoLevel Level = logrus.InfoLevel
 | 
			
		||||
 | 
			
		||||
	// WarnLevel level. Non-critical entries that deserve eyes.
 | 
			
		||||
	WarnLevel Level = logrus.WarnLevel
 | 
			
		||||
 | 
			
		||||
	// ErrorLevel level. Logs errors that should definitely be noted.
 | 
			
		||||
	// Commonly used for hooks to send errors to an error tracking service.
 | 
			
		||||
	ErrorLevel Level = logrus.ErrorLevel
 | 
			
		||||
 | 
			
		||||
	// FatalLevel level. Logs and then calls "logger.Exit(1)". It exits
 | 
			
		||||
	// even if the logging level is set to Panic.
 | 
			
		||||
	FatalLevel Level = logrus.FatalLevel
 | 
			
		||||
 | 
			
		||||
	// PanicLevel level. This is the highest level of severity. Logs and
 | 
			
		||||
	// then calls panic with the message passed to Debug, Info, ...
 | 
			
		||||
	PanicLevel Level = logrus.PanicLevel
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
// SetLevel sets log level globally. It returns an error if the given
 | 
			
		||||
// level is not supported.
 | 
			
		||||
//
 | 
			
		||||
// level can be one of:
 | 
			
		||||
//
 | 
			
		||||
//   - "trace" ([TraceLevel])
 | 
			
		||||
//   - "debug" ([DebugLevel])
 | 
			
		||||
//   - "info" ([InfoLevel])
 | 
			
		||||
//   - "warn" ([WarnLevel])
 | 
			
		||||
//   - "error" ([ErrorLevel])
 | 
			
		||||
//   - "fatal" ([FatalLevel])
 | 
			
		||||
//   - "panic" ([PanicLevel])
 | 
			
		||||
func SetLevel(level string) error {
 | 
			
		||||
	lvl, err := logrus.ParseLevel(level)
 | 
			
		||||
	if err != nil {
 | 
			
		||||
		return err
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	L.Logger.SetLevel(lvl)
 | 
			
		||||
	return nil
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// GetLevel returns the current log level.
 | 
			
		||||
func GetLevel() Level {
 | 
			
		||||
	return L.Logger.GetLevel()
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// OutputFormat specifies a log output format.
 | 
			
		||||
type OutputFormat string
 | 
			
		||||
 | 
			
		||||
// Supported log output formats.
 | 
			
		||||
const (
 | 
			
		||||
	// TextFormat represents the text logging format.
 | 
			
		||||
	TextFormat OutputFormat = "text"
 | 
			
		||||
 | 
			
		||||
	// JSONFormat represents the JSON logging format.
 | 
			
		||||
	JSONFormat OutputFormat = "json"
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
// SetFormat sets the log output format ([TextFormat] or [JSONFormat]).
 | 
			
		||||
func SetFormat(format OutputFormat) error {
 | 
			
		||||
	switch format {
 | 
			
		||||
	case TextFormat:
 | 
			
		||||
		L.Logger.SetFormatter(&logrus.TextFormatter{
 | 
			
		||||
			TimestampFormat: RFC3339NanoFixed,
 | 
			
		||||
			FullTimestamp:   true,
 | 
			
		||||
		})
 | 
			
		||||
		return nil
 | 
			
		||||
	case JSONFormat:
 | 
			
		||||
		L.Logger.SetFormatter(&logrus.JSONFormatter{
 | 
			
		||||
			TimestampFormat: RFC3339NanoFixed,
 | 
			
		||||
		})
 | 
			
		||||
		return nil
 | 
			
		||||
	default:
 | 
			
		||||
		return fmt.Errorf("unknown log format: %s", format)
 | 
			
		||||
	}
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// WithLogger returns a new context with the provided logger. Use in
 | 
			
		||||
// combination with logger.WithField(s) for great effect.
 | 
			
		||||
func WithLogger(ctx context.Context, logger *Entry) context.Context {
 | 
			
		||||
	return context.WithValue(ctx, loggerKey{}, logger.WithContext(ctx))
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// GetLogger retrieves the current logger from the context. If no logger is
 | 
			
		||||
// available, the default logger is returned.
 | 
			
		||||
func GetLogger(ctx context.Context) *Entry {
 | 
			
		||||
	if logger := ctx.Value(loggerKey{}); logger != nil {
 | 
			
		||||
		return logger.(*Entry)
 | 
			
		||||
	}
 | 
			
		||||
	return L.WithContext(ctx)
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										2
									
								
								vendor/github.com/containerd/ttrpc/README.md
									
									
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										2
									
								
								vendor/github.com/containerd/ttrpc/README.md
									
									
									
										generated
									
									
										vendored
									
									
								
							@@ -1,6 +1,6 @@
 | 
			
		||||
# ttrpc
 | 
			
		||||
 | 
			
		||||
[](https://github.com/containerd/ttrpc/actions?query=workflow%3ACI)
 | 
			
		||||
[](https://github.com/containerd/ttrpc/actions/workflows/ci.yml)
 | 
			
		||||
 | 
			
		||||
GRPC for low-memory environments.
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										86
									
								
								vendor/github.com/containerd/ttrpc/client.go
									
									
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										86
									
								
								vendor/github.com/containerd/ttrpc/client.go
									
									
									
										generated
									
									
										vendored
									
									
								
							@@ -27,7 +27,7 @@ import (
 | 
			
		||||
	"syscall"
 | 
			
		||||
	"time"
 | 
			
		||||
 | 
			
		||||
	"github.com/sirupsen/logrus"
 | 
			
		||||
	"github.com/containerd/log"
 | 
			
		||||
	"google.golang.org/grpc/codes"
 | 
			
		||||
	"google.golang.org/grpc/status"
 | 
			
		||||
	"google.golang.org/protobuf/proto"
 | 
			
		||||
@@ -71,6 +71,42 @@ func WithUnaryClientInterceptor(i UnaryClientInterceptor) ClientOpts {
 | 
			
		||||
	}
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// WithChainUnaryClientInterceptor sets the provided chain of client interceptors
 | 
			
		||||
func WithChainUnaryClientInterceptor(interceptors ...UnaryClientInterceptor) ClientOpts {
 | 
			
		||||
	return func(c *Client) {
 | 
			
		||||
		if len(interceptors) == 0 {
 | 
			
		||||
			return
 | 
			
		||||
		}
 | 
			
		||||
		if c.interceptor != nil {
 | 
			
		||||
			interceptors = append([]UnaryClientInterceptor{c.interceptor}, interceptors...)
 | 
			
		||||
		}
 | 
			
		||||
		c.interceptor = func(
 | 
			
		||||
			ctx context.Context,
 | 
			
		||||
			req *Request,
 | 
			
		||||
			reply *Response,
 | 
			
		||||
			info *UnaryClientInfo,
 | 
			
		||||
			final Invoker,
 | 
			
		||||
		) error {
 | 
			
		||||
			return interceptors[0](ctx, req, reply, info,
 | 
			
		||||
				chainUnaryInterceptors(interceptors[1:], final, info))
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func chainUnaryInterceptors(interceptors []UnaryClientInterceptor, final Invoker, info *UnaryClientInfo) Invoker {
 | 
			
		||||
	if len(interceptors) == 0 {
 | 
			
		||||
		return final
 | 
			
		||||
	}
 | 
			
		||||
	return func(
 | 
			
		||||
		ctx context.Context,
 | 
			
		||||
		req *Request,
 | 
			
		||||
		reply *Response,
 | 
			
		||||
	) error {
 | 
			
		||||
		return interceptors[0](ctx, req, reply, info,
 | 
			
		||||
			chainUnaryInterceptors(interceptors[1:], final, info))
 | 
			
		||||
	}
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// NewClient creates a new ttrpc client using the given connection
 | 
			
		||||
func NewClient(conn net.Conn, opts ...ClientOpts) *Client {
 | 
			
		||||
	ctx, cancel := context.WithCancel(context.Background())
 | 
			
		||||
@@ -85,13 +121,16 @@ func NewClient(conn net.Conn, opts ...ClientOpts) *Client {
 | 
			
		||||
		ctx:             ctx,
 | 
			
		||||
		userCloseFunc:   func() {},
 | 
			
		||||
		userCloseWaitCh: make(chan struct{}),
 | 
			
		||||
		interceptor:     defaultClientInterceptor,
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	for _, o := range opts {
 | 
			
		||||
		o(c)
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	if c.interceptor == nil {
 | 
			
		||||
		c.interceptor = defaultClientInterceptor
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	go c.run()
 | 
			
		||||
	return c
 | 
			
		||||
}
 | 
			
		||||
@@ -286,7 +325,7 @@ func (c *Client) Close() error {
 | 
			
		||||
	return nil
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// UserOnCloseWait is used to blocks untils the user's on-close callback
 | 
			
		||||
// UserOnCloseWait is used to block until the user's on-close callback
 | 
			
		||||
// finishes.
 | 
			
		||||
func (c *Client) UserOnCloseWait(ctx context.Context) error {
 | 
			
		||||
	select {
 | 
			
		||||
@@ -329,7 +368,7 @@ func (c *Client) receiveLoop() error {
 | 
			
		||||
			sid := streamID(msg.header.StreamID)
 | 
			
		||||
			s := c.getStream(sid)
 | 
			
		||||
			if s == nil {
 | 
			
		||||
				logrus.WithField("stream", sid).Errorf("ttrpc: received message on inactive stream")
 | 
			
		||||
				log.G(c.ctx).WithField("stream", sid).Error("ttrpc: received message on inactive stream")
 | 
			
		||||
				continue
 | 
			
		||||
			}
 | 
			
		||||
 | 
			
		||||
@@ -337,7 +376,7 @@ func (c *Client) receiveLoop() error {
 | 
			
		||||
				s.closeWithError(err)
 | 
			
		||||
			} else {
 | 
			
		||||
				if err := s.receive(c.ctx, msg); err != nil {
 | 
			
		||||
					logrus.WithError(err).WithField("stream", sid).Errorf("ttrpc: failed to handle message")
 | 
			
		||||
					log.G(c.ctx).WithFields(log.Fields{"error": err, "stream": sid}).Error("ttrpc: failed to handle message")
 | 
			
		||||
				}
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
@@ -347,25 +386,44 @@ func (c *Client) receiveLoop() error {
 | 
			
		||||
// createStream creates a new stream and registers it with the client
 | 
			
		||||
// Introduce stream types for multiple or single response
 | 
			
		||||
func (c *Client) createStream(flags uint8, b []byte) (*stream, error) {
 | 
			
		||||
	c.streamLock.Lock()
 | 
			
		||||
	// sendLock must be held across both allocation of the stream ID and sending it across the wire.
 | 
			
		||||
	// This ensures that new stream IDs sent on the wire are always increasing, which is a
 | 
			
		||||
	// requirement of the TTRPC protocol.
 | 
			
		||||
	// This use of sendLock could be split into another mutex that covers stream creation + first send,
 | 
			
		||||
	// and just use sendLock to guard writing to the wire, but for now it seems simpler to have fewer mutexes.
 | 
			
		||||
	c.sendLock.Lock()
 | 
			
		||||
	defer c.sendLock.Unlock()
 | 
			
		||||
 | 
			
		||||
	// Check if closed since lock acquired to prevent adding
 | 
			
		||||
	// anything after cleanup completes
 | 
			
		||||
	select {
 | 
			
		||||
	case <-c.ctx.Done():
 | 
			
		||||
		c.streamLock.Unlock()
 | 
			
		||||
		return nil, ErrClosed
 | 
			
		||||
	default:
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	// Stream ID should be allocated at same time
 | 
			
		||||
	s := newStream(c.nextStreamID, c)
 | 
			
		||||
	c.streams[s.id] = s
 | 
			
		||||
	c.nextStreamID = c.nextStreamID + 2
 | 
			
		||||
	var s *stream
 | 
			
		||||
	if err := func() error {
 | 
			
		||||
		// In the future this could be replaced with a sync.Map instead of streamLock+map.
 | 
			
		||||
		c.streamLock.Lock()
 | 
			
		||||
		defer c.streamLock.Unlock()
 | 
			
		||||
 | 
			
		||||
	c.sendLock.Lock()
 | 
			
		||||
	defer c.sendLock.Unlock()
 | 
			
		||||
	c.streamLock.Unlock()
 | 
			
		||||
		// Check if closed since lock acquired to prevent adding
 | 
			
		||||
		// anything after cleanup completes
 | 
			
		||||
		select {
 | 
			
		||||
		case <-c.ctx.Done():
 | 
			
		||||
			return ErrClosed
 | 
			
		||||
		default:
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		s = newStream(c.nextStreamID, c)
 | 
			
		||||
		c.streams[s.id] = s
 | 
			
		||||
		c.nextStreamID = c.nextStreamID + 2
 | 
			
		||||
 | 
			
		||||
		return nil
 | 
			
		||||
	}(); err != nil {
 | 
			
		||||
		return nil, err
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	if err := c.channel.send(uint32(s.id), messageTypeRequest, flags, b); err != nil {
 | 
			
		||||
		return s, filterCloseErr(err)
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										38
									
								
								vendor/github.com/containerd/ttrpc/config.go
									
									
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										38
									
								
								vendor/github.com/containerd/ttrpc/config.go
									
									
									
										generated
									
									
										vendored
									
									
								
							@@ -16,7 +16,10 @@
 | 
			
		||||
 | 
			
		||||
package ttrpc
 | 
			
		||||
 | 
			
		||||
import "errors"
 | 
			
		||||
import (
 | 
			
		||||
	"context"
 | 
			
		||||
	"errors"
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
type serverConfig struct {
 | 
			
		||||
	handshaker  Handshaker
 | 
			
		||||
@@ -44,9 +47,40 @@ func WithServerHandshaker(handshaker Handshaker) ServerOpt {
 | 
			
		||||
func WithUnaryServerInterceptor(i UnaryServerInterceptor) ServerOpt {
 | 
			
		||||
	return func(c *serverConfig) error {
 | 
			
		||||
		if c.interceptor != nil {
 | 
			
		||||
			return errors.New("only one interceptor allowed per server")
 | 
			
		||||
			return errors.New("only one unchained interceptor allowed per server")
 | 
			
		||||
		}
 | 
			
		||||
		c.interceptor = i
 | 
			
		||||
		return nil
 | 
			
		||||
	}
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// WithChainUnaryServerInterceptor sets the provided chain of server interceptors
 | 
			
		||||
func WithChainUnaryServerInterceptor(interceptors ...UnaryServerInterceptor) ServerOpt {
 | 
			
		||||
	return func(c *serverConfig) error {
 | 
			
		||||
		if len(interceptors) == 0 {
 | 
			
		||||
			return nil
 | 
			
		||||
		}
 | 
			
		||||
		if c.interceptor != nil {
 | 
			
		||||
			interceptors = append([]UnaryServerInterceptor{c.interceptor}, interceptors...)
 | 
			
		||||
		}
 | 
			
		||||
		c.interceptor = func(
 | 
			
		||||
			ctx context.Context,
 | 
			
		||||
			unmarshal Unmarshaler,
 | 
			
		||||
			info *UnaryServerInfo,
 | 
			
		||||
			method Method) (interface{}, error) {
 | 
			
		||||
			return interceptors[0](ctx, unmarshal, info,
 | 
			
		||||
				chainUnaryServerInterceptors(info, method, interceptors[1:]))
 | 
			
		||||
		}
 | 
			
		||||
		return nil
 | 
			
		||||
	}
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func chainUnaryServerInterceptors(info *UnaryServerInfo, method Method, interceptors []UnaryServerInterceptor) Method {
 | 
			
		||||
	if len(interceptors) == 0 {
 | 
			
		||||
		return method
 | 
			
		||||
	}
 | 
			
		||||
	return func(ctx context.Context, unmarshal func(interface{}) error) (interface{}, error) {
 | 
			
		||||
		return interceptors[0](ctx, unmarshal, info,
 | 
			
		||||
			chainUnaryServerInterceptors(info, method, interceptors[1:]))
 | 
			
		||||
	}
 | 
			
		||||
}
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										16
									
								
								vendor/github.com/containerd/ttrpc/server.go
									
									
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										16
									
								
								vendor/github.com/containerd/ttrpc/server.go
									
									
									
										generated
									
									
										vendored
									
									
								
							@@ -27,7 +27,7 @@ import (
 | 
			
		||||
	"syscall"
 | 
			
		||||
	"time"
 | 
			
		||||
 | 
			
		||||
	"github.com/sirupsen/logrus"
 | 
			
		||||
	"github.com/containerd/log"
 | 
			
		||||
	"google.golang.org/grpc/codes"
 | 
			
		||||
	"google.golang.org/grpc/status"
 | 
			
		||||
)
 | 
			
		||||
@@ -109,7 +109,7 @@ func (s *Server) Serve(ctx context.Context, l net.Listener) error {
 | 
			
		||||
				}
 | 
			
		||||
 | 
			
		||||
				sleep := time.Duration(rand.Int63n(int64(backoff)))
 | 
			
		||||
				logrus.WithError(err).Errorf("ttrpc: failed accept; backoff %v", sleep)
 | 
			
		||||
				log.G(ctx).WithError(err).Errorf("ttrpc: failed accept; backoff %v", sleep)
 | 
			
		||||
				time.Sleep(sleep)
 | 
			
		||||
				continue
 | 
			
		||||
			}
 | 
			
		||||
@@ -121,14 +121,14 @@ func (s *Server) Serve(ctx context.Context, l net.Listener) error {
 | 
			
		||||
 | 
			
		||||
		approved, handshake, err := handshaker.Handshake(ctx, conn)
 | 
			
		||||
		if err != nil {
 | 
			
		||||
			logrus.WithError(err).Error("ttrpc: refusing connection after handshake")
 | 
			
		||||
			log.G(ctx).WithError(err).Error("ttrpc: refusing connection after handshake")
 | 
			
		||||
			conn.Close()
 | 
			
		||||
			continue
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		sc, err := s.newConn(approved, handshake)
 | 
			
		||||
		if err != nil {
 | 
			
		||||
			logrus.WithError(err).Error("ttrpc: create connection failed")
 | 
			
		||||
			log.G(ctx).WithError(err).Error("ttrpc: create connection failed")
 | 
			
		||||
			conn.Close()
 | 
			
		||||
			continue
 | 
			
		||||
		}
 | 
			
		||||
@@ -513,12 +513,12 @@ func (c *serverConn) run(sctx context.Context) {
 | 
			
		||||
					Payload: response.data,
 | 
			
		||||
				})
 | 
			
		||||
				if err != nil {
 | 
			
		||||
					logrus.WithError(err).Error("failed marshaling response")
 | 
			
		||||
					log.G(ctx).WithError(err).Error("failed marshaling response")
 | 
			
		||||
					return
 | 
			
		||||
				}
 | 
			
		||||
 | 
			
		||||
				if err := ch.send(response.id, messageTypeResponse, 0, p); err != nil {
 | 
			
		||||
					logrus.WithError(err).Error("failed sending message on channel")
 | 
			
		||||
					log.G(ctx).WithError(err).Error("failed sending message on channel")
 | 
			
		||||
					return
 | 
			
		||||
				}
 | 
			
		||||
			} else {
 | 
			
		||||
@@ -530,7 +530,7 @@ func (c *serverConn) run(sctx context.Context) {
 | 
			
		||||
					flags = flags | flagNoData
 | 
			
		||||
				}
 | 
			
		||||
				if err := ch.send(response.id, messageTypeData, flags, response.data); err != nil {
 | 
			
		||||
					logrus.WithError(err).Error("failed sending message on channel")
 | 
			
		||||
					log.G(ctx).WithError(err).Error("failed sending message on channel")
 | 
			
		||||
					return
 | 
			
		||||
				}
 | 
			
		||||
			}
 | 
			
		||||
@@ -552,7 +552,7 @@ func (c *serverConn) run(sctx context.Context) {
 | 
			
		||||
				// requests, so that the client connection is closed
 | 
			
		||||
				return
 | 
			
		||||
			}
 | 
			
		||||
			logrus.WithError(err).Error("error receiving message")
 | 
			
		||||
			log.G(ctx).WithError(err).Error("error receiving message")
 | 
			
		||||
			// else, initiate shutdown
 | 
			
		||||
		case <-shutdown:
 | 
			
		||||
			return
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										6
									
								
								vendor/github.com/containerd/ttrpc/services.go
									
									
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										6
									
								
								vendor/github.com/containerd/ttrpc/services.go
									
									
									
										generated
									
									
										vendored
									
									
								
							@@ -140,7 +140,11 @@ func (s *serviceSet) handle(ctx context.Context, req *Request, respond func(*sta
 | 
			
		||||
			respond(st, p, stream.StreamingServer, true)
 | 
			
		||||
		}()
 | 
			
		||||
 | 
			
		||||
		if req.Payload != nil {
 | 
			
		||||
		// Empty proto messages serialized to 0 payloads,
 | 
			
		||||
		// so signatures like: rpc Stream(google.protobuf.Empty) returns (stream Data);
 | 
			
		||||
		// don't get invoked here, which causes hang on client side.
 | 
			
		||||
		// See https://github.com/containerd/ttrpc/issues/126
 | 
			
		||||
		if req.Payload != nil || !info.StreamingClient {
 | 
			
		||||
			unmarshal := func(obj interface{}) error {
 | 
			
		||||
				return protoUnmarshal(req.Payload, obj)
 | 
			
		||||
			}
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user