Questions tagged [continuous-integration]

In software engineering, continuous integration (CI) implements the continuous building and automated testing of the full software product on a frequent schedule. At least once a day, often several times a day and sometimes as often as after every check in to the version control system.

Filter by
Sorted by
Tagged with
50
votes
11answers
10k views

If two individual branches pass unit tests, once they're merged, is the result also guaranteed to pass unit tests?

Suppose we have two branches A and B which have been forked from master. Both branches A and B make some changes and implement some unit tests. They pass all current and new tests, then are merged ...
-1
votes
1answer
40 views

Are DB integration tests relevant to test DB schema (and worth being impl.) when being run in a CI pipeline? If not when are they?

This is something that is puzzling me a bit. I am seeing some people who like to implement DB-related integration tests (in the case of BLOBAs) to test the insertion with a Legacy DB in a CI pipeline, ...
-2
votes
1answer
127 views

First time teamwork (PHP): version control and continuous integration?

A colleague and I are going to be working together on a single project for the first time. This raises a few technical questions for me. Like how. I think a version control system is a must now, if it ...
1
vote
1answer
46 views

Single Build Command / Continuous Integration

I was reading the Continuous Integration by Martin Fowler article yesterday, the article is from 2006 but I think it is still very applicable today, the statement around a single command stuck in my ...
2
votes
1answer
451 views

Should a large number of system tests be part of the build?

I believe extensive automated unit tests should be part of the build. However the testing pyramid suggests that there should be a much smaller number of system tests. Should an automatic build include ...
0
votes
2answers
116 views

What is the relationship between continuous integration and git hooks?

I'm trying to get into the habit of making sure that each master commit to a repository I work on does not break any existent tests. In my current flawed workflow, there are some intermediate commits ...
0
votes
0answers
27 views

How to version k8s yaml files and keep them in sync with the cluster in the cloud?

Intro When a developer deploy his code, the ci will execute kubectl set image deployment/gcloud-example gcloud-example=stavalfi/gcloud-example:<new-tag>. But the ci won't change the tag in the ...
1
vote
1answer
75 views

Continuous Integration practices for forked repository

We have an on-premises BitBucket server with a git repo for an embedded device. We use a multi-branch pipeline in Jenkins to: Build and run tests Build the firmware (and a little supporting PC tool) (...
-4
votes
1answer
50 views

Best practice for organizing build products of dependencies and project code in your repo source tree?

I've checked quite a few related questions on source tree organization, but couldn't find the answer for my exact need: How should I organize my source tree? What's the best structure for a ...
1
vote
1answer
78 views

How should one perform a major refactor in parallel with continuous delivery of new features?

Suppose you've been hired to perform a major refactor/rewrite of a large project that is already in production and maintained by a very small team. The scope of this rewrite is to the point where you ...
-3
votes
1answer
68 views

How to test dependencies between microservices?

We have two microservices A and B that are developed inhouse. A provides an API that B consumes. Let's assume that B has some specific integration tests that ensure that B is compatible with A. We ...
-4
votes
1answer
22 views

GitLab Pipeline set to Public but Behaves Private

I'm using GitLab for open-source projects, they are all configured with the same privacy settings. One of my projects however is acting as if I have Pipelines set to Only Project Members, even though ...
-2
votes
4answers
148 views

Is Continuous Integration nowadays intended as “Continuous Inspection”?

I've been reading a log about CI (mostly Addison-Wesley books) and taking "CI" courses. I see two clear distinctions between old books on CI and new ones: Old ones focus on "committing" or "pushing" ...
0
votes
1answer
25 views

Use CI to generate ER diagram and put it into readthedocs

I have an open source API server project on Github and I am trying to put it into continous integration. The project uses SQL Alchemy and I use ELAlchemy to manually generate a png database ...
1
vote
2answers
93 views

How to deploy pipeline rerun?

I have an application that's mostly one large data pipeline. That pipeline runs daily and stores processed data in the database (it takes the execution date as its argument). Occasionally the client ...
0
votes
0answers
25 views

How to design fan-out deployments for Docker containers?

I am designing an application that will run on AWS ECS. The app will be able to run with multiple configurations for jobs. There will be two packages on GIT; Config Repository Application It is a ...
1
vote
1answer
68 views

Implementing semver within a development pipeline when building libraries

This is not about the specification of semver itself (which is crystal clear), but rather about the best approach to implement it within a development pipeline when building libraries. TL;DR: who/...
0
votes
2answers
69 views

Best practices for python CD/CI with machines on-site at customer

I asked this question originally on StackOverflow, and was advised to post it here instead. My question is concerning the best practices for continuous deployment and continuous integration especially ...
1
vote
2answers
65 views

Should I pull to another job workspace or should I push from it the 2nd job dependencies?

I have a question regarding CI/CD procedure. I do have 2 Jenkins jobs, the 1st one will build a binary file who is a dependency to the 2nd job build successfully. Should I push this binary from 1st ...
1
vote
2answers
89 views

Testing Environment Variables Strategies

I am in the process of implementing an API for the OPTIONS request for a pre-flight check on CORS calls. The Allowed-Origins host between local, test and prod will all be different so I moved this to ...
1
vote
2answers
68 views

How do I maintain configuration in the case of multiple test environments and application instances

What's the best practice for maintaining app configuration for multiple test environments, (and production)? At the moment I am keeping all the config in the code repo (a bitbucket server). Configs ...
-2
votes
3answers
154 views

What's the proper order of stages in a CI build?

I've read some articles about CI/CD and find that a typical CI pipeline often includes Build, Test and Deploy. We also add Code Quality Scan stage to our pipeline. The question is that, what is the ...
1
vote
0answers
57 views

How to run the Unit Test on Master branch using hook before merging the incoming changes of other branches

We have project which have more than 500 unit test and run for hours through Jenkins CI pipeline. In case there is failure of single UNIT test we need to kick off the build job again. I want to run ...
3
votes
2answers
136 views

For Evolutionary Database Tools like Flyway or LiquidBase, it is better to integrate the tool or left it as a stand alone step in the CI process?

Although I believe my question is language and DB agnostic, I will provide the specifics technologies in this case study because it might help understanding my question (sorry for my English). It's ...
2
votes
8answers
436 views

Should automated testing be specified in software requirements?

When defining software requirements, should automated testing (unit and integration) be specified? I have not seen any guidance on this, and "testing" is not a functional requirement for the software. ...
0
votes
2answers
73 views

Exact gap from Continuous Integration to Continuous Delivery

I have read some blog articles, papers and books about Continuous Integration and Continuous Delivery, but I still can't find a point where you could say this is where CI ends and CD starts. I ...
6
votes
1answer
269 views

How to prevent CI/CD process from being suspended while big changes happen?

This is more of a procedure and maybe a philosophical problem. The development team I am in is divided into Scrum teams or Squads that work on the same product. Occasionally, either one of these ...
35
votes
11answers
7k views

Unexpected Code Coverage Reduction

I am adding unit tests to some existing code which initially was not tested at all. I have set up my CI system to fail builds where the code coverage percentage is reduced compared to previous build -...
1
vote
3answers
168 views

Why would you cut off your continuous integration system from the internet?

I read that Facebook's continuous integration environments are cut off from the internet for security and reliability reasons. What would these reasons be? Is this a common practice?
46
votes
9answers
9k views

How do we avoid CI-driven development…?

I'm working on a very large research-led open-source project, with a bunch of other regular contributors. Because the project is now quite big, a consortium (composed of two full-time employees and ...
1
vote
2answers
166 views

Where should I start with an Integration Test for a Legacy Software in .NET? [closed]

Currently, I'm planning a new project of CI/CD with Azure DevOps (with Git, already committed) for an old Solution, which contains 17 C# projects. Technically, we have access to the source code and ...
2
votes
0answers
24 views

Deployment pipeline as a component of an application

I am writing a serverless application using AWS SAM. I am wondering, would it be a good idea to include in my template a definition of a CodePipeline (and CodeBuild for that matter) for deploying that ...
0
votes
1answer
114 views

Using a db as part of CI

I am designing a CI system where I need to leverage a database as part of the software build process for integration tests. Different developers on different branches of the same repo will want to run ...
2
votes
4answers
223 views

Finding Feature Bugs As Quickly As Possible

Currently, whenever I am developing a feature, I write the behaviour tests for it using mocks for our downstream services. These mocks are dumb always serve the same output. I faced something grave ...
10
votes
5answers
471 views

When do you have enough automatic testing to be confident in your continuous integration pipeline?

Continuous integration with testing is useful for making sure that you have "shippable" code checked in all the time. However, it is really difficult to keep up a comprehensive suite of tests and ...
4
votes
0answers
375 views

Efficiently sharing a large node_modules directory between TeamCity build agents

The CI flow for our Node.js app looks roughly like this: Currently, this all takes place in a single TeamCity 'job' with three 'steps' (the Test step runs 4 concurrent child processes). Problems ...
0
votes
0answers
34 views

Packaging for distribution: include CI config and other files the end user doesn't need in the package?

(Disclaimers: I have checked on Google and this site. I have read this answer, which is the only related one I could find here. Additionally, that answer is from 2017, and I wonder if things have ...
2
votes
1answer
112 views

Blue-Green Deployment - What about data updates?

A lot of articles online give very simple examples on Blue-Green deployments. However, how would data update be handled? Say I have a column called Category with values (A, B, C, D). In my next ...
1
vote
1answer
123 views

Is infrequent syncing in DVCS trunk based development similar to a long-lived feature branch in GitFlow?

I'm working on a project and trying to understand the differences and trade-offs between variations of trunk based development and feature branching like git flow so I can help implement an ...
2
votes
0answers
35 views

AWS codepipeline deployment

I currently have an AWS Codepipeline that is setup to automatically pull an Express, NodeJS API and deploy it with Lambda and API Gateway. It pulls the code from my GitHub repo production branch and ...
0
votes
0answers
46 views

Using Azure Artifacts views for hiding in-development packages

My team are looking to push our shared code to a private NuGet feed in Azure Artifacts. At present the plan is to set the package version in our csproj files and set up CI on the master branch of each ...
-1
votes
1answer
87 views

Is it possible to disable all pull request merges into a particular branch while a build is running for that branch?

We are using GitHub and CircleCI. I know that pull request mergeability can be made to be dependent on the most recent commit, using status checks. Is there any way to make it depend on whether or not ...
3
votes
1answer
211 views

Automated Testing: where do I put Selenium?

I'm working on a Java application, it's a middleware between two ticketing webapps. I want to write end2end tests using Selenium to test functionality. Let's say my testing process goes like this: I ...
1
vote
4answers
819 views

Git Flow: should develop branch be unit tested in CI?

We have a Git Flow type workflow (in rails) where our 'testing' (aka develop) branch has feature branches merged into it for UAT. So: master has the current running production system. feature ...
-1
votes
1answer
693 views

Best practice - Single or Multiple source code repository

As mentioned here: The main aim of CI is to prevent integration problems, referred to as "integration hell" Our project is a 3-tier web application, with frontend(Angular 6), backend(Springboot) &...
4
votes
5answers
2k views

How to Differentiate Unit Tests from Integration Tests?

In my C# solution, I have a Tests project containing unit tests (xUnit) that can run on every build. So far so good. I also want to add integration tests, which won't run on every build but can run ...
0
votes
2answers
247 views

Are CCQ (Continuous Code Quality) tools like SonarQube expected to deny version control changes? [closed]

I am getting into SonarQube and everything looks quite and simple so far, but I am not sure what is the final purpose of CCQ overall. Yes it gives you a lot of tips about whats going on inside your ...
1
vote
1answer
78 views

Should I run my tests against production build transforms (i.e. Babel)?

A coworker of mine recently setup testing in a new project (a JS library) where a transform step hooks in to the babel config for Webpack in the production config. For reference, this is the setting ...
7
votes
3answers
481 views

Is it a good idea to lock svn

I have to define the new way of working for a development team which goes from a one man unit, to a distributed team with programmers al over the world. The team will work with svn. This is a non-...
2
votes
2answers
103 views

Any patterns for extracting tooling from multiple repositories?

I'm working on a project where an increasing number of small mini apps all share nearly the same tooling - makefiles, dockerfiles, jenkinsfiles and webpack configs, along with a couple of scripts, are ...

1
2 3 4 5
7