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 ...
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 ...
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 ...
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 ...
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 '...
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 ...
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:
...
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/...
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 ...
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 ...
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 ...
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 ...
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 ...
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 ...
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 ....
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, ...
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 ...
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 ...
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 ...
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 ...
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 ...
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 ...
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 ...
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 ...
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 ...
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 ...
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/...
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 ...
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 ...
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 ...
Only top scored, non community-wiki answers of a minimum length are eligible
Related Tags
continuous-integration × 250jenkins × 58
continuous-deployment × 54
gitlab × 45
docker × 35
continuous-delivery × 35
gitlab-ci-runner × 22
git × 18
jenkins-pipeline × 15
cicd × 15
deployment × 13
github × 13
kubernetes × 12
testing × 12
build-pipeline × 11
azure-devops × 10
automation × 10
amazon-web-services × 8
containers × 8
jenkins-plugins × 8
terminology × 8
yaml × 8
azure-pipelines × 7
python × 7
terraform × 6