小编ndu*_*eck的帖子

如何将 Jenkins 凭据传递给 gradle?

我正在使用 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)

编辑:我的用户名有错别字

gradle jenkins jenkins-pipeline jib

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

用于 Spring Boot 应用程序的 AWS Cloudwatch Logback Appender

我正在尝试将日志从 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)

java logback amazon-cloudwatch spring-boot

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

Cassandra 中的单数据列与多列

我正在使用现有的 cassandra 数据库开展一个项目。架构如下所示:

分区键(大整数) 聚类 key1(时间戳) 数据(文本)
1 2021-03-10 11:54:00.000 {a:"somedata", b:2, ...}

我的问题是:将数据存储在 json 字符串中是否有任何优势?它会节省一些空间吗?

到目前为止,我只发现了缺点:

  • 您不能(轻松)在运行时添加/删除列,因为应用程序可能会覆盖 json 字符串列。
  • 解析 json 字符串是目前性能的瓶颈。

java cassandra

3
推荐指数
1
解决办法
83
查看次数

Geb选择器未选择

我注意到在某些情况下,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 &amp; Greed Previous Close: 72 (Greed)</li>
        <li>Fear & Greed 1 Week Ago: 69 (Greed)</li><li>Fear &amp; 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)

groovy selenium web-scraping geb

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