小编cha*_*dan的帖子

如何在声明性管道中定义多个容器?

我正在使用kuberntes-plugin.在其自述文件中,它给出了如何使用多个容器图像编写脚本化管道

podTemplate(label: 'mypod', containers: [
    containerTemplate(name: 'maven', image: 'maven:3.3.9-jdk-8-alpine', ttyEnabled: true, command: 'cat'),
    containerTemplate(name: 'golang', image: 'golang:1.8.0', ttyEnabled: true, command: 'cat')
  ]) {
    node('mypod') { 
Run Code Online (Sandbox Code Playgroud)

我尝试了以下的声明性管道.

pipeline {
  agent {
    kubernetes {
      //cloud 'kubernetes'
      label 'mypod'
      containerTemplate {
        name 'maven'
        image 'maven:3.3.9-jdk-8-alpine'
        ttyEnabled true
        command 'cat'
      }
      containerTemplate {
        name 'containtertwo'
        image 'someimage'
        ttyEnabled true

      }
    }
  }
Run Code Online (Sandbox Code Playgroud)

它创建一个只有一个容器的pod.

如何使用多个containerTemplates与声明管道?

jnlp jenkins kubernetes jenkins-pipeline

9
推荐指数
1
解决办法
1584
查看次数

如何从 grpc Context.current() 访问属性?

是否可以从 rpc 方法定义访问 grpc 调用的上下文属性?

我写了一个类似于这个的服务器拦截器

@Override
public <ReqT, RespT> ServerCall.Listener<ReqT> interceptCall(ServerCall<ReqT, RespT> call, final Metadata requestHeaders, ServerCallHandler<ReqT, RespT> next) {

   Context.Key<String> USER = Context.key("USER");
 
  Context ctx = Context.current().withValue(USER, "chandan");
  return Contexts.interceptCall(ctx, call, requestHeaders, next);
}
Run Code Online (Sandbox Code Playgroud)

在服务实现中,我正在尝试类似的东西

Context.Key<String> key = Context.key("USER");
String value = key.get(Context.current())
Run Code Online (Sandbox Code Playgroud)

每次值为空。但是在调试中的IntelliJ我可以在看到那些值context.current().keyValueEntries作为

CompressedIndex(bitmap=100001000000000000000000000000 Leaf(key=USER value=chandan) Leaf(key=opencensus-trace-span-key value=BlankSpan) )
Run Code Online (Sandbox Code Playgroud)

我如何访问上下文属性/正确的方法是什么?

protocol-buffers grpc grpc-java protobuf-java

2
推荐指数
1
解决办法
2125
查看次数