Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[minor] Review fvt-launcher design for manage and its dependencies #1025

Merged
merged 31 commits into from
Jun 17, 2024

Conversation

alequint
Copy link
Contributor

@alequint alequint commented Jun 12, 2024

Goal

  • Review fvt-manage-is and split it in phases (all tests are running in parallel today, it will not work for selenium based on previous experience)
  • Reintroduce fvt-manage-is
  • Reintroduce ivt (already done in by @unnati-solanki-git in [minor] IVT launcher changes #1014, to be tested integrated with the changes in current PR)
  • Move Manage's base-api-setup outside fvt-manage and make fvt-manage, fvt-manage-is and fvt-optimizer depend on it
  • Review waitfor-installation task that runs at the end of fvt-launcher:
    • when installation fails too early, waitfor-installation keep waiting till sync status is Completed. Besides that, we should also make Failed as a escape route and then waitfor-configmap logic will fail pipeline earlier
  • Review wait for install tasks in Layer 4 pipelines as per https://jsw.ibm.com/browse/MASCORE-2908

Evidences

About fvt-manage-is

Before:

image

After (in 4 phases):

image

Reintroduce Manage IS + Manage Setup move

  • Manage-is is part of Manage, so launchfvt-manage-is must be considered like launchfvt-manag, between same waifor / approval tasks in fvt-launcher;
  • Manage Setup must come before Manage, Manage IS, Optimizer and Predict
image

Escape Route in fvt-launcher's waitfor-installation

Considering configmap, key and value to watch:

    - name: configmap_name
       value: sync-install
    - name: configmap_key
       value: INSTALL_STATUS
    - name: configmap_target_value
       value: Completed

... added a escape route against the same map:

   - name: escape_configmap_name
      value: sync-install
   - name: escape_configmap_key
      value: INSTALL_STATUS

During the iteration, If value is not Completed, we check if that key assumed any different value, like Failed. And as Failed is different from Completed and we are not ignoring failures, task will exit in error earlier than timeout.

In addition, as per slack conversation here, wait-for-configmap has been slightly changed to consider input of config map value with more than one value (i.e. Completed and Succeeded)

About wait-for-install Tasks in Layer 4 pipelines

Evidence during uninstall pipeline (note use of wait-for-pipelinerun, repeating checking every 600 seconds, as opposed to old wait-for-install, using oc condition with 12h timeout:

image

Note: ansible-FVT PR supporting changes above: https://github.ibm.com/maximoappsuite/ansible-fvt/pull/433

Final Test

FVT Launcher has launched all the things properly in the right sequence:

image

Manage Industry Solutions pipeline running as expected (including Health): image




Finally, IVT Pipeline running after manage and monitor FVTs are finished:

image

Note: in the screenshot we see approval-manange did not run. That is because I had not updated when criteria of that task as I did with waitfor-manage. The criteria did not consider manage-is launcher to run, only manage and mobile (and both are false in this run). I did this correction in a subsequent commit here: f04377b


Test evidence of the final sync install step in FVT Launcher, where code was modified to receive two possible target values for the config-mal key: image

And here indicates that install pipeline set it up with Completed

image

@alequint alequint changed the title [minor] Review wait-for-install task in all Layer 4 pipelines [minor] Review fvt-launcher design of manage and its dependencies Jun 13, 2024
@alequint alequint changed the title [minor] Review fvt-launcher design of manage and its dependencies [minor] Review fvt-launcher design for manage and its dependencies Jun 14, 2024
@alequint alequint marked this pull request as ready for review June 14, 2024 20:44
@sanjayprab sanjayprab merged commit 4894573 into master Jun 17, 2024
3 checks passed
@sanjayprab sanjayprab deleted the syncpipe branch June 17, 2024 13:17
karol-czarnecki added a commit that referenced this pull request Jun 21, 2024
commit 57a7d4e
Author: André Marcelino <[email protected]>
Date:   Thu Jun 20 17:09:35 2024 -0300

    [patch] remove optimizer-manage-setup test (#1046)

commit 5d0a4ba
Author: Jon Levell <[email protected]>
Date:   Thu Jun 20 09:24:29 2024 +0100

    [patch] mustgather: collect iot messaging proxy trace (#1043)

commit 742acc2
Author: Ian Boden <[email protected]>
Date:   Tue Jun 18 02:05:08 2024 +0100

    [patch] Fix IoT approval conditional in FVT launcher (#978)

    Co-authored-by: David Parker <[email protected]>

commit 3030b05
Author: Alexandre Quinteiro <[email protected]>
Date:   Mon Jun 17 21:56:28 2024 -0300

    [patch] Use ignore_failure param in wait task (#1028)

commit 43da893
Author: David Parker <[email protected]>
Date:   Tue Jun 18 01:55:22 2024 +0100

    [patch] Convert upgrade & uninstall functions to Python (#1038)

commit f2e77ba
Author: leo-miran <[email protected]>
Date:   Mon Jun 17 18:40:26 2024 -0300

    [minor] mobile version finder (#1030)

    Co-authored-by: Alexandre Quinteiro <[email protected]>

commit 4894573
Author: Alexandre Quinteiro <[email protected]>
Date:   Mon Jun 17 10:17:44 2024 -0300

    [minor] Review fvt-launcher design for manage and its dependencies (#1025)

    Co-authored-by: Alexandre Quinteiro <[email protected]>
    Co-authored-by: unnati-solanki-git <[email protected]>

commit 0d48ef2
Author: Sanjay Prabhakar <[email protected]>
Date:   Mon Jun 17 11:10:19 2024 +0100

    [patch] push latest tagged image to quay.io (#1036)

commit 6ae7716
Author: Sanjay Prabhakar <[email protected]>
Date:   Mon Jun 17 11:04:28 2024 +0100

    [patch] workaround for pushing image action in release (#1035)

commit 3c79035
Author: Lokesh <[email protected]>
Date:   Sat Jun 15 17:23:29 2024 -0400

    [patch] incorrect namespace being passed on from cli to ansible-devop from teckton (#1034)

commit 3e523f5
Author: yuvraj-vansure <[email protected]>
Date:   Fri Jun 14 23:49:51 2024 +0530

    [minor] User defined DRO namespace (#1024)

    Co-authored-by: Yuvraj Vansure <yuvraj.vansure1.ibm.com>

commit e2e9d54
Author: Sanjay Prabhakar <[email protected]>
Date:   Thu Jun 13 01:54:32 2024 +0100

    [patch] Temporay workaround to fix image push action (#1027)

    Co-authored-by: Sanjay Prabhakar <[email protected]>

commit 50b1633
Author: Harsh Tamakuwala <[email protected]>
Date:   Mon Jun 10 13:27:53 2024 +0530

    [patch] Fixes pipeline to pass podTemplates to FVT test case (#1013)

commit efdecf4
Author: leo-miran <[email protected]>
Date:   Fri Jun 7 12:53:32 2024 -0300

    [patch] updating base_output_dir in mg template (#1020)

commit 676c43b
Author: leo-miran <[email protected]>
Date:   Thu Jun 6 20:41:52 2024 -0300

    [patch] must-gather file path change for upgrade pipeline (#1015)

    Co-authored-by: Alexandre Quinteiro <[email protected]>

commit 5301e8f
Author: anilprajapatiibm <[email protected]>
Date:   Wed Jun 5 19:14:51 2024 +0530

    [minor] Support May Catalog update (#953)

    Co-authored-by: Sanjay Prabhakar <[email protected]>

commit c8eff24
Author: unnati-solanki-git <[email protected]>
Date:   Wed Jun 5 09:26:24 2024 +0530

    [patch] Install COS and Kafka when Manage is present (#1010)

    Co-authored-by: Alexandre Quinteiro <[email protected]>
    Co-authored-by: Alexandre Quinteiro <[email protected]>

commit 5875637
Author: Alexandre Quinteiro <[email protected]>
Date:   Mon Jun 3 08:05:28 2024 -0300

    [minor] Add install sync point at the end of fvt-launcher (#996)

commit b0fce77
Author: liyongc <[email protected]>
Date:   Mon Jun 3 18:03:19 2024 +0800

    [minor]Add podTemplates for manage accelerator (#998)

commit 103b942
Author: prakrutishah06 <[email protected]>
Date:   Mon Jun 3 15:22:17 2024 +0530

    [patch] Remove esig-basic keyword from last phase  (#959)

commit 6bb36f9
Author: unnati-solanki-git <[email protected]>
Date:   Fri May 31 20:44:30 2024 +0530

    [minor] Merge health launcher into manage-is and re-organize some selenium tests (#999)

    Co-authored-by: Alexandre Quinteiro <[email protected]>
    Co-authored-by: Alexandre Quinteiro <[email protected]>

commit 3f10822
Author: Alona Varshal <[email protected]>
Date:   Thu May 30 04:21:42 2024 -0500

    [patch] Doc update for catalog guidance (#1005)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants