小编xbe*_*eta的帖子

如何在Jenkins中创建用户并将其添加到组中进行身份验证?

我选择使用"Jenkins自己的用户数据库"安全领域进行用户登录,因为我无法在公司中使用LDAP.当您决定将主机名或端口号更改为其他内容时,Google的OpenID会出现问题.

我使用"基于项目的矩阵授权策略"架构来保护我的安全.

但我似乎无法创建自己的组,并将用户添加到组以管理权限.

security openid hudson ldap jenkins

59
推荐指数
3
解决办法
10万
查看次数

cURL POST --data-binary vs --form

我有一个关于cURL用法的简单问题.在我的Google搜索或手册页中找不到太多,以获得明确的答案.

这里讨论使用--datavs --form发送文件/附件.我很想知道主要区别是什么,在什么情况下你会选择--data-binaryVS --form

该POST"体"则可以通过发送--data (for application/x-www-form-urlencoded)或者--form (for multipart/form-data):

-F "foo=bar"                  # 'foo' value is 'bar'
-F "foo=<foovalue.txt"        # the specified file is sent as plain text input
-F "foo=@foovalue.txt"        # the specified file is sent as an attachment

-d "foo=bar"
-d "foo=<foovalue.txt"
-d "foo=@foovalue.txt"
-d "@entirebody.txt"          # the specified file is used as the POST body

--data-binary "@binarybody.jpg"
Run Code Online (Sandbox Code Playgroud)

post curl

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

使用Ant进行Android自定义构建

运行时会自动生成这4个文件(build.xml,local.properties,projects.properties,proguard.cfg):

android更新项目--name TestApp --target 10 -p.

更新了project.properties

更新了local.properties

添加了文件./build.xml

更新文件./proguard.cfg

但我希望"auto-gen"build.xml也包含以下"预编译"代码,有没有办法做到这一点?是否有一些"包含"文件或"模板"文件可以包括?

  <target name="config">

  <property name="config-target-path" value="${source.dir}/com/androidengineer/antbuild"/>

  <!-- Copy the configuration file, replacing tokens in the file. -->
  <copy file="config/Config.java" todir="${config-target-path}"
        overwrite="true" encoding="utf-8">
   <filterset>
    <filter token="CONFIG.LOGGING" value="${config.logging}"/>
   </filterset>
  </copy>

 </target>
Run Code Online (Sandbox Code Playgroud)

ant android build

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

使用GitPython模块获取远程HEAD分支

我正在尝试使用GitPython编写一些Python脚本,我可以使用它来简化我的日常任务,因为我管理了很多分支.

在撰写复杂的脚本时,我对Python也很陌生.

这是我使用的API:GitPython API doc

我想在GitPython中编写它,只需执行以下操作并解析显示HEAD远程分支指向的部分.换句话说,我想基本上得到remotes/origin/HEAD

$ git branch -a
  master
* branch_to_remove
  remotes/origin/HEAD -> origin/master
  remotes/origin/master
  remotes/origin/testing
Run Code Online (Sandbox Code Playgroud)

我浏览API文档很多次,起初我无法理解这些API文档的Python的格式,我找不到任何有用的东西用来做这以外remote_headclass git.refs.reference.Reference(repo, path, check_path=True)

但我甚至不知道如何调用/初始化它.

这是我到目前为止所做的,你可以告诉我我想要做什么,只需重置为'无分支'状态并删除我正在使用的当前分支:

import git
from git import *
repo = git.Repo("/some/path/testing")
repo.git.branch()
[some code to get the remotes/origin/HEAD, set it to remoteHeadBranch ]
repo.git.checkout(remoteHeadBranch)  # this should reset the Git back to 'no branch' state
repo.git.checkout(D="branch_to_remove")
Run Code Online (Sandbox Code Playgroud)

任何帮助深表感谢!

谢谢.

python git gitpython

8
推荐指数
1
解决办法
5285
查看次数

为Gerrit及其所有Git repos设置镜像的最佳方法

我有一个Gerrit服务器(名为A),我想为新服务器(名为B)设置一个镜像.我想从B中取代而不是使用A的处理能力,因为A作为主要的Gerrit服务器,当我可以使用来自B的SSH镜像时,我不想在其上添加更多的工作量.

我正在使用H2数据库,我想镜像整个Gerrit +所有的Git repos,而不仅仅是Git repos,因为我想保留Gerrit数据库的权限/历史记录.

我设法缩小了两种可行的方法:

  1. 使用"格里特复制" http://gerrit.googlecode.com/svn/documentation/2.1.6/cmd-replicate.html 不知道它的"[--url <PATTERN>]"的意思.我应该在哪里运行此命令?它是在服务器A还是B上?

  2. 使用"rsync"即可,但我无法同步review_site/etc/gerrit.config,因为它包含服务器A的IP,并且不希望在服务器B上拥有它.

git mirror gerrit

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

AWS StepFunctions - 将任务输出与原始输入合并并展平

我们如何使用Parameters,ResultPathResultSelector将 a 的结果Task与同一 JSON 级别中的原始输入结合起来?

我检查了AWS 上的文档,但似乎ResultSelector总是创建一个新字典,将其置于结果的下方 1 级。

输入示例


    {
        "status": "PENDING",
        "uuid": "00000000-0000-0000-0000-000000000000",
        "first_name": "John",
        "last_name": "Doe",
        "email": "john.doe@email.com",
        "orders": [
            {
                "item_uuid": "11111111-1111-1111-1111-111111111111",
                "quantities": 2,
                "price": 2.38,
                "created_at": 16049331038000
            }
        ]
    
    
    }

Run Code Online (Sandbox Code Playgroud)

状态机定义


    "Review": {
      "Type": "Task",
      "Resource": "arn:aws:states:us-east-1:123456789012:activity:Review",
      "ResultPath": null,
      "Next": "Processing",
      "Parameters": {
        "task_name": "REVIEW_REQUIRED",
        "uuid.$": "$.uuid"
      }
    },

Run Code Online (Sandbox Code Playgroud)

Review活动的输出示例


    {
        "review_status": "APPROVED"
    }

Run Code Online (Sandbox Code Playgroud)

问题 如何更新状态机定义以将Review活动的结果和原始输入合并为如下所示?


   {
        "status": "PENDING",
        "uuid": …
Run Code Online (Sandbox Code Playgroud)

amazon-web-services aws-step-functions

7
推荐指数
3
解决办法
3978
查看次数

测试Golang Goroutine

我一直在寻找周围,但到目前为止只进行了类似的文章写到这里通过Ariejan德弗鲁姆.

我想知道我是否可以将goroutine引入单元测试,以便它可以精确计算正在运行的goroutine的并发数量,并且可以告诉我它们是否正确地产生了我所说的数字goroutine.

我有以下代码例如..

import (
    "testing"
    "github.com/stretchr/testify/assert"
)

func createList(job int, done chan bool) {
    time.Sleep(500)
    // do something
    time.Sleep(500)
    done <- true
    return
}

func TestNewList(t *testing.T) {
  list := NewList()
  if assert.NotNil(t, list) {
    const numGoRoutines = 16
    jobs := make(chan int, numGoRoutines)
    done := make(chan bool, 1)

    for j := 1; j <= numGoRoutines; j++ {
        jobs <- j
        go createList(j, done)
        fmt.Println("sent job", j)
    }
    close(jobs)
    fmt.Println("sent all jobs")
    <-done
}
Run Code Online (Sandbox Code Playgroud)

tdd unit-testing go goroutine

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

模拟文件输入作为 Rspec 上的文件路径

我有一个关于如何使用 rspec 模拟文件输入的问题。我有以下课程代码,但不完全知道为什么要模拟文件输入。filepath/path/to/the/file

我在谷歌上进行了搜索,结果通常是加载实际文件而不是模拟,但实际上我正在寻找相反的情况,只模拟而不使用实际文件。

module Service
  class Signing
    def initialize(filepath)
      @config = YAML.load_file(filepath)
      raise "Missing config file." if @config.nil?
    end

    def sign()      …
    end

    private
    def which()     …
    end

  end 
end
Run Code Online (Sandbox Code Playgroud)

是否可以为此文件输入模拟使用 EOF 分隔符?

file =  <<EOF
A_NAME: ABC
A_ALIAS: my_alias
EOF
Run Code Online (Sandbox Code Playgroud)

ruby testing rspec mocking sinatra

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

在Java Webclient中,如何在Mono序列化中当值为null时完全省略字段

我在 Java Spring Boot 框架上,尝试使用 Mono 序列化 Java 对象以供 WebClient 用于发送。我想知道当找到该值时是否可以完全删除该字段null。我似乎没有找到办法做到这一点。试图找到一个注释来看看这是否有效。

下面是一个例子。

我有一个带有对象的 Java 类,如下所示

public class RequestBody {
  private String name_first;
  private String name_last;
  private String email_address;
}
Run Code Online (Sandbox Code Playgroud)

使用构建器模式来构建它。

RequestBody requestBody =
    RequestBody.builder()
        .name_first(input.getName().getFirst())
        .name_last(input.getName().getLast())
        .build();
Run Code Online (Sandbox Code Playgroud)

使用 WebClient + Mono 向另一个 API 进行 RESTful POST

    return requestBodySpec
      .header("Content-Type", "application/json")
      .body(Mono.just(requestBody), RequestBodyClass)
      .retrieve()
      .bodyToMono(String.class)
      .block();
Run Code Online (Sandbox Code Playgroud)

Mono 序列化后的 JSON 结果如下所示。

{
    "name_first": "Foo",
    "name_last": "Bar,
    "email_address": null
}
Run Code Online (Sandbox Code Playgroud)

期望请求 JSON 如下所示。email_address当值为空时完全删除。我们该怎么做呢?

{
    "name_first": "Foo",
    "name_last": "Bar
}
Run Code Online (Sandbox Code Playgroud)

java json spring-boot reactor-netty spring-webclient

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

重试并捕获 AWS Step Function 任务

对于 StepFunctions,我们是否可以两者兼而有之Retry,并Catch在穷尽的情况下共同努力?

这是我的用例

  1. 作业失败
  2. 重试
  3. 重试耗尽,转至 Catch
  4. 捕获所有错误,移至下一个作业,并更新数据库表以标记此作业失败(另一项任务)
  5. 或者在第一次运行或重试成功后,转移到下一个作业
    "ExecuteMyJob": {
            "Type": "Task",
            "Resource": "arn:aws:states:::glue:startJobRun.sync",
            "Parameters": {
                "JobName.$": "$.jobName",
                "Arguments.$": "$.jobArguments"
            },
            "Retry" : [{
                "ErrorEquals": [ "States.TaskFailed", "States.Runtime" ],
                "MaxAttempts": 3,
                "IntervalSeconds": 60,
                "BackoffRate": 2
            }],
            "Catch": [{
                "ErrorEquals": [ "States.ALL" ],
                "Next": "MarkJobFailOnDbTable"
            }],
            "Next": "NextJobOnPreviousSuccess"
        }
Run Code Online (Sandbox Code Playgroud)

amazon-web-services aws-step-functions

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