这个问题是这个问题How to pass jenkins凭据到docker build命令的后续问题 ?
我从 groovy 管道中的 jenkins 凭证存储获取 ssh 密钥文件,并通过 --build-arg 将其传递到 docker build 命令,以便我可以从 docker 容器内的私有 git 存储库中签出和构建工件
凭证存储 id :cicd-user,用于按照我的常规 Jenkinsfile 的预期检查我的私人作品
checkout([$class: 'GitSCM',
userRemoteConfigs: [[credentialsId: 'cicd-user', url:'ssh://git@bitbucket.myorg.co:7999/A/software.git']]
Run Code Online (Sandbox Code Playgroud)
我访问它并尝试将其传递给 docker build 命令:
withCredentials([sshUserPrivateKey(credentialsId: 'cicd-user', keyFileVariable: 'FILE')]) {
sh "cd ${WORKSPACE} && docker build -t ${some-name} --build-arg USERNAME=cicd-user --build-arg PRIV_KEY_FILE=\$FILE --network=host -f software/tools/jenkins/${some-name}/Dockerfile ."
}
Run Code Online (Sandbox Code Playgroud)
在 Dockerfile 中我做
RUN echo "$PRIV_KEY_FILE" > /home/"$USERNAME"/.ssh/id_rsa && \
chmod 700 /home/"$USERNAME"/.ssh/id_rsa
Run Code Online (Sandbox Code Playgroud)
RUN echo "Host bitbucket.myorg.co\n\tStrictHostKeyChecking no\n" >> ~/.ssh/config …
我有以下代码,我正在尝试调试
int ll(ref float[,] _lv) {
object[] results = new object[20];
results = func_v1(11, _lv);
}
Run Code Online (Sandbox Code Playgroud)
打破观察变量'结果'显示如下所示
results {object[11]}
+ [0] {float[1,1]}
+ [1] {double[1,1]}
+ [2] {float[48,1]}
...
...
+ [10] {float[1,1]}
Run Code Online (Sandbox Code Playgroud)
而且我无法输入强制转换来获取它的值
float f = (float)results[0]; 抛出无效的强制转换异常.
请帮助我理解这个对象数组究竟是什么以及如何从中获取值.
问候.AK
可以创建 10 位数据类型吗?我可以使用uint16_t,uint32_t等等,但是如果我想使用uint10_t或uint12_t呢?这可能吗?