我正在尝试从Cloud Formation创建弹性容器服务(ECS)设置.
但是,我不希望ECS存储库具有丑陋的自动生成的URI:
111111111.dkr.ecr.us-east-1.amazonaws.com/docker-repo.company.com
但相反,我希望它有一个漂亮和有光泽
docker-repo.company.com
存储库本身不允许设置URI 甚至是CNAME.所以我试图设置一个S3存储桶重定向到repo.但是,除非我遗漏了某些东西,否则Cloud Formation不支持这个,因为使用!Ref或!GetAtt我无法在AWS :: ECR :: Repository对象中查询,它将为我提供存储库URI.
我错过了什么吗?谢谢!
amazon-s3 amazon-web-services amazon-ecs aws-cloudformation docker
在我正在进行的项目中,我们在/ branches和/ tags文件夹中有很多文件夹(从Subversion迁移到Perforce后留下).
我想清理这些混乱 - 我想直接在软件仓库上远程移动/复制/重命名文件夹,而不是在本地获取它们.我无法在本地获取它们,因为我们谈论的是数百GB,可能是数百万个文件 - 数十个分支x~5GB.
是否可以订购Perforce来移动服务器上的文件夹?
(我没有直接访问Perforce机器,我无法在服务器上移动文件夹或更新Perforce数据库).
启动前提:限制性很强的环境,Windows 7 SP1,Powershell 3.0。使用外部库的可能性有限或不可能。
我正在尝试重写我之前创建的 bash 工具,这次使用 PowerShell。在 bash 中,我实现了自动完成以使该工具更加用户友好,我想为 PowerShell 版本做同样的事情。
bash 版本是这样工作的:
./launcher <Tab> => ./launcher test (or dev, prod, etc.)
./launcher test <Tab> => ./launcher test app1 (or app2, app3, etc.)
./launcher test app1 <Tab> => ./launcher test app1 command1 (or command2, command3, etc.).
Run Code Online (Sandbox Code Playgroud)
如您所见,一切都是动态的。环境列表是动态的,应用程序列表是动态的,根据选择的环境,命令列表也是动态的。
问题出在测试 → 应用程序连接上。我想根据用户已经选择的环境显示正确的应用程序。
使用 PowerShell 的 DynamicParam,我可以获得基于文件夹列表的动态环境列表。然而,我不能(或者至少我还没有找到如何)做另一个文件夹列表,但这次使用基于现有用户选择的变量。
当前代码:
function ParameterCompletion {
$RuntimeParameterDictionary = New-Object Management.Automation.RuntimeDefinedParameterDictionary
# Block 1.
$AttributeCollection = New-Object Collections.ObjectModel.Collection[System.Attribute]
$ParameterName = "Environment1"
$ParameterAttribute = New-Object Management.Automation.ParameterAttribute
$ParameterAttribute.Mandatory = $true …Run Code Online (Sandbox Code Playgroud) Jenkins的openstack-plugin使用openstack4j与openstack云交谈.我正在寻找一种方法,我们可以从客户端的角度监控openstack4j所做的http(s)API调用量.
一些可能的事情要知道:
我在 VPC 中有一个 RDS 集群。我已按照本指南中所述配置了 QuickSight 对其的访问权限:
https://aws.amazon.com/premiumsupport/knowledge-center/quicksight-redshift-private-connection/
但是,即使按照此处所述配置 VPC 连接后,当我尝试创建数据源时,数据源创建屏幕会显示:
实例 ID 为必填项
该账户在该区域没有可用实例
并且验证是不可能的(不起作用?),说“未验证”。
有人遇到过这个吗?据我所知,子网和安全组是根据需要配置的
我不想看到整个历史或差异(所以 git log --follow filename不是我要找的)。
我想找出可能已重命名文件的提交 ID,以便找出更改的日期和时间。
git可以这样做吗?我的 Google Fu 很弱,我找不到任何关于此的信息。
假设使用 AWS CLI 调用 AWS Lambda,是否有任何方法可以为调用传递不同的环境变量值?
我看到上下文可以传递,但我没有看到环境。
我似乎找不到办法
既然 Powershell 是开源且跨平台的(带有 Powershell Core),我想我会再试一次。
\n\n我过去曾使用过,并且在某些时候已经弄清楚了管道是如何工作的,但它并不是非常直观。应该是,但事实并非如此,所以我有点卡住了......
\n\n手头的任务:解析并打印命令的 JSON 输出中的多个字段。我可能可以用老式的方式来做到这一点,使用外部命令和字符串处理,\xc3\xa0 la bash,但我想学习如何以Powershell方式\xe2\x84\xa2来做到这一点。
\n\n澄清一下,我想在管道中以交互方式进行。我不想编写脚本,我想学习如何在一行(或最多 2 行,但基本上使用 Powershell 作为 REPL,而不是作为脚本工具)中进行这种处理。
\n\naws cloudformation describe-stack-events --stack-name some-stack-here | jq ".StackEvents[] | [.Timestamp, .ResourceStatus, .ResourceType, .ResourceStatusReason] | join(\\" \\")"
它的作用是获取输入 JSON 并仅打印我感兴趣的 3 个字段。
\n\n{\n "StackEvents": [\n {\n "StackId": "arn:aws:cloudformation:some-region-here:some-number-here:stack/some-stack-here/some-id-here",\n "EventId": "some-event-id-here",\n "ResourceStatus": "UPDATE_COMPLETE",\n "ResourceType": "AWS::CloudFormation::Stack",\n "Timestamp": "some-date-here",\n "StackName": "some-stack-here",\n "PhysicalResourceId": "arn:aws:cloudformation:some-region-here:some-number-here:stack/some-stack-here/some-id-here",\n "LogicalResourceId": "some-stack-here"\n },\n {\n "StackId": "arn:aws:cloudformation:some-region-here:some-number-here:stack/some-stack-here/some-id-here",\n "EventId": "some-event-id-here",\n "ResourceStatus": "UPDATE_COMPLETE_CLEANUP_IN_PROGRESS",\n …Run Code Online (Sandbox Code Playgroud) 我一直在尝试在 Jenkins 声明式管道中运行一个特权容器,但我找不到文档中的语法或任何示例。到目前为止,我拥有一个非特权容器:
pipeline {
agent none
stages {
stage("Build") {
agent {
docker { image "hello-world" }
}
}
}
}
Run Code Online (Sandbox Code Playgroud)
这似乎是一个常见的用例,我不敢相信没有人已经遇到过:(
我正在尝试使用 Ansible 和 systemd 设置一些用户服务。
在 Ubuntu 和 RHEL 7 上我得到
# systemctl --user status
Failed to get D-Bus connection: Connection refused
Run Code Online (Sandbox Code Playgroud)
对于Ubuntu我澄清了这个错误,这是因为:
https://docs.ansible.com/ansible/latest/modules/systemd_module.html
在给定的服务管理器作用域内运行 systemctl,可以是默认系统作用域 (system)、当前用户作用域 (user) 或所有用户作用域 (global)。为了使 systemd 能够与“用户”一起工作,执行用户必须启动自己的 dbus 实例(systemd 要求)。用户 dbus 进程通常在正常登录期间启动,但在 Ansible 任务运行期间不会启动。否则,您可能会收到“无法连接到总线:没有此类文件或目录”错误。
基本上DBus需要启动才能systemd --user工作。我也不知道该怎么做,但我想我可以通过其他方式解决这个问题。
然而,现在的主要障碍是:一般来说,我如何检查功能的可用性?
我尝试过systemctl show,没有明确的“用户”功能。标志是Features行中的“+PAM”吗?我知道 systemd 至少部分使用 PAM 来实现它,我不知道其他功能是否需要它。
如何检查“我的”systemd 是否--user以可靠的方式支持?有我可以检查的文件吗?命令?还有别的事吗?DBus巫毒?
docker ×2
jenkins ×2
powershell ×2
amazon-ecs ×1
amazon-rds ×1
amazon-s3 ×1
amazon-vpc ×1
ansible ×1
autocomplete ×1
aws-cli ×1
aws-lambda ×1
bash ×1
dbus ×1
depot ×1
git ×1
json ×1
linux ×1
openstack4j ×1
perforce ×1
systemd ×1