标签: continuous-deployment

如何使用私有文件配置TeamCity?

我正在为持续集成和(希望)持续部署设置TeamCity.一些构建步骤将涉及私有文件,例如

  • 用于强命名.NET程序集的.snk文件
  • 发布工件的密码/令牌文件(例如,NuGet或CodePlex)

由于这些文件包含私有数据,我不想将它们放入(可公开访问的)源代码控制系统中.

我正在为AutoFixture设置http://teamcity.codebetter.com,所以我没有物理访问服务器.我希望有一个功能可以让我上传这样的文件,但找不到任何类似的东西.

什么是最合适的解决方案?

.net teamcity continuous-integration continuous-deployment

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

分支不存在

命令

git branch --set-upstream-to develop origin/develop
Run Code Online (Sandbox Code Playgroud)

导致错误

fatal: branch 'origin/develop' does not exist
Run Code Online (Sandbox Code Playgroud)

我不确定除了原点之外,这意味着什么不存在.这是否意味着它不存在于服务器或本地计算机上?

我是一个git新手,但我正在设置我的网站来处理部署与git作为学习git的手段.

git branch setup-deployment continuous-deployment git-branch

10
推荐指数
1
解决办法
2万
查看次数

如何将create-react-app部署到Web主机(例如Siteground)?

我正在使用create-react-app构建一个react项目,并试图找出如何将我的代码部署到Siteground上的托管服务器.

有谁知道最好的方法吗?我是否通过FTP导入我的构建文件夹?我可以通过GitHub自动化流程吗?

提前致谢!

github web-deployment continuous-deployment reactjs create-react-app

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

在jenkins上持续部署基于OSGi的应用程序

花了几个小时,试图了解如何使后持续部署的工作在的情况下,基于OSGi的应用程序,我终于摆在我的计算器的第一个问题,希望对我可能做错了或漏掉某些适应症-不知何故我觉得自己走错了路......

这就是我想要实现的目标:

  1. 构建一些bundle并将它们安装到maven存储库(这里没问题,使用bnd)

  2. 现在让所有捆绑包组成我的应用程序(通过所有测试等),我想部署并运行应用程序,即使用这些捆绑包启动一些OSGi框架.

  3. 开始不是问题 - "mvn pax:provision -Dframework = equinox"可以解决问题.我的应用程序启动jetty,因此很容易通过浏览器验证看起来是否正常(除了所有测试)

  4. 但是,现在,尝试"连续",下次我想应用此过程时,我真的应该确保首先关闭我的应用程序的运行实例(至少释放正在使用的端口).所以,为了重新运行一切,我不得不首先关闭旧安装.

这就是我的问题开始的地方:有什么能帮我解决这个问题吗?我知道有maven-deploy-plugin,但这在将一些WAR/EAR文件部署到某个标准应用程序容器中时似乎很有用(似乎不需要重新启动它).

我真的只需要运行一些脚本来启动 OSGi环境 - 然后,下次再将它关闭,然后再重新启动它.使用tomcat,jetty,jboss等,有一些shutdown.sh脚本或mvn jetty:停止指令,但我真的必须自己写这些脚本吗?这是我认为我开始走错路的地方,有人必须在我面前遇到这些问题并解决它们我猜;)

我知道我可以以某种方式尝试使用JMX或使用telnet控制台访问正在运行的实例以发出"stop 0"命令,但这感觉不对.

从jenkins开始的进程应该编译/构建/部署项目,但是我猜不会启动长时间运行的线程,所以我不得不启动一些"外部"进程,我想在下次再次尝试时先杀死它.

有任何想法吗?也许我错过了什么?提前感谢您对此的任何意见!

osgi continuous-deployment pax-runner jenkins bnd

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

使用连续或自动部署时,如何部署数据库?

我正在考虑按需实施Team City和Octopus Deploy for CI和Deployment.但是,数据库部署将变得棘手,因为许多旧的.net应用程序具有混乱的数据库.

Redgate似乎对Team City有一个很好的插件,但价格可能是绊脚石

你用什么?我很高兴执行脚本,但这是比较方面(即已发生变化)我正在努力.

database continuous-integration continuous-deployment

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

terraform 验证错误:需要参数“区域”,但未设置

RDS为我的开发团队编写了一个自定义模块,用于部署RDS实例。我正在使用BitBucket源代码控制,并且我正在尝试集成一个BitBucket管道以terraform validate在我的.tf文件上运行以验证语法,然后再将其提供给开发人员使用。terraform init运行良好,但是当我运行时terraform validate出现以下错误:Error: Missing required argument. The argument "region" is required, but was not set.查看文档后,我很困惑,如果该命令实际上没有部署任何内容,为什么会检查已声明的提供程序?诚然,我是编写模块的新手。也许这不是我想要完成的正确命令?

Terraform version: v0.12.7

AWS Provider version: 2.24

bitbucket-pipelines.yml:

image: hashicorp/terraform:full

pipelines:
  branches:
    master:
    - step:
        script:
          - terraform version
          - terraform init
          - terraform validate
Run Code Online (Sandbox Code Playgroud)

Module tree:

??? CHANGELOG.md
??? README.md
??? bitbucket-pipelines.yml
??? main.tf
??? modules
?   ??? db_instance
?   ?   ??? README.md
?   ? …
Run Code Online (Sandbox Code Playgroud)

bitbucket continuous-deployment terraform terraform-provider-aws

9
推荐指数
2
解决办法
9169
查看次数

如何使用设置的环境变量将React应用程序从Github部署到AWS S3存储桶注意:我没有在github中推送.env文件

你好 React 专家(尤其是具有 CI/CD 知识的),

\n

请仔细阅读并提供一些可能的方法。

\n
\n

背景:

\n
    \n
  • 我使用“create-react-app”创建了一个反应应用程序
  • \n
  • command\xc2\xa0 我已经为不同的环境创建了 3\xc2\xa0.env 文件,例如 \xc2\xa0.env.development、.env.staging 和 \xc2\xa0.env.Production。
  • \n
  • 出于安全原因,我们不应该将这些\xc2\xa0.env 文件推送到公共 Github 存储库
  • \n
  • 我已对 .gitignore 文件采取了必要的步骤
  • \n
\n
\n

现在,我想将我的代码从 Github 直接部署到设置了这些环境变量的 AWS S3 存储桶。\n如何执行此操作?

\n

注意:我还没有将我的\xc2\xa0.env 文件推送到Github.b 中,所以我的Github 存储库不包含那些\xc2\xa0.env 文件。

\n

github amazon-s3 continuous-deployment reactjs

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

Github Actions - 有没有办法在获得正确反馈的同时继续出错?

我是 Github Actions 的新手,我正在尝试找到一种方法来实现以下功能:每当一个步骤失败时,它会显示它失败(将提供正确的反馈),但仍会继续执行其他步骤。

目前,失败导致步骤停止:

步骤失败阻止下一步开始

我见过最流行的建议是使用 continue-on-error,但这似乎使该步骤的结论为“成功”,除非您进入日志,否则不会显示它失败。

失败的步骤似乎是成功的

在上面的屏幕截图中,“秘密”步骤失败了,但除非输入日志,否则它似乎是成功的。

在阅读此线程时,我开始怀疑 GH 操作中可能尚不存在此功能。

我还尝试为每个步骤和/或工作使用条件。例如,我尝试过: if: ${{ success() }} || ${{ failure() }} - 这根本没有提供所需的功能,步骤失败并且下一步没有开始。

if: succeeded() || failed()- 从上面的 Github 社区线程中获取此语法,但它生成了一个语法错误(这是有道理的,因为它与此处指定的语法不兼容)。

总而言之,我正在寻找一种方法来使失败的步骤表明它们失败了,并且仍然使工作流继续进行下一步。

谢谢!

continuous-integration continuous-deployment github-actions

9
推荐指数
3
解决办法
3498
查看次数

Terraform 从环境中读取变量

我编写了一个带有变量定义的 terraform 配置,例如:

variable "GOOGLE_CLOUD_REGION" {
  type = string
}
Run Code Online (Sandbox Code Playgroud)

当我运行时,terraform plan系统会要求我填写此变量,即使此变量是在我的环境中设置的。

有没有办法告诉 terraform 使用当前的环境变量?或者我是否必须导出它们并以某种方式手动将它们一一传递?

continuous-integration continuous-deployment terraform

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

为 Google Cloud Run 应用程序设置多个环境(例如开发、阶段和生产)的理想方法是什么?

我已经使用 Cloud Build 等在 Google Cloud Run 上启动并运行了一个示例应用程序,并附带来自 GitHub 的 CD。我希望将不同的分支部署到不同的环境(开发、阶段产品等),但是文档没有暗示任何类型的设置。

我能想到的最简单的方法是在不同的分支 RegExes 上使用 Cloud Build 触发器设置单独的 Cloud Runs,但我想知道是否有更优雅的解决方案,因为这仍然感觉像是一种非常“手动”的方法来实现什么我想。

我找到了一个答案(如何让 Cloud Run 处理多个同时部署?),它证实这是一种已遵循的做法,但我只是想确认这是否确实是最好的方法,或者 GCP 是否提供了更好的方法这个目的。

我对 Google Cloud Run 以及整个 Google Cloud Platform 都是新手。

production-environment staging continuous-deployment google-cloud-platform google-cloud-run

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