小编Mar*_*son的帖子

如何只在Jenkins多分支管道作业中构建一个目录?

我有一个名为multibranch-test的github repo,有两个子目录Project1,Project2.

PS C:\Repos\multibranch-test> tree . Folder PATH listing for volume Windows Volume serial number is 2085-6D3D C:\REPOS\MULTIBRANCH-TEST ????Project1 ????Project2

每个子目录都有一个Jenkins文件和该项目的代码.

在Jenkins中,我有两个multibranch管道作业 - 一个用于Project1,另一个用于Project2.在Project1的配置中,如果在Project2的子目录中推送了提交,我不希望推送通知或轮询来构建Project1.

所以在Project1中我配置了附加行为:

  • 高级克隆行为:检查浅克隆
  • 稀疏结帐路径设置为Project1#
  • 轮询忽略某些路径中的提交
    • 包含的地区: Project1/*
    • 被排除的地区:*
  • 构建配置:脚本路径:Project1/Jenkinsfile

正在发生的事情是,如果我把一个犯子目录掌握Project2中, PROJECT1和Project2的工作得到建造.我只想要构建Project2.有人可以指出我做错了吗?

两个项目的Jenkinsfiles类似,看起来像:

#!groovy
node  {
    stage ('checkout') {
        checkout scm
    }

    stage ('build') {
        dir ('Project1') {
            bat 'powershell -Command gci'
            bat 'powershell -Command gci env:'
            bat 'powershell -File .\\Project1.ps1'
        }
    }
Run Code Online (Sandbox Code Playgroud)

jenkins multibranch-pipeline

10
推荐指数
2
解决办法
4860
查看次数

如何将XML读入DataTable?

string在内存中有一些XML,如下所示:

<symbols>
  <symbol>EURCHF</symbol>
  <symbol>EURGBP</symbol>
  <symbol>EURJPY</symbol>
  <symbol>EURUSD</symbol>
</symbols>
Run Code Online (Sandbox Code Playgroud)

我想把它读成一个DataTable.我是这样做的:

DataTable dt = new DataTable();
dt.TableName = "symbols";
dt.Columns.Add("symbol");

if (!String.IsNullOrEmpty(symbols))
{
    dt.ReadXml(new StringReader(symbols));
}
Run Code Online (Sandbox Code Playgroud)

但是当我检查行数时,DataTable最终会有零行.我究竟做错了什么?

c# xml datatable

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

如何在NUnit 2.5中使用TestCase?

我有一个Currency类,我使用NHibernate持久保存到我的数据库.Currencyclass看起来像这样:

public class Currency : Entity
{
    public virtual string Code { get; set; }
    public virtual string Name { get; set; }
    public virtual string Symbol { get; set; }        
}
Run Code Online (Sandbox Code Playgroud)

我用这样写了一个单元测试[TestCase]:

    [TestCase(6,Result = new Currency ({ Code="GBP", Name="British Pound", Symbol="£"}))]
    public Currency CanGetCurrencyById(int id)
    {
        ICurrencyRepo currencies = new RepoFactory().CreateCurrencyRepo(_session);
        Currency c = currencies.GetById<Currency>(id);

        return c;
    }
Run Code Online (Sandbox Code Playgroud)

我知道这是错的,但我不确定如何写它.结果可以object吗?

c# nunit unit-testing testcase

8
推荐指数
2
解决办法
2万
查看次数

如何将本地Subversion repo转换为bitbucket上托管的hg?

我目前使用Subversion在我的网络上使用本地Debian Linux机器对我的ASP.NET和C#源代码进行版本化.我在本地的回购路径是:http://carbon.local/svn/main/WebSites/MooDB

我想将我的源代码移到Mercurial并将其托管在bitbucket.org上.我在bitbucket上设置了一个帐户,想要将我的本地SVN转换为Hg,然后将带有历史记录的repo上传到bitbucket.bitbucket repo在这里:

https://bitbucket.org/keymoo/moodb

我已经完成了一些谷歌搜索并在临时工作目录中尝试了这个(在Windows 7上运行并安装了TortoiseHg):

hg convert http://carbon.local/svn/main/WebSites/MooDB

这会创建一个.hg文件夹,我在其中运行命令,但我的源代码尚未复制.我也不确定如何将回购和历史变成bitbucket.请帮忙,我只想尽快在bitbucket上启动并运行我的repo +历史记录.

svn mercurial bitbucket

7
推荐指数
2
解决办法
1560
查看次数

NHibernate中的对象生命周期

我认为我在概念上缺少关于NHibernate的东西.我有一个Instrument对象映射到instruments我的数据库中的表.我还有一个BrokerInstrument对象映射到brokerInstruments我的数据库中的表.brokerInstrumnets是一张儿童桌instruments.我的课程看起来像:

public class Instrument : Entity
{
    public virtual string Name { get;  set; }
    public virtual string Symbol {get;  set;}
    public virtual ISet<BrokerInstrument> BrokerInstruments { get; set; }
    public virtual bool IsActive { get; set; }        
}

public class BrokerInstrument : Entity
{
    public virtual Broker Broker { get; set; }
    public virtual Instrument Instrument { get; set; }
    public virtual decimal MinIncrement { get; set; } …
Run Code Online (Sandbox Code Playgroud)

.net nhibernate lifecycle

7
推荐指数
1
解决办法
452
查看次数

如何使用凭证测试写入文件共享路径?

我有一个Credential对象数组,我想测试这些凭据是否有权将文件写入文件共享.

我打算做点什么

$myPath = "\\path\to\my\share\test.txt"
foreach ($cred in $credentialList)
{
    "Testing" | Out-File -FilePath $myPath -Credential $cred
}
Run Code Online (Sandbox Code Playgroud)

但后来我发现Out-FileCredential作为参数.解决这个问题的最佳方法是什么?

powershell powershell-2.0

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

如何从PowerShell中删除数组中的项?

我正在使用Powershell 1.0从数组中删除项目.这是我的脚本:

param (
    [string]$backupDir = $(throw "Please supply the directory to housekeep"), 
    [int]$maxAge = 30,
    [switch]$NoRecurse,
    [switch]$KeepDirectories
    )

$days = $maxAge * -1

# do not delete directories with these values in the path
$exclusionList = Get-Content HousekeepBackupsExclusions.txt

if ($NoRecurse)
{
    $filesToDelete = Get-ChildItem $backupDir | where-object {$_.PsIsContainer -ne $true -and $_.LastWriteTime -lt $(Get-Date).AddDays($days)}
}
else
{
    $filesToDelete = Get-ChildItem $backupDir -Recurse | where-object {$_.PsIsContainer -ne $true -and $_.LastWriteTime -lt $(Get-Date).AddDays($days)}
}

foreach ($file in $filesToDelete)
{       
    # remove …
Run Code Online (Sandbox Code Playgroud)

arrays powershell arraylist

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

如何附加到PowerShell Hashtable值?

我正在通过一个Microsoft.SqlServer.Management.Smo.Server对象列表进行交互,并将它们添加到哈希表中,如下所示:

$instances = Get-Content -Path .\Instances.txt
$scripts = @{}

foreach ($i in $instances)
{
    $instance = New-Object Microsoft.SqlServer.Management.Smo.Server $i
    foreach($login in $instance.Logins)
    {
        $scripts.Add($instance.Name, $login.Script())       
    }
}
Run Code Online (Sandbox Code Playgroud)

到现在为止还挺好.我现在想要做的是在哈希表值的末尾附加一个字符串.因此,对于$实例,我想将一个字符串附加到该$实例的哈希表值.我该怎么办?我已经开始这样了,但我不确定我是否走在正确的轨道上:

foreach ($db in $instance.Databases)
{       
    foreach ($luser in $db.Users)
    {
        if(!$luser.IsSystemObject)
        {
            $scripts.Set_Item ($instance, <what do I add in here?>)
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

干杯

sql-server powershell smo hashtable

6
推荐指数
1
解决办法
1万
查看次数

如何检查是否配置了代理服务器?

当我在Internet Explorer中定义Web代理时,我有一些运行正常的代码.但是,如果没有定义则不起作用.我想检查是否定义了代理.我如何更改以下代码来做到这一点?

public DataTable GetCurrentFxPrices(string url)
{
    WebProxy wp = new WebProxy(WebProxy.GetDefaultProxy().Address.AbsoluteUri, true);
    wp.Credentials = CredentialCache.DefaultCredentials;

    WebClient wc = new WebClient();
    wc.Proxy = wp;

    MemoryStream ms = new MemoryStream(wc.DownloadData(url));
    DataSet ds = new DataSet("fxPrices");
    ds.ReadXml(ms);

    DataTable dt = ds.Tables["Rate"];
    int i = dt.Rows.Count;
    return dt;
}
Run Code Online (Sandbox Code Playgroud)

例如,如何在不使用代理的情况下下载数据?

UPDATE

我已将代码更改为以下内容

public DataTable GetCurrentFxPrices(string url)
{
    WebClient wc = new WebClient();

    if (!String.IsNullOrEmpty(WebProxy.GetDefaultProxy().Address.AbsoluteUri))
    {
        WebProxy wp = new WebProxy(WebProxy.GetDefaultProxy().Address.AbsoluteUri, true);
        wp.Credentials = CredentialCache.DefaultCredentials;
        wc.Proxy = wp;
    }            

    MemoryStream ms = new MemoryStream(wc.DownloadData(url)); …
Run Code Online (Sandbox Code Playgroud)

c# proxy c#-4.0

6
推荐指数
1
解决办法
1万
查看次数

正则表达式从完全限定的域名中提取主机名

我对正则表达式非常生疏,需要一个从完全限定域名(FQDN)中提取主机名,这是我所拥有的示例:

myhostname.somewhere.env.com
myotherhostname.somewhereelse.insomeotherplace.byh.info
Run Code Online (Sandbox Code Playgroud)

我想回来

myhostname
myotherhostname
Run Code Online (Sandbox Code Playgroud)

非常感谢您的帮助

我尝试过,"(.+)\."但是它匹配了右边的字符串并产生了:

myhostname.somewhere.env.
myotherhostname.somewhereelse.insomeotherplace.byh.
Run Code Online (Sandbox Code Playgroud)

regex

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