54
votes
TODO comments with deadlines?
This question is really two questions in one.
Todo comments
Of all the ways to track action items, this is the worst. TODO comments are good during active work or as a way of suggestion to a ...
27
votes
Which comes first: CD/Trunk-based development or microservices?
Consensus is you want CI/CD first and anyway, independent of your application's language, design or architecture. Whether you deliver trunk-based or use feature branching is also independent of CI/CD.
...
26
votes
Accepted
Whats the difference between staging and UAT environments?
The difference is the data.
A UAT environment is set up for "user acceptance" of new functionality. In order to test that functionality, QA or stakeholders may set up user profiles a particular way ...
24
votes
TODO comments with deadlines?
Do not use TODOs. You already have a TODO list in your project. It's called the issue tracker.
I think the real problem is in this sentence:
we can create a ticket in our issue management system, ...
17
votes
What does "continuous" mean in "continuous deployment", "continuous delivery" and "continuous integration"?
Traditionally, before Continuous Integration, Continuous Build, Continuous Deployment, Continuous Testing, etc., the system was split into modules and those modules were developed by independent teams ...
15
votes
Accepted
Is CI/CD a myth
In my opinion, testing can be done locally on development computer;
Of course it can. And it should be done. CI/CD is not "instead" of it, but rather "in addition" to it.
testing ...
12
votes
Which comes first: CD/Trunk-based development or microservices?
Trunk based development with continuous develivery and microservices are mostly orthogonal concepts. However, for a huge monolith, the delivery cycles which usually require a certain amount of testing ...
10
votes
How to rollback rejected features by QA in a Continuous Delivery scenario?
When a code change A is rejected, don't think necessarily in terms of "rollback feature A by undoing the merge using SCCS". Think in terms of "adding a new change to the code which fixes the defects ...
10
votes
How do you do continuous delivery in an unstable environment?
I find it hard to believe that "only sporadic outages" of few dependent services would result in 99% builds failing. Maybe you need some detailed analysis on which services are worst offenders and ...
9
votes
TODO comments with deadlines?
What I'm looking for is a way that a TODO comment can have a deadline against it, and our Continuous Integration system (current undecided which we'll use) would reject the build if this deadline was ...
9
votes
Accepted
Why the devops pipeline reads "Code, Build, Integrate, Test"..why build is second?
I write some code, then I build it (compile it) then I run the tests. This happens on my local machine. That's the "code & build" phase in that diagram.
Then I check my code in to a central ...
8
votes
Accepted
Are CCQ (Continuous Code Quality) tools like SonarQube expected to deny version control changes?
Quality gates – checks that must pass before some changes can be merged – are a useful way to detect quality problems early. These gates can include any kinds of quality checks, including running test ...
8
votes
How do you do continuous delivery in an unstable environment?
Technical answer
The exact concept that is needed here is fault tolerance. You need a pipeline that is resilient to failure. This is an open-ended engineering problem, of course.
The most obvious ...
8
votes
Is CI/CD a myth
In my opinion, testing can be done locally on development computer
In a minority of cases, it could be. Mobile apps can only be tested in emulators. Embedded apps can only be tested in emulators. ...
7
votes
Is it a good idea to lock svn
In the way of working you describe, there is very little advantage to using branches. With all the merging back and forth, you might as well be working directly on Trunk, except in the (hopefully rare)...
6
votes
How to convert the last rc (or other pre-release) into the production version using semver?
First: You dont need to remove the pre-release version. That this very specific revision was a pre-release is a historical fact and i see no good reason to hide that.
Second: just add the release tag ...
6
votes
Is it crazy to move deployment logic into test suite …?
See it this way: what you actually did is, you automated the steps of your deployment process in a test-driven manner, just like you can implement any other program or component in such a manner. ...
6
votes
What does "continuous" mean in "continuous deployment", "continuous delivery" and "continuous integration"?
Continuous integration (CI) is the practice of frequently integrating changes with the main codebase. In order to do CI, you probably want a CI server running automated tests on your codebase with ...
6
votes
Accepted
Can we interrupt our service if we use CI/CD
Yes. The 'Continuous' refers to the automation of the processes rather than zero downtime.
Having said that. I would assume that:
If there is significant downtime they wont want to continuously ...
6
votes
What is needed to safely enable non-technical users to trigger automatic deployments?
It is actually more than just triggering the pipeline job to start.
If the job fails how should we know if it's the bug from your artifact, resource shortage, or some transient error from the ...
6
votes
How to automate version bumping, when version bumping involves changes in source code and a git tag?
Am I trying to implement a bad strategy here?
If the strategy works for you, then it is not a bad strategy.
On the other hand, changing the same line of __init__.py in every feature branch is a ...
6
votes
Is CI/CD a myth
In my opinion, testing can be done locally on development computer
With more powerful workstations and advancements in virtualization and containerization technology, more testing can be done locally ...
5
votes
Accepted
Jenkins: rsync from built workspace or pull from original repository and build again
I would deploy directly from the Jenkins workspace. The reason is that if you're performing git pull, it may pull newer version than what Jenkins built. Of course, "git checkout SHA1" could save your ...
5
votes
Is it crazy to move deployment logic into test suite …?
If your "test code" is being used to deploy your production code, it's no longer test code - it's production code.
That being said, your idea is sound in that mirroring your production environment as ...
5
votes
Accepted
How do I automate build-publish tasks for my web server?
A Bash script is exactly how it happens in many companies. Avoid steps that you have to perform manually. Automate them so that you only have to kick off the process and can then sit back. Being able ...
5
votes
Exact gap from Continuous Integration to Continuous Delivery
There are three activities that often get conflated or confused: Continuous Integration, Continuous Delivery, and Continuous Deployment.
Continuous Integration is integrating the work of individuals ...
5
votes
How do you do continuous delivery in an unstable environment?
Abandon the flaky network services, and do stuff locally.
You can unit test stuff on your own PC, and you can do it before you check in buggy code. You don't need a Maven repository if the third-...
5
votes
How to implement automatic SemVer from code changes
In the comments, amon is absolutely right that just changing the interfaces is insufficient to determine if behavior is backwards compatible. I find it highly unlikely that you would be able to build ...
4
votes
Whats the difference between staging and UAT environments?
| Environment | Software version | Way of usage of software |
------------- ------------------- --------------------------
| UAT | New | Same as production |
| Staging ...
4
votes
TODO comments with deadlines?
Don't ToDo. Do it now.
TLDR: Write (and test) your DB scripts now, not later; just code them so their execution is contingent on DB version.
Example
For an example, let's imagine that you wish to ...
Only top scored, non community-wiki answers of a minimum length are eligible
Related Tags
continuous-delivery × 121continuous-integration × 69
deployment × 12
git × 10
devops × 10
jenkins × 8
architecture × 7
version-control × 7
unit-testing × 6
versioning × 6
gitflow × 6
semantic-versioning × 6
testing × 5
microservices × 5
docker × 5
release-management × 4
builds × 4
azure × 4
automation × 4
java × 3
c# × 3
php × 3
database × 3
agile × 3
github × 3