标签: workflow

帮助我改进我的持续部署工作流程

我一直在为PHP项目开发一个实现大多数自动化连续部署周期的工作流程.我想对此工作流程中可能的流程或技术瓶颈,改进建议以及如何更好地自动化和增加团队易用性的想法提供一些反馈.


核心组件:


编辑:我已经改变了工作流程图形采取ircmaxwell的贡献考虑在内:删除PHPUnit的扩展Selenium RC和运行这些测试仅作为QC阶段的一部分; 增加QC阶段; 在代码审查之后但在合并之前移动UI测试; 在QC阶段之后移动合并; 合并后移动部署.

此工作流程图描述了该过程.我的问题/想法/关注如下.

持续部署工作流程

我的疑虑/想法/问题:

  • 使用该系统的总体困难.

  • 时间参与.

  • 难以招聘Gerrit.

  • 难以招聘Puppet.

  • 我们稍后将在Amazon EC2实例上进行部署.如果我们要了解如何设置Debian与包Puppet和部署到Linode现在片,有没有对工作部署的潜力Linode来打破EC2?我们应该从一开始就进行构建和部署EC2吗?

  • 另一个问题:EC2Puppet.我们也在考虑使用Scalr作为解决方案.是否有必要避免Puppet单独开销并投资Scalr?我这里有关于成本的次要问题(ha!); 该Selenium试验不应该运行的是往往是EC2建立实例运行24/7,但对于像五分钟的身材,对于一个小时支付 …

php workflow continuous-integration hudson selenium-rc

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

您对Windows Workflow Foundation有哪些经验?

我正在评估WF在网络上的业务应用程序中使用,我很想听听最近这个技术的第一手资料.

我最关心的是提高项目的可维护性,并在处理频繁变化的复杂流程时提高开发人员的工作效率.

我真的很喜欢WF的想法,但是它似乎相对不为人知,而且我发现许多较老的评论都提到它一旦进入它就会非常复杂.

如果它被过度设计到一个中小型项目无法使用(或不好的权衡),那就是我需要知道的事情.

当然,它已经从2006年底开始,所以也许它已经成熟了.如果是这样的话,这是另一条非常有用的信息!

提前致谢!

.net asp.net workflow workflow-foundation

34
推荐指数
6
解决办法
5395
查看次数

为什么要使用Windows Workflow?

使用Windows Workflow foundation(WF)与滚动自己的工作流框架有什么好处?

据我所知,WF只提供了一个非常简单的运行时引擎,一堆类和一个用于定义工作流的模式(基于XAML).所有困难的东西,如持久性,为运行时提供主机进程,以及实现分布式工作流(跨进程)都由您自己决定.

另外,使用WF还有一个学习曲线...如果我们创建了自己的工作流框架,我们只会利用所有开发人员已有的技能(C#,XML,SQL等).

我从MS传播者那里看到了这个博客,它试图解释为什么我们应该使用WF:

为何选择Workflow?...

IMO它没有很好地说服,因为它只是说它有助于"开发人员的工作效率",同时承认开发人员可以自己动手.

任何一个聪明的人都可以提出更好的理由吗?

以下答案摘要:


我认为最有说服力的理由是使用标准化的工作流平台(如WF(而不是自己动手))将允许您利用当前和未来的工具,例如MS和第三方提供的可视化设计器.

另外,因为它是基于.NET的技术的MS堆栈的一部分,它可能会有更好的集成/迁移路径与未来的MS技术(如Azure).

最后,拥有WF经验的开发人员数量将会增加(因为这将使他们在职业生涯中受益),将其转变为基本的商品技能,如SQL或HTML,这意味着找到可以开始使用它的人变得更容易最小的加速时间.

.net c# workflow workflow-foundation

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

GitHub Actions:如何在 GithHub Actions 中连接到 Postgres

我正在使用 Ruby on Rails 应用程序尝试 GitHub Actions for CI。

我的设置是使用 VM,而不是在容器中运行 Ruby 构建。

这是我的工作流程 yml。它一直运行而没有错误,直到步骤“设置数据库”。

name: Rails CI

on:
  push:
    branches:
    - master
  pull_request:
    branches:
    - master

jobs:
  build:

    runs-on: ubuntu-latest

    services:
      postgres:
        image: postgres:10.10
        env:
          POSTGRES_USER: postgres
          POSTGRES_PASSWORD: postgres
          POSTGRES_DB: db_test
        ports:
          - 5432/tcp
        options: --health-cmd pg_isready --health-interval 10s --health-timeout 5s --health-retries 5
      redis:
        image: redis:latest
        ports:
          - 6379/tcp

    steps:
    - uses: actions/checkout@v1

    - name: Set up ruby 2.5
      uses: actions/setup-ruby@v1
      with:
        ruby-version: 2.5.5

    - name: Set up node …
Run Code Online (Sandbox Code Playgroud)

postgresql workflow continuous-integration github-actions

34
推荐指数
2
解决办法
9755
查看次数

.NET的工作流引擎

这是一个多部分问题:

首先,您对Workflow的个人看法是什么?

其次,有没有其他好的基于.NET的工作流引擎?有关我用法的一些信息:

  • 使用静态和动态工作流程
  • 与城堡(单轨和温莎)融为一体
  • 利用MSMQ排队
  • 我们想要一个简单,干净,非leviathan框架.
  • GUI工作流编辑并不是真的需要,但我不在乎它是否有它.

我不关心工作流是在DB,XML还是Code中定义的,因为我们决定定义它,如果它不受支持,我们可以编写一个适配器.专有(免费或费用)很好,但首选开源.

.net c# workflow workflow-foundation

33
推荐指数
3
解决办法
7万
查看次数

退出Python调试器ipdb

我经常使用ipdb,只是跳转到一段孤立的代码,即很难编写一个使用它的真实脚本.相反,我用模拟编写了一个最小的测试用例并跳转到它.

工作流程的示例:

def func():
   ...
   import ipdb
   ipdb.set_trace()
   ...

def test_case():
    ...
    func()
    ...
Run Code Online (Sandbox Code Playgroud)

然后,调用

py.test test_file.py -s -k test_case
Run Code Online (Sandbox Code Playgroud)

现在,通常我只检查一个或两个变量,然后想要退出.更改代码并重新执行.

我该如何戒烟?手册说q退出调试器.它(真的)没有.在调试器实际终止之前,您必须退出几次.Ctrl-C和Ctrl-D的相同行为(多次击中Ctrl-D的挫折最终也会退出终端).

是否有一种强制退出的聪明方法?这个工作流程是否合理?这样做的标准方法是什么?

python debugging workflow exit ipdb

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

Javascript中的工作流引擎

有没有人知道Javascript的工作流引擎(如Spring WebFlow)?我们有一个自制的框架,允许我们使用JSON引导网站导航,但它的质量远远不够好.

根据给定的答案进行编辑:引擎必须在浏览器上运行,并将对服务器的请求数减少到最少.

javascript workflow state-machine

32
推荐指数
2
解决办法
5万
查看次数

适用于Java的轻量级工作流引擎

编写新的工作流引擎或使用现有的BPM引擎更好:jBPM 5,Activiti 5?

我的应用程序是基于Web的应用程序,性能很重要.我怀疑的是,与编写简单的工作流引擎相比,使用jBPM/Activiti是否会带来性能开销.

如果我采用自我实现,我将错过工作流的可视化.为了表现,它可以交易.

java workflow jbpm activiti

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

工作流程未显示,因此我无法手动运行它(Github Actions)

我创建了工作流程Test,但没有Run workflow手动运行它的按钮。

在此输入图像描述

这是我的test.yml文件。有什么遗漏吗?

name: Test

on:
  release:
    types: [created]
  
jobs:
  build:
    runs-on: ubuntu-latest

    steps:
      - uses: actions/checkout@v2

      - name: Run a one-line script
        run: echo Hello, world!
Run Code Online (Sandbox Code Playgroud)

workflow yaml github github-actions cicd

32
推荐指数
3
解决办法
4万
查看次数

MySQL版本控制 - Subversion

想知道是否可以拥有MySQL数据库的版本控制.

我意识到这个问题之前已经被问过,但最新的差不多是一年前的事情,而且事情发生了变化......

问题是,每个开发人员都在他们自己的计算机上有apache/MySQL/PHP,他们有时会编辑数据库.如果他们必须向所有其他开发人员发送电子邮件然后手动编辑测试服务器数据库,则相当不方便.

你是如何处理这个问题的?

谢谢

mysql svn version-control workflow

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