Is your feature request related to a problem? Please describe
We begin incrementing versions after we decide that we want a release. This takes a day and makes it that nightly distribution builds do not include full bundle until T-14 days to release (#1140). Instead, prepare the project to make the next release after the previous release is done, so that we can save that day and have release candidates always available for the next development iteration.
After automatic tagging has happened, increment the version for the next development iteration. For example:
- when we release 1.2.1, increment version to 1.2.2 on the 1.2 branch
- when we release 1.3.0, increment version to 1.4.0 on 1.x branch and 1.3.1 on 1.3 branch
- when we release 2.0, increment version to 3.0 on main
x 15 plugins
Describe the solution you'd like
Every project should have a workflow that notices new tags, and increments versions accordingly and makes a PR.
- On OpenSearch this change is a bit involved because it needs custom work in bcwVersions.
- In plugins it's mostly build.gradle, but there are plugins with their own weird custom steps
Acceptance Criteria
Additional Acceptance Criteria
Follow Core Branching Strategy (Ensure 1.x and 2.x branches).
opensearch-project/opensearch-plugins#142
Campaign Issues:
OpenSearch
Solution Proposed
Gradle project: Staging to add gradle tasks (setVersion and versionIncrement) that support version increment automation for supported versions and add/update gradle.properties file to the project.
OpenSearch Dashboards
Proposal Pending
Remove the dependency with hardcoded zips for 1.x versions:
Describe alternatives you've considered
No response
Additional context
It takes a day for 1 person to increment the version everywhere, documented in opensearch-project/opensearch-plugins#119. Issues that would reduce that amount of work aside of what's proposed here.
Is your feature request related to a problem? Please describe
We begin incrementing versions after we decide that we want a release. This takes a day and makes it that nightly distribution builds do not include full bundle until T-14 days to release (#1140). Instead, prepare the project to make the next release after the previous release is done, so that we can save that day and have release candidates always available for the next development iteration.
After automatic tagging has happened, increment the version for the next development iteration. For example:
x 15 plugins
Describe the solution you'd like
Every project should have a workflow that notices new tags, and increments versions accordingly and makes a PR.
Acceptance Criteria
POC: Concept/Solution to Automate the version increment to next development iteration. #2215
Implement Automated workflow that will increment the version for plugin and take care of all other code changes #2223
Pr: Workflow for version increment automation. #2291
Additional Acceptance Criteria
Follow Core Branching Strategy (Ensure 1.x and 2.x branches).
opensearch-project/opensearch-plugins#142
Campaign Issues:
OpenSearch
Solution Proposed
Gradle project: Staging to add gradle tasks (
setVersionandversionIncrement) that support version increment automation for supported versions and add/updategradle.propertiesfile to the project.Pr's: Add Version increment automation task opensearch-plugin-template-java#32
Pr's:
Staging for version increment automation alerting#489
Staging for version increment automation anomaly-detection#624
Pr's:
1.x: Staging for version increment automation anomaly-detection#607
1.3: Staging for version increment automation anomaly-detection#603
main: Staging for version increment automation anomaly-detection#608
Pr's: Staging for version increment automation asynchronous-search#157
1.x: Staging for version increment automation asynchronous-search#161
Pr's:
1.3: Staging for version increment automation. common-utils#192
1.x: Staging for version increment automation common-utils#199
main: Staging for version increment automation common-utils#200
Pr's: Staging for version increment automation reporting#391
Pr's: Staging for version increment automation index-management#409
Pr's:
1.x: Staging for version increment automation. job-scheduler#203
1.3: Staging for version increment automation. job-scheduler#196
Main: Staging for version increment automation job-scheduler#204
Pr's:
1.3: Staging for version increment automation k-NN#432
1.x: Staging for version increment automation k-NN#436
main: Staging for version increment automation k-NN#437
Staging for version increment automation k-NN#442
Pr's: Staging for version increment automation k-NN#432
Pr's: Staging for version increment automation notifications#476
Pr's:
1.x: Staging Version increment automation performance-analyzer#239
main: Staging for version increment automation performance-analyzer#238
Pr's:
main: Staging for version increment automation performance-analyzer-rca#197
2.1: Version increment automation: update task name performance-analyzer-rca#213
2.2: Version increment automation: update task name performance-analyzer-rca#214
Pr's:
main: Staging for version increment automation security#1932
1.x: Staging for version increment automation security#1933
Pr's: Staging for version increment automation sql#684
Pr's: Staging for version increment automation observability#848
Pr's:
main: Staging for version increment automation cross-cluster-replication#449
backport 2.1: [backport 2.1]Staging for version increment automation cross-cluster-replication#465
1.3: Staging for version increment automation cross-cluster-replication#466
Pr's:
1.x: Staging for version increment automation ml-commons#363
main: Staging for version increment automation ml-commons#362
1.3: [backport 1.3]Staging for version increment automation ml-commons#375
Pr's: Staging for version increment automation geospatial#91
OpenSearch Dashboards
Proposal Pending
Remove the dependency with hardcoded zips for 1.x versions:
Example with hardcoded zips: Version Increment to 1.3.3 OpenSearch release index-management#374
Example with hardcoded zips: Version Increment to 1.3.3 OpenSearch release reporting#366
Example with hardcoded zips: Incremented version to 1.3.2. sql#593
Describe alternatives you've considered
No response
Additional context
It takes a day for 1 person to increment the version everywhere, documented in opensearch-project/opensearch-plugins#119. Issues that would reduce that amount of work aside of what's proposed here.