39 votes
Accepted

What is an artifact repository?

During development you generate a fair amount of different artifacts. These might include: The source code The compiled application A deployable package Documentation and potentially others as well ...
user avatar
  • 1,557
26 votes
Accepted

How does continuous integration relate to continuous delivery / deployment?

Continuous delivery and continuous deployment both take continuous integration one step further, by adding a 'deployment to production' step to the process. The difference between continuous delivery ...
user avatar
  • 567
18 votes
Accepted

Simple CI/CD Containers in AWS

I would keep the ECS container instances (I'm talking about the Docker hosts - I don't like AWS terminology here) and the deployment as two separate things. Get your ECS stack up and running. You can ...
user avatar
  • 1,925
17 votes
Accepted

Is there a website that shows the popularity of CI/CD tools?

I normally use stackshare. It doesn't show you usage as reported by the people running the tools but it has a decent community size and seems to be gaining more use rather than less. It lets you ...
user avatar
  • 1,082
16 votes
Accepted

How to use feature flag toggles?

Feature flags are an engineering device that can be used to avoid long-lived branch and conflicts in product development. Here is how it can be used the context of an object-oriented language to help ...
user avatar
15 votes
Accepted

What practices or tools enable Continuous Deployment of Databases?

Pramod Sadalage and Scott Ambler wrote a book Refactoring Databases: Evolutionary Database Design that is an incredibly solid primer to the subject of DBs in a CD org/team.
user avatar
  • 304
14 votes

What practices or tools enable Continuous Deployment of Databases?

The Challenges I am aware that there are practices such as only adding database objects, i.e. tables and columns, never modifying or removing them At one company I worked for, a rolling window of ...
user avatar
  • 3,674
13 votes
Accepted

What is the difference between DevOps and GitOps?

GitOps is a technique of using Git to manage infrastructure provisioning and software deployments. This technique uses many of the features of Git such as Pull Requests to manage and trigger ...
user avatar
12 votes
Accepted

Definition of "Done" for DevOps

Instead of Continuous Integration and Continuous Delivery, I would define the definition of done as "Active Continuous Improvement at all levels of the organisation". The other topics like automated ...
user avatar
10 votes
Accepted

What is "Push on Green"?

I Googled "Push on Green" and the first link was: https://www.usenix.org/conference/lisa14/conference-program/presentation/klein This was representative of almost the entire first page. It looks ...
user avatar
  • 3,973
9 votes

How to synchronize deployments (especially of database object changes) on multiple environments

I would integrate the schema management into the application itself (or along with it). Any change to the schema should be committed along the application code (and hence tagged also). There's ...
user avatar
  • 11.1k
9 votes
Accepted

Data Science pipelines and monolithic model blobs

Personally I don't see any reason for which an Artefact Repository - the recommeneded DevOps tool of managing artefacts - wouldn't be applicable to trained neural nets or other artefacts. The ...
user avatar
8 votes
Accepted

What exactly are "Truly reproducible builds"?

What exactly are they? Here is a quote from reproducible-builds.org: Reproducible builds are a set of software development practices that create a verifiable path from human readable source code ...
user avatar
  • 6,963
7 votes

How to use feature flag toggles?

The steps are quite "easy", to move to a feature flag app you need basically two things: A flag repository (file/data base/env variable) Conditional statements to change the behavior according to the ...
user avatar
  • 11.1k
7 votes

What is an artifact repository?

There's repository managers and Universal package repository managers (UPM). UPM’s can store all your build artifact for Jenkins, teamcity etc. and can generally also act as repository mangers for ...
user avatar
7 votes

What practices or tools enable Continuous Deployment of Databases?

We use Flyway at work for managing Postgres schemas in the app, and Pillar for managing Cassandra schemas. We have found it best if the app manages its own schema. We had a horrible experience ...
user avatar
7 votes

What practices or tools enable Continuous Deployment of Databases?

I'd argue a tool alone won't really help unless you shift the schema responsibility to the application team. We do use liquibase or flyway at work, where the application team is responsible to create ...
user avatar
  • 11.1k
7 votes
Accepted

Does Immutable Servers imply no source code updates on the servers?

No. Immutable is exactly what it means, immutable, no change on configuration or code running or system library or whatever, if a change has to be made, create a new image and deploy it, never change ...
user avatar
  • 11.1k
7 votes
Accepted

Should developer wait for CI pipeline to complete or start next task after pushing

Sit and watch the pipeline run? No, that is not how you work efficiently. Developers push their commits to the source control repository and then the CI/CD pipeline is triggered. Developers may ...
user avatar
  • 925
6 votes
Accepted

How to define failure situation on jenkins

By default Jenkins assumes whether the build is SUCCESS or not from build process exit code. Which means that build exit with code 0 considered as SUCCESS, rest all are considered as FAILURE. If ...
user avatar
6 votes

Is there a website that shows the popularity of CI/CD tools?

Although not entirely relevant to your question in terms of popularity, devops bookmark is a very nice website which helps discover tools and frameworks in the DevOps landscape. You are also able to ...
user avatar
  • 933
6 votes

Evolution of DevOps?

I don't view DevOps as a job position. Yes, I also have job offers out there for titles like "DevOps Engineer" [sic], but that just means I am looking for people who mainly can take a team with little ...
user avatar
  • 4,716
5 votes

How to reconcile Infrastructure as Code and not storing env config in code?

There are, as always, a few ways to solve this. You can use a central source to keep secrets that each server reads from ala Hashicorp Vault. While popular this is not my preferred approach as its ...
user avatar
  • 735
5 votes

Is there a website that shows the popularity of CI/CD tools?

I really like the Cloud Native Landscape. The tools are categorized in a huge map. Also you can visit awesome-ciancd for a bunch of tools and a brief explanation about each of them.
user avatar
  • 151
5 votes
Accepted

What OS should a master node CI virtual machine be?

I think the major deciding factor is the expertise of you and the rest of your company in the chosen OS. If you are a Windows shop, and your company is willing to leverage the cost of the node, it's ...
user avatar
  • 2,993
4 votes

Is Elastic Beanstalk suitable for enterprise-grade CD?

IMO opinion your issue isn't with Elastic Beanstalk in that scenario, it's with Jenkins, or at least the way you're using it. You should really concentrate on building "a thing" only once, regardless ...
user avatar
4 votes

What's the relevance of periodicity in CI / CD processes?

I would hesitate to describe your once per day model as CI/CD, it sounds more like the "nightly build" model. It really depends on the nature of your work and processes. If things flow smoothly ...
user avatar
  • 109
4 votes

What's the relevance of periodicity in CI / CD processes?

I would separate the CI and CD contexts, as the periodicity in one of them is rather loosely coupled to the periodicity in the other one. That's primarily because CI attempts to produce versions of ...
user avatar
4 votes

How does continuous integration relate to continuous delivery / deployment?

Continuous delivery and continuous deployment (CD) are more or less the same thing*. Every time a change is considered 'good to go' (tested/verified) it should be release immediately. You can do this ...
user avatar
  • 650
4 votes

What exactly are "Truly reproducible builds"?

To provide a practical example of an attempt at creating a truly repeatable build consider the following - A build pipeline which starts with a git repository for which no user can ever rewrite ...
user avatar
  • 1,634

Only top scored, non community-wiki answers of a minimum length are eligible