Bitbucket 激活

文章讲述了用户在配置Bitbucket时遇到密钥无效的问题,解决方法是调整JAVA_OPTS设置,特别是在非Docker环境下对.atlassian-agent和catalina.sh文件的正确配置,以及如何设置自动启动服务和处理remoteagent网络问题。

明明按照文档中说的配置了agent,并且成功激活了confluence,但Bitbucket激活时提示生成的密钥无效

这种情况往往是 JAVA_OPTS 设置的问题,如果是按照下边方式设置的 JAVA_OPTS ,会出现激活失败

  • 你可以把:export JAVA_OPTS="-javaagent:/path/to/atlassian-agent.jar ${JAVA_OPTS}" 这样的命令放到 .bashrc 或 .bash_profile 这样的文件内。

原因即是 Bitbucket 并没有使用全局设置的这个变量,主要还是依赖的其自身目录中 安装目录下/bin/_start-webapp.sh 中的配置,所以编辑这个文件,修改

JAVA_OPTS="-classpath $INST_DIR/app $JAVA_OPTS $BITBUCKET_ARGS $JMX_OPTS $JVM_REQUIRED_ARGS $JVM_SUPPORT_RECOMMENDED_ARGS"

处为

JAVA_OPTS="-javaagent:/atlassian-agent存放目录/atlassian-agent.jar -classpath $INST_DIR/app $JAVA_OPTS $BITBUCKET_ARGS $JMX_OPTS $JVM_REQUIRED_ARGS $JVM_SUPPORT_RECOMMENDED_ARGS"

再重新尝试激活即可

参考文档doc/Bitbucket_FAQ.md · 追梦的神仙鱼/atlassian-agent - Gitee.com

-----------------------------------------------------------------------------------------------------------------------

注,如果不是Docker安装方式,而是在linux环境,使用官方的安装包https://www.atlassian.com/software/bamboo/downloads/binary/atlassian-bamboo-9.6.1.tar.gz

在运行./bin/start-bamboo.sh之前,

先修改./bin/catalina.sh文件,在以下配置语句后

# Make the umask available when using the org.apache.catalina.security.SecurityListener
JAVA_OPTS="$JAVA_OPTS -Dorg.apache.catalina.security.SecurityListener.UMASK=`umask`"
添加下一行:

JAVA_OPTS="-javaagent:/opt/atlassian/bitbucket/atlassian-agent.jar -classpath $INST_DIR/app $JAVA_OPTS $BITBUCKET_ARGS $JNDI_ARGS $JMX_OPTS $JVM_REQUIRED_ARGS $JVM_SUPPORT_RECOMMENDED_ARGS"
 

注意:要把atlassian-agent.jar文件拷贝到/opt/atlassian/bitbucket/目录

详细安装过程可以参考Centos7上安装、破解bamboo6.0.3-优快云博客

-----------------------------------------------------------------------------------------------------------------------

如果要设置为自动启动服务,请务必在./bin/setenv.sh中最后一行添加

export JAVA_HOME=/home/bjx/bamboo/jdk-17.0.11
export PATH=$JAVA_HOME/bin:$PATH
确保jdk符合软件安装系统要求。

最后home目录要设置为服务用户(bamboo)可以读写

sudo chmod -R 777 /var/atlassian/application-data/bamboo/

参考资料Running Bamboo as a Linux service | Atlassian Support | Atlassian Documentation

关于remote agent的坑

代理无法上网,可能会影响连接,报如下错误WARN [ActiveMQ Task-1] [FailoverTransport] Failed to connect to [ssl://192.168.8.7:54663?socket.verifyHostName=false&wireFormat.maxInactivityDuration=90000] after: 1 attempt(s) with Connection or outbound has closed, continuing to retry.

参考资料Troubleshooting Remote Agents | Bamboo | Atlassian Documentation

Bitbucket Pipelines 中集成 Google Cloud Platform(GCP)进行持续集成/持续部署(CI/CD)涉及多个关键步骤,包括配置服务账户、设置 Bitbucket Pipelines 的 YAML 文件以及确保安全凭据的正确管理。 ### 配置 GCP 服务账户 GCP 服务账户用于在 Bitbucket Pipelines 中运行任务时进行身份验证。创建服务账户时,应赋予其适当的角色权限,例如 `Cloud Run Admin` 或 `Storage Admin`,具体取决于部署目标。服务账户的密钥文件需要以 JSON 格式下载,并将其内容编码为 Base64,以便在 Bitbucket Pipelines 中使用。该密钥文件包含敏感信息,因此应妥善保管,避免泄露。 ```bash cat service-account.json | base64 ``` ### 配置 Bitbucket Pipelines 在 Bitbucket 项目的根目录中创建 `bitbucket-pipelines.yml` 文件,以定义构建和部署流程。以下是一个示例配置,展示了如何在 Bitbucket Pipelines 中使用 GCP 服务账户进行身份验证,并部署到 Cloud Run: ```yaml image: google/cloud-sdk:latest pipelines: default: - step: name: "Deploy to Cloud Run" script: - echo $GOOGLE_APPLICATION_CREDENTIALS | base64 -d > service-account.json - gcloud auth activate-service-account --key-file service-account.json - gcloud config set project $GCP_PROJECT_ID - gcloud run deploy my-service --image gcr.io/$GCP_PROJECT_ID/my-image --region us-central1 --platform managed --allow-unauthenticated ``` 在此配置中,首先使用 `google/cloud-sdk` 镜像,然后通过环境变量 `GOOGLE_APPLICATION_CREDENTIALS` 设置服务账户的凭证。接下来,使用 `gcloud` 命令激活服务账户,并设置 GCP 项目 ID。最后,使用 `gcloud run deploy` 命令将服务部署到 Cloud Run [^1]。 ### 安全凭据管理 为了确保安全性,敏感信息如服务账户的 Base64 编码应存储在 Bitbucket 的环境变量中,而不是直接硬编码在 `bitbucket-pipelines.yml` 文件中。例如,可以将 Base64 编码的 JSON 密钥存储在名为 `GOOGLE_APPLICATION_CREDENTIALS` 的环境变量中,而项目 ID 则存储在 `GCP_PROJECT_ID` 中。这样可以避免在版本控制中暴露敏感信息。 ### 相关问题 1. 如何在 Bitbucket Pipelines 中使用 Docker 镜像进行 GCP 部署? 2. 如何在 GCP 中配置 Cloud Run 以支持无服务器部署? 3. 如何在 Bitbucket Pipelines 中实现自动化测试和部署流程? 4. 如何在 GCP 中管理服务账户权限以确保安全性? 5. 如何在 Bitbucket Pipelines 中使用环境变量管理不同部署环境的配置?
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值