开发者

What are all of the automated build tasks that can be performed? [closed]

开发者 https://www.devze.com 2022-12-12 00:23 出处:网络
Closed. This question needs to be more focused. It is not currently accepting answers. Want to improve this question? Update the question so it focuses on one problem only by editing this
Closed. This question needs to be more focused. It is not currently accepting answers.

Want to improve this question? Update the question so it focuses on one problem only by editing this post.

Closed 3 years ago.

Improve this question

I'm curious. I'm looking into creating a CI server and wondering, after the first couple of obvious tasks, what else can an automated build do?

The tasks that I'm aware of (not in any order):

  • Compile (debug/release versions)
  • Code style conformance
  • Automated tests (unit/integration/etc.)
  • Code coverage
  • Version incrementing
  • Deployment

I'm not looking for the names of software, the build engine to use, or anything like that; just the repetitive and (maybe) important tasks开发者_如何学Go that can be automated to make the build process ridiculously simple from an end-user perspective.


The simple answer to this, is basically anything that a script can be written for.

For example if you are using CruiseControl, anything that you can do from an ant script can be automated; and that includes calling other (not necessarily ant scripts as well).

That being said, you've got most bases covered in your initial list. To that I would add

  • Generation of documentation
  • Repository maintencnace and backup operations
  • Auto-update company website, e.g. whenever there's a new release of software, documentation is updated, etc
  • Reports, e.g. aggregate and summarise bug tracker issues and activity per project/ product

HTH


  • Building documentation
  • Building installers
  • Creating web sites
  • Initialising virtual images
  • Setting up databases


Reporting? You may want to report the things you find during those tasks you outlined above. You could also do things such as duplication reporting, or if you run something like findbugs you could report on issues found (e.g. http://findbugs.sourceforge.net/bugDescriptions.html)

You could also generate a releasable package of the product in the build.


It all about automation. If you can find something that needs to be done, then automate it. For example you can do tonnes of code analysis, or testing. Ultiamtely it comes down to repeating things easily. Find what you need to do to improve quality and automate those(And I strongly fally down on the side of more testing is better).

0

精彩评论

暂无评论...
验证码 换一张
取 消

关注公众号