Graduation assignment HBO Parallel execution of containerized integration tests using Bazel

Thales

Not Interested
Bookmark
Report This Job

profile Job Location:

Hengelo - Netherlands

profile Monthly Salary: Not Disclosed
Posted on: 17 hours ago
Vacancies: 1 Vacancy

Job Summary

Location: Hengelo Netherlands

About us

In the Netherlands where 3000 employees are based we are located in four cities: Huizen Delft Eindhoven and Hengelo (HQ). Together with an extensive ecosystem of knowledge partners customers and suppliers we work on radars for naval vessels cyber security solutions transportation systems communication equipment for land forces cryogenic cooling solutions and research & development for radar tech (in collaboration with TU Delft).

Department

The software department of the Application Engineering cluster is responsible for the software development in Combat Management and Radar- and Optical sensors for worldwide navies- and defense systems. The work is performed in multi-disciplinary agile teams with specialists in software/system/test engineering and functional design.

The software department of the Application Engineering cluster is responsible for the software development in Combat Management and Radar- and Optical sensors for worldwide navies- and defense systems. The work is performed in multi-disciplinary agile teams with specialists in software/system/test engineering and functional design. OPEN

About the assignment

Background

At Thales a project is currently ongoing to migrate away from the currently used Maven build system to Bazel for increased build performance more granular caching better parallelism and more deterministic artifacts. The current work for the Bazel migration project mainly consists of adopting or creating Bazel variants of the tools used within the different departments to build software components systems and applications. One of these tools called Cucumber is used to run behavior driven integration tests. This is used to run containerized integration tests of software components using Podman containers in an environment similar to an actual deployment environment.

One of the advantages of Bazel is its highly efficient parallel execution of so-called actions which include tests. However this is currently conflicting with the limits of our integration test setup mainly due to the limitations of Podman being single-threaded and non-reentrant which is at best unreliable when run in parallel or will simply fail. This requires that parallel execution is disabled for these tests significantly increasing build time and reducing part of the advantage that Bazel provides.

Assignment

It needs to be investigated what options are available within the closed Thales environment to fully parallelize containerized integration tests when using Bazel as the build system Podman as the container orchestrator and Cucumber as the integration testing framework.

The goal for this assignment is to create a proof-of-concept of an improved testing infrastructure capable of running containerized integration tests in parallel. The PoC needs to adhere to the following:

Support Bazel as the build system (working with Maven is a nice to have)

Uses Podman as the container orchestrator

Uses the current testing infrastructure as a base

Uses Cucumber as the integration testing framework

No tests shall require the exclusive flag which forces given tests to run sequentially.

Ideally no test shall require the flaky flag which executes a test n number of times where the test is considered as passed so long as one of the attempts passes. Since this is also highly dependent on the tests themselves this is not a hard requirement.

OPEN

Affinity

Linux Open Source Java/C OCI containers Bazel DevOps

Thales offers

  • An interesting internship or graduation assignment in an international high tech environment
  • An open and flexible working environment
  • An excellent internship allowance
  • Its own student association where you can participate in educational and fun activities.

Interested

Direct solliciteren Gebruik dan je eigen persoonlijke profiel om jouw

interesse aan ons kenbaar te maken en kies voor Apply now.

Would you like to apply directly Then click on the button Apply now to show your interest. Please keep in mind that we can only consider students who are enrolled at a school or educational institution during the whole internship period for our internships and graduation assignments.

Location: Hengelo NetherlandsAbout us In the Netherlands where 3000 employees are based we are located in four cities: Huizen Delft Eindhoven and Hengelo (HQ). Together with an extensive ecosystem of knowledge partners customers and suppliers we work on radars for naval vessels cyber security soluti...
View more view more

Key Skills

  • APIs
  • Jenkins
  • REST
  • Python
  • SOAP
  • Systems Engineering
  • Service-Oriented Architecture
  • Java
  • XML
  • JSON
  • Scripting
  • Sftp

About Company

Company Logo

In all critical environments - air, land, sea, space and cyberspace - decision-makers, operators, crews and members of our armed services and security forces are faced with millions of important decisions every day. It is in supporting these people that Thales in the United States ha ... View more

View Profile View Profile