Skip to main content
97 votes
Accepted

Is there a [ci skip] option in GitLab CI?

Yes, there is: If your commit message contains [ci skip] or [skip ci], using any capitalization, the commit will be created but the pipeline will be skipped. Alternatively, one can pass the ci.skip ...
Peterino's user avatar
  • 1,086
47 votes
Accepted

What's the difference between DevOps and Automation?

A big part of DevOps is making it possible to release very often. That comes with automated build, automated testing, etc. You can say that to achieve its goals, DevOps need to use automation to be ...
Alexandre's user avatar
  • 1,965
27 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 ...
THelper's user avatar
  • 575
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 ...
Alexandre's user avatar
  • 1,965
15 votes

What's the difference between DevOps and Automation?

Automation is a key attribute of DevOps, but it's not the full story. The question is kind-of like "What's the difference between time-boxing and Scrum?". You'll hear DevOps called a 'culture', a '...
David Bock's user avatar
14 votes

What's the difference between DevOps and Automation?

DevOps is really a cultural shift - it's intended to be about breaking down the traditional barriers between operations and development (and really also with QA and the rest of the business!). The ...
tayworm's user avatar
  • 660
14 votes
Accepted

How to properly scale Jenkins?

There are no fundamental technical issues with running multiple jenkins slaves on the same machine. In fact Running Multiple Slaves on the Same Machine lists several good reasons for doing it: ...
Dan Cornilescu's user avatar
14 votes
Accepted

Is it possible to have multiple gitlab-ci files in a single repo?

No, you can't have multiple gitlab-ci files per repository. You can see more information in the following links: https://gitlab.com/gitlab-org/gitlab-foss/issues/18157 https://gitlab.com/gitlab-org/...
Aykut Açikel's user avatar
14 votes
Accepted

Can I run multiple pipelines in a single GitLab repo using GitLab CI/CD?

Yes, you can use the rules syntax. You can use this in combination with regex for commit message, ci_pipeline_source or any other available CI variables. job1: script: - do something on ...
zm31's user avatar
  • 381
13 votes
Accepted

Key attributes of Continuous Integration (CI) software

In general, there are five main differences between different CI software solutions. Cost: Is the software open source and free or proprietary? Does your DevOps team already have a budget for ...
avi's user avatar
  • 1,279
13 votes
Accepted

How to tag source code using gitlabCI

I tried to change docker image and added couple steps for git tag. Below is the answer worked for me, image: maven stages: - build - deploy - tag maven_build: stage: build script: - mvn clean ...
pandey's user avatar
  • 949
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 ...
Wesley Rolnick's 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 ...
Evgeny Zislis's user avatar
11 votes

How to transition from a complex branching reality to a single-branch model?

Because you mention waterfall, I understand that the numerous branches you are alluding to are feature-branches rather than maintenance-branches. In this setup, I also assume that these branches are ...
Michaël Le Barbier's user avatar
11 votes

Trigger Jenkins job from Gitlab CI with parameters

Here's the way I do it: no plugin required, just triggering Jenkins api from gitlab-ci. Gitlab-CI I will assume you have a gitlab-ci runner installed and configured. First, you need to have a ....
avi.elkharrat's user avatar
10 votes
Accepted

Problem in integrating Travis-CI with core PHP projects

You need to write some unit tests and set the script variable in your .travis.yml to actually run a file. By default, Travis CI runs the command phpunit without any arguments. When this happens, ...
Aurora0001's user avatar
  • 1,522
10 votes
Accepted

How can I keep track of my Cloud Resource use?

A judicious usage of one of the cloud "orchestration" tools, such as Terraform or possibly Fugue seems to be the best way. You can start small, pick a less important and not very extensive ...
Michael Bravo's user avatar
10 votes
Accepted

How to avoid continuous integration-caused instabilities in test environments?

I'll give my experience on this one, mostly because it showcases why some answers are not always applicable. Some context to start: We have 7 environments to host roughly 80 applications, most of ...
Tensibai's user avatar
  • 11.4k
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 ...
Dave Swersky's user avatar
  • 4,068
10 votes

Continuous Integration infrastructure for multiple iOS projects

Is there any other viable solution, maybe better than the ones above :) ? For Jenkins probably no, due to the license issues you mentioned (you have to run macOS on Apple branded hardware). If you ...
Viktor Benei's user avatar
10 votes

Changing the build intermediate paths for gitlab-runner

Conceptually, this approach is not the way to go; the build directory is not a deployment directory, it's a temporary directory, to build or to deploy from, whereas on a shell executor this could be ...
Danny Goossen's user avatar
10 votes
Accepted

Multi-language Monorepo

Monorepos have been getting a lot of attention in recent years since google popularized them. If you aren't on a similar scale as google it might not work out as well for you. I've been in a startup ...
chicks's user avatar
  • 1,893
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 ...
Dan Cornilescu's user avatar
8 votes

How to avoid continuous integration-caused instabilities in test environments?

Sounds like you're talking about a test environment which is constantly re-used without being reliably re-initialized for every test execution. This makes such test an unreliable one. Similar, from ...
Dan Cornilescu's user avatar
8 votes
Accepted

What are the main differences between Jenkins and TeamCity if one is used to working with Jenkins?

TeamCity : It does look nicer, if this is important for your team then it should definitively weight in. That said, if it is VERY important than you probably will end up creating tools or some sort ...
Newtopian's user avatar
  • 1,986
8 votes
Accepted

JFrog Artifactory or JFrog Bintray , when to use one over the other?

JFrog Artifactory and JFrog Bintray both manage binaries (and any other file type you can think of). I'd like to see them as two different parts of your CI/CD pipeline. Artifactory is mostly meant to ...
Eldad Assis's user avatar
7 votes

How to properly scale Jenkins?

Use Kubernetes and Helm. I would recommend using the Jenkins Helm chart. It installs with helm install stable/jenkins and automatically scales. https://github.com/kubernetes/charts/tree/master/...
David West's user avatar
  • 1,503
7 votes

How to avoid continuous integration-caused instabilities in test environments?

The usual approach is to create different environments: DEV - this is the place where dev team mess the things. Here are create all changes tunings, deploy new version and so on. Here is the place ...
Romeo Ninov's user avatar
7 votes
Accepted

Where can I find older versions of GitLab Runner?

As described in the documentation you are following to install on the first paragraph: You can download a binary for every available version as described in Bleeding Edge - download any other ...
Tensibai's user avatar
  • 11.4k
7 votes
Accepted

How to let build fail when docker image size exceeds certain threshold?

The output of docker images is really intended for humans, and it's not very parse-friendly. Instead, most Docker commands support a --format flag using Go templates. As you can see in the images ...
Aurora0001's user avatar
  • 1,522

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