小编Cod*_*dyK的帖子

如何使用Pipeline引用Jenkinsfile目录?

我有一个groovy文件,我想从Jenkinsfile运行.

即. load script.groovy

但是,如果它存储在与Jenkinsfile相同的目录中,我不确定如何引用该文件.我从git加载Jenkinsfile.我发现它创建了一个名为的文件夹workspace@script.它不会将其放在工作空间目录中.我可以对文件夹进行硬编码,但我不确定这个规则,再次检查代码似乎有点多余.

java.io.FileNotFoundException: /opt/jenkins_home/jobs/my_job/workspace/script.groovy (No such file or directory)
Run Code Online (Sandbox Code Playgroud)

默认情况下,它从工作空间加载,而不是 workspace@script

我正在尝试将BuildFlow脚本转换为Pipeline(工作流)脚本.但我发现,它并不像复制和粘贴那么容易.

Jenkinsfile

node {

//get parameters from Job
def builds = builds.tokenize(",")
def ip_address_node = ip_address_node.trim()
def port_node = port_node.trim()
def branch = branch.trim()
def workspace = pwd()

stage 'Checking out code from esb repository'
git branch: branch, url: 'ssh://git@giturl/integration_bus.git'

load '../workspace@script/esb_deploybar_pipeline/deploy_esb.groovy'

}
Run Code Online (Sandbox Code Playgroud)

deploy_esb.groovy(这是来自旧的buildflow,试图在管道中运行)

import groovy.transform.ToString
import groovy.transform.EqualsAndHashCode
@EqualsAndHashCode
@ToString
class BarDeploy {
    String barFile
    String app
    String integrationServer
}


//parse csv
def csvItemsApps …
Run Code Online (Sandbox Code Playgroud)

groovy jenkins jenkins-workflow jenkins-pipeline jenkinsfile

32
推荐指数
3
解决办法
5万
查看次数

可以在docker FROM中使用变量吗?

我想知道是否可以在docker中使用env变量?原因是控制标记.例如,假设我在Dockerfile中有这一行:

From myApp
Run Code Online (Sandbox Code Playgroud)

我想要的是这个:

From myApp:${VERSION}
Run Code Online (Sandbox Code Playgroud)

我可以这样说 docker build . myApp --build-arg VERSION=9

为此应用程序构建docker镜像的过程是相同的.我不想让几乎相同的Dockerfiles使用不同的基本图像.如果我想构建版本9,它应该使用基本图像的版本9.

docker

19
推荐指数
2
解决办法
6748
查看次数

Jenkins条件步骤检查是否设置了ENV变量

如何使用Conditional Step Jenkins插件检查是否设置了环境变量?如果已设置,请继续正常进行.如果未设置,请跳过构建后操作并将构建标记为通过(而不是失败).

或者如果有一种方法可以在不使用Conditional Step插件的情况下执行此操作,我也会对此持开放态度.

jenkins jenkins-plugins

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

AddKeysToAgent是SSH配置在Mac上不起作用

嗨,我有我的ssh配置文件设置来自动将ssh密钥添加到ssh代理。但是,当前它不起作用。它以前在工作。我更新了bitbucket的ssh密钥,它不再起作用。重新启动后,必须使用ssh-add -K选项手动添加ssh密钥。

有人可以帮我弄清楚为什么ssh config无法正常工作吗?假设使用AddKeysToAgent yes选项启用ssh密钥的自动添加。

我正在运行macOS Sierra 10.12.4

这是配置(出于敏感目的,我更改了服务器名称)

GSSAPIAuthentication no

# --- SourceTree Generated ---
Host cik-bitbucket__com
    HostName bitbucket.com
    User cik
    PreferredAuthentications publickey
    IdentityFile /Users/cik/.ssh/cik-bitbucket__com
    UseKeychain yes
    AddKeysToAgent yes
# ----------------------------

Host *
    UseKeychain yes
    AddKeysToAgent yes
    ServerAliveInterval 15
    IdentityFile /Users/cik/.ssh/id_rsa

Host jenkins
    HostName pasjenkins1.mycompany.com
    UseKeychain yes
    AddKeysToAgent yes

Host jenkinsqa
    HostName pasjenkinsqa.mycompany.com
    UseKeychain yes
    AddKeysToAgent yes

Host artifactory
    HostName prp01
    UseKeychain yes
    AddKeysToAgent yes

Host bitbucket
    HostName bitbucket
    UseKeychain yes
    AddKeysToAgent yes

Host confluence
    HostName confluence01
    UseKeychain yes …
Run Code Online (Sandbox Code Playgroud)

macos ssh macos-sierra

5
推荐指数
1
解决办法
8484
查看次数

使用Apportable时,您可以在xcode中安装Android设备模拟器吗?

你可以在使用Apportable将iOS应用程序转换为Android时在Xcode中安装Android设备模拟器,还是需要Android设备来编译和运行项目?我没有Android设备,想在我买一个之前测试一下.

谢谢

android simulator ios apportable

4
推荐指数
1
解决办法
5204
查看次数

Pull all fields with annotation (including fields inside an object in another and fields in inner classes)

Hi I am creating a custom Excel parsing marshaller tool, you can reference this: How can I call getter/setter for property marked with custom annotation?

What I need now is to be able to find all annotations, specifically how can I find ones that nested objects or inner classes, and then call that setter/getter.

For example:

public class MyOuterClass {
    private InnerClass innerObject;

    public void setInnerObject (InnerClass innerObject) {
        this.innerObject = innerObject;
    }

    public InnerClass getInnerObject() {
        return innerObject;
    } …
Run Code Online (Sandbox Code Playgroud)

java reflection annotations

3
推荐指数
1
解决办法
3991
查看次数

我可以在GROUP BY之前执行COUNT()吗

我正在为学校进行mySQL分配,但遇到了一个问题。我还是mySQL新手。COUNT(o.customer_id)无法按照我想要的方式工作。我希望它计算订单数,但它计算所有项目。即客户1有2个订单,但由于一个订单有两个项目而返回3。我有三个表,一个与客户,另一个与订单,而不是另一个与每个订单上的每个项目。我在下面提出了我的查询。任何帮助都会很棒。

SELECT email_address, COUNT(o.order_id) AS num_of_orders,
       SUM(((item_price - discount_amount) * quantity)) AS total
FROM customers c JOIN orders o
      ON c.customer_id = o.customer_id
     JOIN order_items ot
      ON o.order_id = ot.order_id
GROUP BY o.customer_id
HAVING num_of_orders > 1
ORDER BY total DESC;
Run Code Online (Sandbox Code Playgroud)

mysql sql count mysql-workbench

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

获取 Log4j2 日志文件位置以写入包含日期的目录

如何获取 log4j 日志文件的位置?我试过这个:我可以在哪里以编程方式找到 log4j 日志文件的存储位置?

但它不适用于较新版本的 log4j。

我正在创建包含系统日期的文件,但是当我检索路径时,时间戳会发生变化。

java junit log4j log4j2

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

15拼图随机播放方法问题

我正在使用C#制作15个益智游戏,允许用户输入自定义行和列值,最多可达10 x 10拼图.因此,我遇到了shuffle方法的问题.我想做到这一点,这个难题总是可以解决的.通过首先创建一个获胜的拼图然后改变空的空间.问题是每次调用每个点击事件效率太低.我需要一种方法来调用与空白空间相邻但不是对角线的按钮的单击事件.我还使用一个看不见的静态按钮作为空白点.PuzzlePiece类继承自Button.我不太清楚如何做到这一点.我将不胜感激任何帮助.

谢谢

这就是我所拥有的:

private void shuffleBoard()
    {
        //5 is just for test purposes
        for (int i = 0; i < 5; i++)
        {
            foreach (Control item in this.Controls)
            {
                if (item is PuzzlePiece)
                {
                    ((PuzzlePiece)item).PerformClick();
                }
            }
        }
    }

 void PuzzlePiece_Click(object sender, EventArgs e)
    {
        PuzzlePiece piece = (PuzzlePiece)sender;

        if (piece.Right == puzzleForm.emptyPiece.Left && piece.Top == puzzleForm.emptyPiece.Top)
        {
            movePiece(piece);
        }
        else if (piece.Left == puzzleForm.emptyPiece.Right && piece.Top == puzzleForm.emptyPiece.Top)
        {
            movePiece(piece);
        }
        else if (piece.Top == puzzleForm.emptyPiece.Bottom && …
Run Code Online (Sandbox Code Playgroud)

.net c# algorithm winforms

0
推荐指数
1
解决办法
1851
查看次数