Skip to content

Conversation

@AkihiroSuda
Copy link
Member

@AkihiroSuda AkihiroSuda commented Feb 6, 2024

Propagate the deprecation list to CRI runtime conditions.

# crictl info                       
{                                                                                
  "status": {                                                                                                                                                      
    "conditions": [                                                              
      {                          
        "type": "RuntimeReady",   
        "status": true,                
        "reason": "",            
        "message": ""           
      },                        
      {                        
        "type": "NetworkReady",                                                  
        "status": true,              
        "reason": "",                                                            
        "message": ""                  
      },                              
      {                              
        "type": "ContainerdHasNoDeprecationWarnings",                            
        "status": false,                                                         
        "reason": "ContainerdHasDeprecationWarnings",                                                                                                              
        "message": "{\"io.containerd.deprecation/pull-schema-1-image\":\"Schema 1 images are deprecated since containerd v1.7 and removed in containerd v2.0. Since
 containerd v1.7.8, schema 1 images are identified by the \\\"io.containerd.image/converted-docker-schema1\\\" label.\"}"                                          
      }                                
    ]                                  
  }, 
...
}      

The propagated conditions are visible via crictl info, but not visible via kubectl get nodes -o yaml yet, although the CRI API says "These conditions will be exposed to users to help them understand the status of the system".

https://github.com/kubernetes/cri-api/blob/v0.29.1/pkg/apis/runtime/v1/api.proto#L1505-L1509

@AkihiroSuda AkihiroSuda marked this pull request as draft February 6, 2024 10:43
@AkihiroSuda AkihiroSuda force-pushed the cri-propagate-deprecation branch from cd443d2 to 566114a Compare February 6, 2024 10:51
@AkihiroSuda AkihiroSuda marked this pull request as ready for review February 6, 2024 10:51
@AkihiroSuda
Copy link
Member Author

/retest

@AkihiroSuda
Copy link
Member Author

Specifically for the deprecation messages, this may confuse some customers. In GKE, for example, we set mirrors using "old way" because there are customers who are adding other mirrors this way. So we have a separate detection mechanism that will tell those customers that the change is needed and we will switch the config mode when we are sure that it will not break those customers customizing things manually.

If this will be exposed widely, we may need to have some mechanism to hide certain deprecation warnings than.

CC: @yujuhong

Originally posted by @SergeyKanzhelev in kubernetes/kubernetes#123148 (comment)

@AkihiroSuda AkihiroSuda force-pushed the cri-propagate-deprecation branch from 566114a to 13dd76e Compare February 7, 2024 09:55
@k8s-ci-robot k8s-ci-robot added size/L and removed size/M labels Feb 7, 2024
@AkihiroSuda AkihiroSuda added this to the 2.0 milestone Feb 9, 2024
Propagate the deprecation list to CRI runtime conditions.

The propagated conditions are visible via `crictl info`,
but not visible via `kubectl get nodes -o yaml` yet, although
the CRI API says "These conditions will be exposed to users to help
them understand the status of the system".

https://github.com/kubernetes/cri-api/blob/v0.29.1/pkg/apis/runtime/v1/api.proto#L1505-L1509

Signed-off-by: Akihiro Suda <akihiro.suda.cz@hco.ntt.co.jp>
@AkihiroSuda AkihiroSuda force-pushed the cri-propagate-deprecation branch from 13dd76e to 1b3a96d Compare February 13, 2024 19:00
@mxpv mxpv enabled auto-merge February 13, 2024 19:21
@mxpv mxpv added this pull request to the merge queue Feb 13, 2024
@github-merge-queue github-merge-queue bot removed this pull request from the merge queue due to no response for status checks Feb 13, 2024
@mxpv mxpv added this pull request to the merge queue Feb 13, 2024
Merged via the queue into containerd:main with commit a843731 Feb 13, 2024
@AkihiroSuda AkihiroSuda added cherry-picked/1.7.x PR commits are cherry-picked into release/1.7 branch and removed cherry-pick/1.7.x Change to be cherry picked to release/1.7 branch labels Feb 14, 2024
@AkihiroSuda AkihiroSuda added cherry-picked/1.6.x PR commits are cherry-picked into release/1.6 branch and removed cherry-pick/1.6.x labels Feb 14, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

area/cri Container Runtime Interface (CRI) cherry-picked/1.6.x PR commits are cherry-picked into release/1.6 branch cherry-picked/1.7.x PR commits are cherry-picked into release/1.7 branch size/L

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants