Skip to content

[CLIENT-5171] CI/CD: Remove dev workflow and dev branch. Promote directly to TEST and skip DEV gate - #1186

Open
juliannguyen4 wants to merge 41 commits into
stagefrom
CLIENT-5171-cicd-rm-dev-branch-and-promote-directly-to-TEST
Open

[CLIENT-5171] CI/CD: Remove dev workflow and dev branch. Promote directly to TEST and skip DEV gate#1186
juliannguyen4 wants to merge 41 commits into
stagefrom
CLIENT-5171-cicd-rm-dev-branch-and-promote-directly-to-TEST

Conversation

@juliannguyen4

@juliannguyen4 juliannguyen4 commented Aug 4, 2026

Copy link
Copy Markdown
Collaborator

This reduces the time it takes to provide QE with artifacts by upwards of 66% compared to the time it currently takes in dev. We run valgrind and the tests from both the dev and stage workflow in parallel now instead of serially.

Notes

  • It still takes 50% less time instead of 66% because we only have four out of the original five mac runners available for this repo; I lent a runner to Paul Brackin for the Python SDK repo.
  • The linkcheck job is failing twice because I reset stage-test to point to the same revision as this branch

Extra changes

We are removing testing for Alma Linux 8 (binary compatible with RHEL 8) here, which is okay since we dropped support for RHEL 8 in an earlier release.

TODO

  • Manual testing
  • Ensure e2e / import tests are skipped when no code changes are made that would affect the results
  • Stage should be up to date with dev before merging this PR
  • Delete tags and release bundles generated during manual testing
  • Delete docs built for dummy release tag
  • Delete dev branch and branch protection rule for dev after merging
  • Notify Diparth of branch strategy changes

…kes promoting artifacts to TEST twice as fast compared to now.
@codecov-commenter

codecov-commenter commented Aug 4, 2026

Copy link
Copy Markdown

Codecov Report

❌ Patch coverage is 91.72185% with 25 lines in your changes missing coverage. Please review.
✅ Project coverage is 85.64%. Comparing base (d7b2a46) to head (e967f74).

Files with missing lines Patch % Lines
src/main/conversions.c 57.14% 15 Missing ⚠️
src/main/policy.c 83.87% 5 Missing ⚠️
src/main/client/cdt_operation_utils.c 84.61% 4 Missing ⚠️
src/main/client/operate.c 75.00% 1 Missing ⚠️
Additional details and impacted files
@@            Coverage Diff             @@
##            stage    #1186      +/-   ##
==========================================
+ Coverage   85.46%   85.64%   +0.18%     
==========================================
  Files         101      102       +1     
  Lines       14661    14888     +227     
==========================================
+ Hits        12530    12751     +221     
- Misses       2131     2137       +6     

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@juliannguyen4

Copy link
Copy Markdown
Collaborator Author

This is blocked because there is currently a release bundle that I'm trying to provide a customer with. I don't want to override that bundle with a "test" one

@juliannguyen4
juliannguyen4 changed the base branch from stage to dev August 5, 2026 14:29
…n updating the version on a test branch."

This reverts commit d560260.
…om JFrog to Github actions. This will probably be used later on for nightly / weekend testing.
…ing representation, then have fromJson() convert back to JSON object in test-artifact workflow
@juliannguyen4
juliannguyen4 marked this pull request as ready for review August 13, 2026 16:37
@juliannguyen4
juliannguyen4 changed the base branch from dev to stage August 13, 2026 16:37
juliannguyen4 and others added 3 commits August 13, 2026 14:07
…er value, where the field is represented as an enum type in the C client (#1142)

Deprecations

The following API calls will emit a DeprecationWarning if an out of bounds value is passed for:

- bit_resize operation's resize_flags parameter
- map_create operation's map_order parameter
- list_set_order and list_create operations' list_order parameter
- String operation is_numeric's numeric_type parameter
- String operations regex_compare and regex_replace's regex_flags parameter
- list_sort operation's and ListSort expression's sort_flags and order parameters, respectively
- cdt_ctx.cdt_ctx_map_key_create's order parameter
- cdt_ctx.cdt_ctx_list_index_create's order parameter
- All bitwise operations' bit policy parameter
- All map operations and expressions' map policy parameter
- All list operations and expressions' list policy parameter
- All HLL operations that take in an HLL policy parameter

Risks

- If new members are added to C client enums, this code must be updated to account for the new member. Currently the C client does not have a sentinel value to represent the max value for each enum type

Breaking change: for bit resize flags, list and map order, string ops' numeric type and regex flags, and list sort flags (except for cdt_ctx objects), a ParamError is now raised if the user passes a value < INT_MIN or > INT_MAX instead of INT64_MIN and INT64_MAX, respectively. This is not a big deal since these enum values are very well within (INT_MIN, INT_MAX), anyways.

@shannonklaus shannonklaus left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

You also need to change dependabot to target stage. You should search for dev and fix all of the stale comments/etc.

Also we talked about having a rotating test plan, when is this part of the python CI/CD refactor going to be completed?

Comment thread .github/workflows/stage-workflow.yml
Comment thread .github/workflows/stage-tests.yml
Comment thread .github/workflows/stage-workflow.yml Outdated
@juliannguyen4

Copy link
Copy Markdown
Collaborator Author

You also need to change dependabot to target stage

I forgot to do this; thanks for the reminder

@juliannguyen4

Copy link
Copy Markdown
Collaborator Author

Also we talked about having a rotating test plan, when is this part of the python CI/CD refactor going to be completed?

I wanted to scope this PR to just remove the dev branch. I plan to implement the rotating test plan after this current sprint

…ld not run i.e stage tests and release bundle creation + promotion.
…the tools package image 12.1.1_2 being deleted in JFrog by the new cleanup policy
…the default tag used in the shared action). So apply this fix everywhere else that setup-aerospike-server is called.
…e replaced with *-docker-prod-public-local since any artifacts in JFrog dev repos will be cleaned up after 30 days
…ll previous ongoing runs. This assumes that only the latest change in stage will be release candidates.
… and dry-run in workflow run name to ensure those inputs' values are correct.
…itly target this group instead of the default one
@juliannguyen4

Copy link
Copy Markdown
Collaborator Author

TODO - need to publish manylinux openssl image to internal stage local JFrog repo

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