Skip to content

CU-862k9g97p & CU-862k9nc3k: App FE Restructure

Waquid Valiya Peedikakkal requested to merge feat/app-fe-restructure into master

The following MR addresses App FE (Web + Mobile) part of the pipeline restructure which is outlined in the following vibe diagram.

Summary of stage changes

Old Stage New Stage Job Changes
prepare check_and_prepare
test test deployment_validation moved to check_and_prepare
test_results results
code_analysis results_sonarqube
increment_version removed increment_version moved to results
deploy release
deploy_next release_next
mobile_store_create_app removed Jobs moved to release
mobile_store_beta removed Jobs moved to release
mobile_store_production release_to_store
invalidate_cdn_cache post_release
notify complete
  • success -> Notify CAT Success
  • fail -> Notify CAT Fail

Summary of rules changes

  • Refactor use of BX_METRICS_SCAN, COMPLIANCE_SCAN, and IOS_CREATE_APP variables by consolidating all three into one rule which is copied across many of the jobs. Before, the use of these variables were not consistent, in some cases individual rules per variable and others had the variable repeated multiple times across multiple rules. With this change, you will now just see the following: '$BX_METRICS_SCAN != null || $COMPLIANCE_SCAN != null || $IOS_CREATE_APP != null'.
  • Unit tests now only run on MR and Master pipelines.
  • Notify CMT mobile App Ready and Notify DockerIDE mobile App Ready now only runs if a project produces mobile apps.
  • deployment_validation only runs on branch pipelines.
  • license_scan only runs on MR and Master pipelines.
  • deploy now only runs if build_web is also triggered. build_web is triggered in following cases:
    • Manually triggered pipeline via UI or API on a Master or Feature/Fix branch
    • Make changes in any of the following files on Master or Feature/Fix branch:
      • template-app/**/*
      • src/**/*
      • Dockerfile
  • deploy_* will no longer run on non web projects.

Testing

In order to run the tests, we created the following test repos:

Test case Repo master version feat/app-fe-restructure version Notes
Basic change on master test-app-web https://gitlab.builder.ai/devsecops/waquidvp/test-app-mobile-ios/-/pipelines/4156715 https://gitlab.builder.ai/devsecops/waquidvp/test-app-mobile-ios/-/pipelines/4156715
Basic change on master test-app-web-and-mobile https://gitlab.builder.ai/devsecops/waquidvp/test-app-mobile-ios/-/pipelines/4156715 https://gitlab.builder.ai/devsecops/waquidvp/test-app-mobile-ios/-/pipelines/4156715
Basic change on master test-app-mobile https://gitlab.builder.ai/devsecops/waquidvp/test-app-mobile-ios/-/pipelines/4156715 https://gitlab.builder.ai/devsecops/waquidvp/test-app-mobile-ios/-/pipelines/4156715
Basic change on master test-app-mobile-android https://gitlab.builder.ai/devsecops/waquidvp/test-app-mobile-ios/-/pipelines/4156715 https://gitlab.builder.ai/devsecops/waquidvp/test-app-mobile-ios/-/pipelines/4156715
Basic change on master test-app-mobile-ios https://gitlab.builder.ai/devsecops/waquidvp/test-app-mobile-ios/-/pipelines/4156916 https://gitlab.builder.ai/devsecops/waquidvp/test-app-mobile-ios/-/pipelines/4156918
Edited by Waquid Valiya Peedikakkal

Merge request reports