在Bash我有我PS1的
PS1="\u@\h:\w\$(git branch 2>/dev/null | grep -e '\* ' | sed 's/^..\(.*\)/{\1}/') \$ "
git branch如果我在git repo中,这将显示我的当前.
如何设置PS1in fish以便它会显示我当前的git分支?
我的Jenkins盒子需要通过他们的REST apis访问Stash和Jira.为此,我需要存储他们的凭据.
我正在做的方式是通过凭据参数,它要求我输入名称,凭据类型,必需,默认值和描述.
我将名称定义为CREDENTIAL_PARAMETER,在类型I中将其设置为"带密码的用户名",然后从默认值的列表中选择一个凭证.
接下来在Build部分中我定义了一个shell应该被执行,就像这样
echo $CREDENTIAL_PARAMETER
Run Code Online (Sandbox Code Playgroud)
我期待获得像"用户名:密码"这样的东西作为CREDENTIAL_PARAMETER.但是,我得到一个哈希,我认为是如何检索用户名和密码.
如何使用bash基于哈希获取凭据?
如何使用Consul确保只有一项服务正在执行任务?
我已经按照http://www.consul.io/中的示例进行了操作,但我并不是100%确定要走哪条路.我应该使用KV吗?我应该使用服务吗?或者我应该使用注册服务作为运行状况检查,并使群集以给定的时间间隔进行调用?
例如,假设有几个数据中心.在每个数据中心内都有许多服务在运行.这些服务中的每一项都可以发送电子邮件.这些服务必须检查是否有任何电子邮件要发送.如果有,则发送电子邮件.但是,我不希望多次发送同一封电子邮件.
如何确保所有电子邮件都被发送而且没有一次发送过多次?
我可以使用其他技术来做到这一点,但我正在尝试使用Consul实现这一点.
在Consul中,您可以将许多代理作为服务器或客户端.在所有服务器中,一个被选为领导者.从代理商的角度来看,它如何知道它是领导者?
在FiSH(友好交互式SHell)中,我可以在后台开始一个过程(something &).但是,如果我尝试检索进程的进程ID(PID=$!),我会收到来自fish的错误:
fish: Unknown command “PID=$!”. Did you mean “set PID $!”? For information on assigning values to variables, see the
help section on the set command by typing “help set”.
PID=$!: command not found
Run Code Online (Sandbox Code Playgroud)
如何检索后台进程的PID?
假设我在git中有一个branch0。
从这个branch0我创建了一个branch1并开始处理它。一段时间后,我对这个分支进行了更改1。同时branch0正在被改变。
如果我将branch1 的最新版本与branch0 进行比较,我将看到分支之间的所有更改,而不仅仅是与branch1 中的更改相关的更改。
例如,如果在branch0中修改了文件,但在branch1上未修改该文件,则会git diff显示对该文件的更改。但是该文件在branch1 上没有被修改。所以我希望它在差异中被忽略。
从某种意义上说,我想git diff在branch1和branch0之间执行 a 操作,但仅限于在branch1中修改的文件。
在git中可以吗?我可以想象在 bash 中执行此操作,列出所有文件并逐一进行比较。但想知道 git 是否有更简单的方法。
我的会话变量是'cart':
cart = {'8': ['a'], ['b'], '9': ['c'], ['d']}
Run Code Online (Sandbox Code Playgroud)
如果我想删除我的所有购物车变量,我只需在Python中执行此操作:
del request.session['cart']
Run Code Online (Sandbox Code Playgroud)
但我只是想删除键'8',所以我尝试这个但它不起作用:
del request.session['cart']['8']
Run Code Online (Sandbox Code Playgroud)
但是,如果我打印request.session ['cart'] ['8']并获得a,b
我可以让 Github 在创建评论时自动将一组人添加到评论中吗?
理想情况下,我想创建一组人,并且只有当该组中至少有一个人接受了更改时才能合并。
这群人将是该领域的中小企业。其他审阅者可以发表评论并接受,但只有至少一个 SME 接受更改后,PR 才能被合并。
是否可以在 Github 上不使用 hooks 来实现?
我正在尝试在 CloudFormation 中创建一个 AWS 堆栈,该堆栈在 JSON 中有一个秘密。
我不希望参数中显示机密的值,也不希望我的实例(fargate 或 ec2)访问机密管理器。我希望 CloudFormation 从秘密管理器中检索值并在运行时将其注入模板。
这就是我所做的:
创建一个秘密
使用 Designer 创建模板
阅读秘密并创建资源。在这种情况下,我正在创建一个将秘密标记为标签的存储桶。我知道这不安全,但存储桶仅用作概念证明。
验证存储桶是否包含带有秘密的标签
这是我的模板:
{
"AWSTemplateFormatVersion": "2010-09-09",
"Description": "create a single S3 bucket",
"Resources": {
"SampleBucket": {
"Type": "AWS::S3::Bucket",
"Properties": {
"BucketName": "asantostestbucket",
"Tags" : [
{
"Key" : "keyname",
"Value" : "{{resolve:secretsmanager:dev/learning:SecretString:hello}}"
}
]
}
}
}
}
Run Code Online (Sandbox Code Playgroud)
这给了我错误One or more tags are not valid。
我如何向 CloudFormation 表明我希望它读取机密,而不是尝试将标签作为文本读取?换句话说,将“{{resolve:secretsmanager:dev/learning:SecretString:hello}}”替换为值,而不是将其作为文本阅读。