Skip to content

Commit

Permalink
Bump JDK 21 from ea to GA
Browse files Browse the repository at this point in the history
  • Loading branch information
m1ngyuan committed Oct 14, 2023
2 parents 1defdea + 4754f91 commit f72ae7a
Show file tree
Hide file tree
Showing 1,027 changed files with 1,926 additions and 23,077 deletions.
7 changes: 7 additions & 0 deletions .asf.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -35,3 +35,10 @@ github:
features:
issues: true
projects: true
protected_branches:
master:
required_status_checks:
contexts:
- Check - CheckStyle
- Check - Spotless
- Check - License
2 changes: 0 additions & 2 deletions .github/ISSUE_TEMPLATE/bug-report.md
Original file line number Diff line number Diff line change
Expand Up @@ -19,8 +19,6 @@ Please answer these questions before submitting your issue. Thanks!

### Which version of ElasticJob did you use?

### Which project did you use? ElasticJob-Lite or ElasticJob-Cloud?

### Expected behavior

### Actual behavior
Expand Down
9 changes: 6 additions & 3 deletions .github/workflows/maven.yml
Original file line number Diff line number Diff line change
Expand Up @@ -21,8 +21,6 @@
name: Java CI with Maven

on:
push:
branches: [ master ]
pull_request:
branches: [ master ]

Expand All @@ -46,9 +44,14 @@ jobs:
with:
distribution: 'temurin'
java-version: ${{ matrix.java }}
- name: Build with Maven
- name: Build with Maven in Windows
if: matrix.os == 'windows-latest'
run: |
./mvnw --batch-mode --no-transfer-progress '-Dmaven.javadoc.skip=true' clean install
- name: Build with Maven in Linux or macOS
if: matrix.os == 'macos-latest' || matrix.os == 'ubuntu-latest'
run: |
./mvnw --batch-mode --no-transfer-progress '-Dmaven.javadoc.skip=true' clean install -Pcheck
- name: Upload coverage to Codecov
if: matrix.os == 'ubuntu-latest' && matrix.java == '8'
uses: codecov/codecov-action@v3
Expand Down
55 changes: 55 additions & 0 deletions .github/workflows/required-check.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,55 @@
#
# Licensed to the Apache Software Foundation (ASF) under one or more
# contributor license agreements. See the NOTICE file distributed with
# this work for additional information regarding copyright ownership.
# The ASF licenses this file to You under the Apache License, Version 2.0
# (the "License"); you may not use this file except in compliance with
# the License. You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
#

name: Required - Check

on:
pull_request:
branches: [ master ]
workflow_dispatch:

concurrency:
group: check-${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true

jobs:
check-checkstyle:
name: Check - CheckStyle
runs-on: ubuntu-latest
timeout-minutes: 10
steps:
- uses: actions/checkout@v3
- name: Run CheckStyle
run: ./mvnw checkstyle:check -Pcheck -T1C

check-spotless:
name: Check - Spotless
runs-on: ubuntu-latest
timeout-minutes: 10
steps:
- uses: actions/checkout@v3
- name: Run Spotless
run: ./mvnw spotless:check -Pcheck -T1C

check-license:
name: Check - License
runs-on: ubuntu-latest
timeout-minutes: 10
steps:
- uses: actions/checkout@v3
- name: Run Apache Rat
run: ./mvnw apache-rat:check -Pcheck -T1C
25 changes: 2 additions & 23 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,8 +4,6 @@

[![Stargazers over time](https://starchart.cc/apache/shardingsphere-elasticjob.svg)](https://starchart.cc/apache/shardingsphere-elasticjob)

ElasticJob is a distributed scheduling solution consisting of two separate projects, ElasticJob-Lite and ElasticJob-Cloud.

Through the functions of flexible scheduling, resource management and job management,
it creates a distributed scheduling solution suitable for Internet scenarios,
and provides a diversified job ecosystem through open architecture design.
Expand All @@ -31,24 +29,9 @@ You are welcome to communicate with the community via the [mailing list](mailto:
Using ElasticJob developers can no longer worry about the non functional requirements such as job scale out, so that they can focus more on business coding.
At the same time, it can release operators too, so that they do not have to worry about high availability and management, and can automatically operate by simply adding servers.

### ElasticJob-Lite

A lightweight, decentralized solution that provides distributed task sharding services.

![ElasticJob-Lite Architecture](https://shardingsphere.apache.org/elasticjob/current/img/architecture/elasticjob_lite.png)

### ElasticJob-Cloud
It is a lightweight, decentralized solution that provides distributed task sharding services.

Uses Mesos to manage and isolate resources.

![ElasticJob-Cloud Architecture](https://shardingsphere.apache.org/elasticjob/current/img/architecture/elasticjob_cloud.png)

| | *ElasticJob-Lite* | *ElasticJob-Cloud* |
| ----------------- | ----------------- | ------------------ |
| Decentralization | Yes | No |
| Resource Assign | No | Yes |
| Job Execution | Daemon | Daemon + Transient |
| Deploy Dependency | ZooKeeper | ZooKeeper + Mesos |
![ElasticJob Architecture](https://shardingsphere.apache.org/elasticjob/current/img/architecture/elasticjob_lite.png)

## Features

Expand Down Expand Up @@ -94,7 +77,3 @@ Maven 3.5.0 or above required.
### ZooKeeper

ZooKeeper 3.6.0 or above required. [See details](https://zookeeper.apache.org/)

### Mesos (ElasticJob-Cloud only)

Mesos 1.1.0 or compatible version required (For ElasticJob-Cloud only). [See details](https://mesos.apache.org/)
26 changes: 3 additions & 23 deletions README_ZH.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@

[![Stargazers over time](https://starchart.cc/apache/shardingsphere-elasticjob.svg)](https://starchart.cc/apache/shardingsphere-elasticjob)

ElasticJob 是面向互联网生态和海量任务的分布式调度解决方案,由两个相互独立的子项目 ElasticJob-Lite 和 ElasticJob-Cloud 组成
ElasticJob 是面向互联网生态和海量任务的分布式调度解决方案。
它通过弹性调度、资源管控、以及作业治理的功能,打造一个适用于互联网场景的分布式调度解决方案,并通过开放的架构设计,提供多元化的作业生态。
它的各个产品使用统一的作业 API,开发者仅需一次开发,即可随意部署。

Expand All @@ -24,25 +24,9 @@ ElasticJob 已于 2020 年 5 月 28 日成为 [Apache ShardingSphere](https://sh

使用 ElasticJob 能够让开发工程师不再担心任务的线性吞吐量提升等非功能需求,使他们能够更加专注于面向业务编码设计;
同时,它也能够解放运维工程师,使他们不必再担心任务的可用性和相关管理需求,只通过轻松的增加服务节点即可达到自动化运维的目的。
它定位为轻量级无中心化解决方案,使用 jar 的形式提供分布式任务的协调服务。

### ElasticJob-Lite

定位为轻量级无中心化解决方案,使用 jar 的形式提供分布式任务的协调服务。

![ElasticJob-Lite Architecture](https://shardingsphere.apache.org/elasticjob/current/img/architecture/elasticjob_lite.png)

### ElasticJob-Cloud

采用自研 Mesos Framework 的解决方案,额外提供资源治理、应用分发以及进程隔离等功能。

![ElasticJob-Cloud Architecture](https://shardingsphere.apache.org/elasticjob/current/img/architecture/elasticjob_cloud.png)

| | *ElasticJob-Lite* | *ElasticJob-Cloud* |
| --------- | ----------------- | ------------------ |
| 无中心化 |||
| 资源分配 | 不支持 | 支持 |
| 作业模式 | 常驻 | 常驻 + 瞬时 |
| 部署依赖 | ZooKeeper | ZooKeeper + Mesos |
![ElasticJob Architecture](https://shardingsphere.apache.org/elasticjob/current/img/architecture/elasticjob_lite.png)

## 功能列表

Expand Down Expand Up @@ -88,7 +72,3 @@ ElasticJob 已于 2020 年 5 月 28 日成为 [Apache ShardingSphere](https://sh
### ZooKeeper

请使用 ZooKeeper 3.6.0 及其以上版本。[详情参见](https://zookeeper.apache.org/)

### Mesos(仅 ElasticJob-Cloud 使用)

请使用 Mesos 1.1.0 及其兼容版本。[详情参见](https://mesos.apache.org/)
File renamed without changes.
Original file line number Diff line number Diff line change
Expand Up @@ -23,24 +23,24 @@
<artifactId>elasticjob-distribution</artifactId>
<version>3.1.0-SNAPSHOT</version>
</parent>
<artifactId>elasticjob-lite-distribution</artifactId>
<artifactId>elasticjob-bin-distribution</artifactId>
<packaging>pom</packaging>
<name>${project.artifactId}</name>

<dependencies>
<dependency>
<groupId>org.apache.shardingsphere.elasticjob</groupId>
<artifactId>elasticjob-lite-core</artifactId>
<artifactId>elasticjob-engine-core</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>org.apache.shardingsphere.elasticjob</groupId>
<artifactId>elasticjob-lite-spring-namespace</artifactId>
<artifactId>elasticjob-engine-spring-namespace</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>org.apache.shardingsphere.elasticjob</groupId>
<artifactId>elasticjob-lite-spring-boot-starter</artifactId>
<artifactId>elasticjob-engine-spring-boot-starter</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
Expand Down Expand Up @@ -76,7 +76,7 @@
<phase>package</phase>
<configuration>
<descriptors>
<descriptor>src/main/assembly/elasticjob-lite-binary-distribution.xml</descriptor>
<descriptor>src/main/assembly/elasticjob-binary-distribution.xml</descriptor>
</descriptors>
</configuration>
</execution>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@
<format>tar.gz</format>
</formats>
<includeBaseDirectory>true</includeBaseDirectory>
<baseDirectory>${project.build.finalName}-lite-bin</baseDirectory>
<baseDirectory>${project.build.finalName}-bin</baseDirectory>

<fileSets>
<fileSet>
Expand Down
Original file line number Diff line number Diff line change
@@ -1,15 +1,15 @@
Welcome to Apache ShardingSphere-ElasticJob
===============================================================================

ElasticJob is a distributed scheduling solution consisting of two separate projects, ElasticJob-Lite and ElasticJob-Cloud.
ElasticJob is a distributed scheduling solution.

Through the functions of flexible scheduling, resource management and job management,
it creates a distributed scheduling solution suitable for Internet scenarios,
and provides a diversified job ecosystem through open architecture design.
It uses a unified job API for each project.
Developers only need code one time and can deploy at will.

ElasticJob-Cloud uses Mesos to manage and isolate resources.
ElasticJob is a lightweight, decentralized solution that provides distributed task sharding services.

ElasticJob became an Apache ShardingSphere Sub project on May 28 2020.

Expand Down
13 changes: 8 additions & 5 deletions elasticjob-infra/pom.xml → distribution/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@
~ the License. You may obtain a copy of the License at
~
~ http://www.apache.org/licenses/LICENSE-2.0
~
~
~ Unless required by applicable law or agreed to in writing, software
~ distributed under the License is distributed on an "AS IS" BASIS,
~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
Expand All @@ -23,13 +23,16 @@
<artifactId>elasticjob</artifactId>
<version>3.1.0-SNAPSHOT</version>
</parent>
<artifactId>elasticjob-infra</artifactId>
<artifactId>elasticjob-distribution</artifactId>
<packaging>pom</packaging>
<name>${project.artifactId}</name>

<modules>
<module>elasticjob-infra-common</module>
<module>elasticjob-registry-center</module>
<module>elasticjob-restful</module>
<module>src</module>
<module>bin</module>
</modules>

<properties>
<maven.deploy.skip>true</maven.deploy.skip>
</properties>
</project>
File renamed without changes.
51 changes: 0 additions & 51 deletions docs/content/dev-manual/roadmap.cn.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,8 +5,6 @@ weight = 5
chapter = true
+++

## Kernel

- [x] Unified Job Config API
- [x] Core Config
- [x] Type Config
Expand All @@ -22,9 +20,6 @@ chapter = true
- [ ] Other Event Listener
- [ ] Unified Schedule API
- [ ] Unified Resource API

## ElasticJob-Lite

- [x] Distributed Features
- [x] High Availability
- [x] Elastic scale in/out
Expand All @@ -49,49 +44,3 @@ chapter = true
- [x] Namespace
- [x] Bean Injection
- [x] Spring Boot Starter(3.0.0-alpha 提供)

## ElasticJob-Cloud
- [x] Transient Job
- [x] High Availability
- [x] Elastic scale in/out
- [x] Failover
- [x] Misfire
- [x] Idempotency
- [x] Daemon Job
- [x] High Availability
- [x] Elastic scale in/out
- [ ] Failover
- [ ] Misfire
- [x] Idempotency
- [x] Mesos Scheduler
- [x] High Availability
- [x] Reconcile
- [ ] Redis Based Queue Improvement
- [ ] Http Driver
- [x] Mesos Executor
- [x] Executor Reuse Pool
- [ ] Progress Reporting
- [ ] Health Detection
- [ ] Log Redirect
- [x] Lifecycle Management
- [x] Job Add/Remove
- [ ] Job Pause/Resume
- [x] Job Disable/Enable
- [ ] Job Shutdown
- [x] App Add/Remove
- [x] App Disable/Enable
- [x] Restful API
- [x] Web Console
- [ ] Job Dependency
- [ ] Listener
- [ ] Workflow
- [ ] DAG
- [x] Job Distribution
- [x] Mesos Based Distribution
- [ ] Docker Based Distribution
- [x] Resources Management
- [x] Resources Allocate
- [ ] Cross Data Center
- [ ] A/B Test
- [x] Spring Integrate
- [x] Bean Injection
Loading

0 comments on commit f72ae7a

Please sign in to comment.