我正在使用 jib Gradle 插件创建一个 docker 映像并将其推送到 Azure 容器注册表。到目前为止,我已经向 Jenkins 添加了用户名/密码凭据,需要将它们传递给 Gradle。访问凭据或将凭据传递给 Gradle,它们会被屏蔽。希望您能够帮助我。以下是代码片段:
build.gradle(臂架配置):
jib {
to {
image = "myacr.azurecr.io/" + project.name
tags = ["latest"]
auth {
// retrieve from Jenkins
username System.properties['ACR_CREDENTIALS_USR']
password System.properties['ACR_CREDENTIALS_PSW']
}
}
container {
jvmFlags = ["-Xms512M", "-Xmx1G"]
ports = ["5000/tcp", "8080/tcp"]
}
}
Run Code Online (Sandbox Code Playgroud)
詹金斯档案:
pipeline {
...
environment {
ACR_CREDENTIALS = credentials('myproject-acr')
}
stages {
...
stage('Push Docker Image to Registry') {
steps {
sh "./gradlew jib -PACR_CREDENTIALS_USR=${env.ACR_CREDENTIALS_USR} -PACR_CREDENTIALS_PSW=${env.ACR_CREDENTIALS_PSW}"
}
}
...
Run Code Online (Sandbox Code Playgroud)
编辑:我的用户名有错别字
我正在尝试将日志从 Spring Boot 应用程序直接发送到 Cloudwatch。我正在使用的Logback Appender当然需要 AWS 凭证。由于大多数开发人员在他们的本地机器上没有 AWS 凭证,只想根据 logback-spring.xml 配置登录到一个文件。大多数测试在本地失败,因为缺少 aws 凭据。
有没有办法只为特定的配置文件初始化 logback appender?
这是 logback-spring.xml 的快照:
<!-- Configuration for your local environment -->
<springProfile name="${user.name}">
<root level="DEBUG">
<appender-ref ref="ROLLING_FILE" />
</root>
</springProfile>
<appender name="ROLLING_FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
...
</appender>
<!-- Configuration for Development Environment -->
<springProfile name="dev">
<root level="DEBUG">
<appender-ref ref="AWS_LOGS_DEV" />
<appender-ref ref="ROLLING_FILE" />
</root>
</springProfile>
<appender name="AWS_LOGS_DEV" class="ca.pjer.logback.AwsLogsAppender">
<layout>
<pattern>${FILE_LOG_PATTERN}</pattern>
</layout>
<logGroupName>/dev</logGroupName>
<logStreamName>log_${date}</logStreamName>
</appender>
Run Code Online (Sandbox Code Playgroud) 我正在使用现有的 cassandra 数据库开展一个项目。架构如下所示:
| 分区键(大整数) | 聚类 key1(时间戳) | 数据(文本) |
|---|---|---|
| 1 | 2021-03-10 11:54:00.000 | {a:"somedata", b:2, ...} |
我的问题是:将数据存储在 json 字符串中是否有任何优势?它会节省一些空间吗?
到目前为止,我只发现了缺点:
我注意到在某些情况下,geb选择器无法按预期工作。当我从开发人员控制台复制css selecor,css路径或xpath并将其用作geb中的选择器时,它们将无法工作。无论如何,在此示例中,我无法选择我想要的:
网站:https://money.cnn.com/data/fear-and-greed/
<div id="needleChart" style="background-image:url('//money.cnn.com/.element/img/5.0/data/feargreed/1.png');">
<ul>
<li>Fear & Greed Now: 72 (Greed)</li><li>Fear & Greed Previous Close: 72 (Greed)</li>
<li>Fear & Greed 1 Week Ago: 69 (Greed)</li><li>Fear & Greed 1 Month Ago: 58 (Greed)</li>
<li>Fear & Greed 1 Year Ago: 8 (Extreme Fear)</li>
</ul>
</div>
Run Code Online (Sandbox Code Playgroud)
现在,我想从第一个li-tag 获取文本,这是我的代码:
public class MoneyCnnFearAndGreed extends Page {
static url = 'https://money.cnn.com/data/fear-and-greed'
static content = {
fearAndGreed { $("#needleChart").$("ul li")[0].text() }
}
}
Browser.drive {
to MoneyCnnFearAndGreed
println fearAndGreed
} …Run Code Online (Sandbox Code Playgroud)