-
Notifications
You must be signed in to change notification settings - Fork 5k
Reduce the size of tarball to continue ASF release #15004
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
Reduce the size of tarball to continue ASF release #15004
Conversation
| <version>dev-SNAPSHOT</version> | ||
| </parent> | ||
|
|
||
| <artifactId>dolphinscheduler-task-all-prune</artifactId> |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
not sure whether exists a better way to do that or not
<dependency>
<groupId>org.apache.dolphinscheduler</groupId>
<artifactId>dolphinscheduler-task-dataquality</artifactId>
<version>${project.version}</version>
<exclusions>
<exclusion>
<groupId>*</groupId>
<artifactId>*</artifactId>
</exclusion>
</exclusions>
</dependency>we exclude all libs but only keep dolphinscheduler-task-* themself
| import lombok.experimental.UtilityClass; | ||
|
|
||
| import com.facebook.presto.jdbc.internal.guava.collect.ImmutableSet; | ||
| import com.google.common.collect.ImmutableSet; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
remove dependence module dolphinscheduler-task-all and some of lib not exists anymore. so we have to change some code
| <exclude>libs/</exclude> | ||
| <exclude>bin/</exclude> | ||
| <exclude>dist-bin/</exclude> | ||
| </excludes> | ||
| </fileSet> | ||
|
|
||
| <fileSet> | ||
| <directory>${basedir}/../dolphinscheduler-dist/target/dolphinscheduler-dist-${project.version}</directory> | ||
| <outputDirectory>.</outputDirectory> | ||
| <directory>${basedir}/../dolphinscheduler-tools/target/tools/libs</directory> | ||
| <outputDirectory>tools/libs</outputDirectory> | ||
| <includes> | ||
| <include>dolphinscheduler-*.jar</include> | ||
| <include>spring-*.jar</include> | ||
| </includes> | ||
| </fileSet> | ||
| <fileSet> | ||
| <directory>${basedir}/../dolphinscheduler-tools/target/tools/dist-bin</directory> | ||
| <outputDirectory>tools/bin</outputDirectory> |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
In binary package module tools, we only need some spring jar and use dir dist-bin to load libs from others server
| <directory>${basedir}/../dolphinscheduler-dist/target/dolphinscheduler-dist-${project.version}</directory> | ||
| <outputDirectory>.</outputDirectory> |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
remove ui directory in the root level of package, cause we already have the most use one under api-server
|
|
||
| <dependency> | ||
| <groupId>org.apache.dolphinscheduler</groupId> | ||
| <artifactId>dolphinscheduler-storage-all</artifactId> |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
master do not need storage module
| CP=$DOLPHINSCHEDULER_HOME/tools/libs/* | ||
| for d in api-server; do | ||
| for f in $DOLPHINSCHEDULER_HOME/$d/libs/*.jar; do | ||
| JAR_FILE_NAME=${f##*/} | ||
| if [[ ! $CP =~ $JAR_FILE_NAME ]] && [[ ! $JAR_FILE_NAME =~ "dolphinscheduler-" ]] && [[ ! $JAR_FILE_NAME == "spring"* ]]; then | ||
| CP=$CP:$f | ||
| fi | ||
| done | ||
| done |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
load all libs in api-server exclusion dolphinscheduler-* and ^spring* to avoid launch service from api-server
Codecov Report
@@ Coverage Diff @@
## 3.2.0-release #15004 +/- ##
================================================
Coverage ? 38.84%
Complexity ? 4683
================================================
Files ? 1289
Lines ? 44345
Branches ? 4885
================================================
Hits ? 17225
Misses ? 25218
Partials ? 1902 📣 We’re building smart automated test selection to slash your CI/CD build times. Learn more |
caishunfeng
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
|
Need to check docker and k8s way. |
SbloodyS
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
That's cool~
|
We need to modify the license file. |
@caishunfeng could you help check k8s? |
Seems we already have K8S test in our CI |
a1cf67e to
a8272b2
Compare
|
SonarCloud Quality Gate failed.
|
* Reduce the size of tarball to continue ASF release for more detail you can see https://lists.apache.org/thread/rmp7fghlj0n7h9y2v3p8gkw9f9qbo6qt
* Reduce the size of tarball to continue ASF release for more detail you can see https://lists.apache.org/thread/rmp7fghlj0n7h9y2v3p8gkw9f9qbo6qt
* Reduce the size of tarball to continue ASF release for more detail you can see https://lists.apache.org/thread/rmp7fghlj0n7h9y2v3p8gkw9f9qbo6qt
…apache#15540) * Reduce the size of tarball to continue ASF release for more detail you can see https://lists.apache.org/thread/rmp7fghlj0n7h9y2v3p8gkw9f9qbo6qt # Conflicts: # tools/dependencies/known-dependencies.txt
…ASF release (#16042) * add version of 3.2.2 * Fix rpc channel leak due to concurrent operation (#16021) * Fix rpc channel leak due to concurrent operation * Throw channel create failed exception --------- Co-authored-by: Rick Cheng <[email protected]> * Fix WorkerTaskExecutorThreadPool#isOverload is incorrect (#16027) * cp: Reduce the size of tarball to continue ASF release (#15004) (#15540) * Reduce the size of tarball to continue ASF release for more detail you can see https://lists.apache.org/thread/rmp7fghlj0n7h9y2v3p8gkw9f9qbo6qt # Conflicts: # tools/dependencies/known-dependencies.txt * Increase block-until-connected in ZookeeperRegistryTestCase (#16041) * [Fix][CI] fix the ci error of Values.datasource.profile (#16031) Co-authored-by: Eric Gao <[email protected]> * Correction of Typos in the Chinese Document Appendix for Task Parameters (#16033) Co-authored-by: Rick Cheng <[email protected]> * [DSIP-39][parameter] Improvement startup parameters/global parameters/project parameters data type (#15967) * [Improvement][parameter] New data types and type filtering * [Improvement][parameter] Improvement startup parameters/global parameters data type * fix api interfaces compatible * add project parameter data type default value * [Improvement][parameter] New data types and type filtering * [Improvement][parameter] Improvement startup parameters/global parameters data type * fix api interfaces compatible * add project parameter data type default value * improvement project code * remove useless imports * remove method onClearSearchTaskType * add parameter doc * optimisation logic * code conflict resolution * code conflict resolution * [Improvement][Monitor] Show master && worker Busy Or Normal Status and Show Commands table list (#15978) * update * test * add monitor enhance ui * update * update * update doc * fix spotless * update * update * Update dolphinscheduler-api/src/main/java/org/apache/dolphinscheduler/api/controller/DataAnalysisController.java Co-authored-by: Wenjun Ruan <[email protected]> * Update dolphinscheduler-api/src/main/java/org/apache/dolphinscheduler/api/controller/DataAnalysisController.java Co-authored-by: Wenjun Ruan <[email protected]> * Update dolphinscheduler-dao/src/main/java/org/apache/dolphinscheduler/dao/mapper/ErrorCommandMapper.java Co-authored-by: Wenjun Ruan <[email protected]> * Update dolphinscheduler-dao/src/main/resources/org/apache/dolphinscheduler/dao/mapper/ErrorCommandMapper.xml Co-authored-by: Wenjun Ruan <[email protected]> * Update dolphinscheduler-dao/src/main/java/org/apache/dolphinscheduler/dao/mapper/CommandMapper.java Co-authored-by: Wenjun Ruan <[email protected]> * Update dolphinscheduler-dao/src/main/resources/org/apache/dolphinscheduler/dao/mapper/ErrorCommandMapper.xml Co-authored-by: Wenjun Ruan <[email protected]> * update * fix spotless * update --------- Co-authored-by: Wenjun Ruan <[email protected]> * [Improvement][Monitor] Add UT for montor (#15998) * formatting Code * add pom * Fix NettyRemotingClient might throw IllegalMonitorStateException (#16038) * Removed unused StateEventHandleFailure (#16052) * Remove OmitStackTraceInFastThrow in start.sh (#16054) * Update Chart.yaml Rollback APPversion * modify log msg (#16062) Co-authored-by: xiangzihao <[email protected]> * [DS-16046][fix] Set PreparedStatement parameter type (#16050) Fix the PreparedStatement parameter is TIME, set it to java.sql.Time Co-authored-by: Aaron Wang <[email protected]> Co-authored-by: Rick Cheng <[email protected]> * Update pom.xml * [DSIP-42] Add dolphinscheduler-aws-authentication module (#16043) --------- Co-authored-by: wangxj <wangxj31> Co-authored-by: Wenjun Ruan <[email protected]> Co-authored-by: Rick Cheng <[email protected]> Co-authored-by: Eric Gao <[email protected]> Co-authored-by: TianXinCoord <[email protected]> Co-authored-by: 小可耐 <[email protected]> Co-authored-by: sleo <[email protected]> Co-authored-by: xiangzihao <[email protected]> Co-authored-by: yinxiaolog <[email protected]> Co-authored-by: Aaron Wang <[email protected]>












the reason can see in https://lists.apache.org/thread/rmp7fghlj0n7h9y2v3p8gkw9f9qbo6qt
the major change in this patch is:
dolphinscheduler-task-all-pruneonly contain artifactId starting withdolphinscheduler-task-to reduce the third part library from task plugin, cause service api-server and master-server only needdolphinscheduler-task-to verify parameter(api-server), get local parameter and resource(master-server), so it does not need others third-party dependencetoolsdynamic load libs from other servers in binary tarball.the binary tarball size is reduced to ASF limit 950MB