login
Updated 07/16/2024
6

Speeding up CI/CD processes

Proposal

The main target of this solution is to dramatically reduce the CI/CD process and make it scalable, so we don't need to worry about this for a while.

Based on the generated ideas, we are proposing the following process:

  1. Restrict deployment for one thing at a time. Never pile up unrelated changes into one deployment. In case the feature cannot be deployed (e.g. bug that was found in the pre-prod environment), roll back the code so others are unblocked and can be deployed without the breaking change.
  2. CI/CD process includes multiple steps. Reuse as much as possible from previous steps of the build, to avoid repetitive work
  3. Execute quality-related steps of the CI process in parallel to any human requiring activity (review, manual qa, etc...). For example, when the tests and checks are already passed and there are no additional code changes, never execute them again for that change.
  4. Possibly deploy to QA environment without waiting for the tests to complete. This requires the team's responsibility to test things on their local environments to reduce the chance of broken QA to the minimum
  5. Build the deployable package only once, then use that package to deploy into different environments
  6. Introduce feature flags as a safeguard for anything we do.
  7. Polish the rollback process is done in seconds with a button push.


---

Result

Once the process change was implemented we reduced the release time from 2.5 hours to roughly 12 minutes from the time the change is approved (to the exact time it takes to deploy an image to the cluster)

Login to comment
Anatoly Agulyansky avatar

Anatoly Agulyansky

02/27/2023

This is a great example how to apply the problem solving tools help to save time of a process. Good job.

Similar projects

Проект "OrbiNet" - это уникальная инициатива, в которой участвуют ученики 10-го класса, целью которой является создание ассистента для геосервисов, интегрированного в телеграм-бота. Этот проект позволяет школьникам прикоснуться к передовым технологиям в области космического мониторинга и обработки данных, обучаясь и одновременно внося свой вклад в разработку инновационных решений. В рамках "OrbiNet", студенты исследуют, как с помощью ассистента можно эффективно работать с новейшими методами распознавания образов и потоковой обработкой данных. Они изучают, как данные с различных датчиков - мультиспектральных, гиперспектральных, радарных и лидарных - могут быть систематизированы и обработаны для решения реальных задач, таких как мониторинг окружающей среды и предотвращение природных катастроф. Ученики также занимаются разработкой алгоритмов для предварительной обработки данных на космических аппаратах и изучают, как технологии блокчейна могут быть применены в управлении космическими данными. Особое внимание уделяется возможностям ассистента в прогнозировании и распознавании лесных пожаров, а также в мониторинге землетрясений. Проект "OrbiNet" не только способствует развитию навыков учащихся в области науки и техники, но и позволяет им участвовать в создании реального продукта, который может быть масштабирован и использован для решения глобальных задач в будущем. Это отличный пример того, как обучение и практическая деятельность могут объединяться для достижения впечатляющих результатов в области геосервисов и космических технологий.

Abilmansur Satybaldy avatar
Abilmansur Satybaldy

Пропажа скота, особенно в крупных пастбищных областях или в удаленных районах, может быть серьезной проблемой для фермеров и владельцев скота. Этот процесс может происходить по разным причинам, включая недостаточное пастбище, кражи, атаки диких животных или даже потерю ориентации животных в незнакомой местности. Однако, вне зависимости от причины, потеря скота приводит к финансовым потерям и может снизить производственную эффективность ферм. Эффективным решением этой проблемы является использование БПЛА с нейроной сетью, которая может опознать на камере потерявшихся животных, после сделать два снимка в двух отрезках времени, скинуть местоположение, фото потерявшегося скота или животных. Благодаря чему можно вычислить направление, скорость миграции и будущее положение.

Богдан Акимов avatar
Богдан Акимов