tree c139dff529dd9838e019fc2772bfa8c23b1bb7c7
parent 968fa09183dc8cb604ec03e0efb82b2e9fc9eb58
author PorterZhang2021 <porterzhang@aliyun.com> 1713145484 +0800
committer Cheng Pan <chengpan@apache.org> 1713145484 +0800
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCAAdFiEEj8gHXh/cMDJ2xnbugAGVJim8x10FAmYchowACgkQgAGVJim8
 x10Dgw//VaDZXuCrWIygf2rBPpAMY07lgnz78Cpr5rGoiS9ZJ4jOtgA+COoSoKyI
 KTULYOsXGPQ6ypKmnJgZp7OMOhbMBsb2442hpgGGd+QE3bH41R2IuPBlPwGxYcJw
 4n6ma5XIvuuW2CY1ZhrVAgcrEs4rM8xlDOFn0FDRwWoDVmsIs9vYVWCYYRsKAMPO
 +89tTGQBdDOwa0rRBwRtVb/z25D8qceIcPnb2JBlYnK0RNK7WF7OGZzWtcPPEjQ1
 gSbOenJDpfT6shIsEKRbSNIxgP/4isdSNuAgsKaqEI/M9cqe36Ad/2mTos96XVXB
 aHh6m986KLaGogeIa32hOq6AAXiqH2jzAG+uRG7MUkgKKfsM1CHWLzkUK8rjLsJV
 XUYfYbZepR08AfDa4xpaY/aPU3G/hKlqO/xJ/hoi8h7kesToXsT5HJIGgR9CVoB2
 AZw0EG+O2DFiPTP5KvJU5JewI5LOus231qrWRFAvMo2kzzaKhMNRlKlbkakAA1GY
 i96qpIpwAXlPEgWYBVQg4aNOy24sD/ABVToNW9IlHKDCUiZOns1PaJNfUG6FEBXB
 0vaXdyGEIWCJ90GD7YC1vZvFAffhinmkoAoI7nXYbQqlJeH5Jzw20sx7pwRweiLr
 5othsOBd+z21iwHuqOxJ4sTpSak5jUJlCdcNxlKZh4GnZqx+9A0=
 =kkDJ
 -----END PGP SIGNATURE-----

[KYUUBI #6297] Package Spark SQL engine both Scala 2.12 and 2.13

# :mag: Description
## Issue References 🔗

This pull request fixes #6297

## Describe Your Solution 🔧

Here are my main modifications:
1. In the `build/dist` file, I added an additional packaging command that detects the version of `SCALA_VERSION`. If it is version 2.12, then it will additionally package version 2.13, otherwise it will package version 2.12
2. In the section of `# Copy spark engines`, the Jar packages of versions 2.12 and 2.13 will be moved to `$DISTDIR/externals/engines/spark/`

This is my first time submitting a PR, so there may be many unfamiliar areas, and I don't know if my changes meet the needs of the community. More guidance may be needed. When testing locally, it was able to be packaged successfully

## Types of changes :bookmark:

- [ ] Bugfix (non-breaking change which fixes an issue)
- [x] New feature (non-breaking change which adds functionality)
- [ ] Breaking change (fix or feature that would cause existing functionality to change)

## Test Plan 🧪

![image](https://github.com/apache/kyuubi/assets/96274454/fb1981e0-dc3f-47a3-a497-2ae0d3161e6b)

![image](https://github.com/apache/kyuubi/assets/96274454/b7307738-7699-4c2c-b6ad-08b323539d90)

---

# Checklist 📝

- [x] This patch was not authored or co-authored using [Generative Tooling](https://www.apache.org/legal/generative-tooling.html)

**Be nice. Be informative.**

Closes #6305 from PorterZhang2021/issue-6297.

Closes #6297

efc864373 [PorterZhang2021] Improved task "Package Spark SQL engine both Scala 2.12 and 2.13" #6297
cb9310bee [PorterZhang2021] Improved task "Package Spark SQL engine both Scala 2.12 and 2.13" #6297
b6c907509 [PorterZhang2021] Finished task "Package Spark SQL engine both Scala 2.12 and 2.13" #6297

Authored-by: PorterZhang2021 <porterzhang@aliyun.com>
Signed-off-by: Cheng Pan <chengpan@apache.org>
