diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index bb3e3ae04cb5038f6f526972eacdaa7f1db7249e..232f28111f39875f8e59bc226bf306d0b3861be5 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -1,26 +1,26 @@ fail_fast: true repos: - - repo: "https://github.com/pre-commit/pre-commit-hooks.git" - rev: v4.4.0 - hooks: - - id: check-byte-order-marker - - id: check-case-conflict - - id: check-merge-conflict - - id: check-symlinks - - id: check-toml - - id: end-of-file-fixer - - id: mixed-line-ending - - id: trailing-whitespace - - id: detect-private-key + # - repo: "https://github.com/pre-commit/pre-commit-hooks.git" + # rev: v4.4.0 + # hooks: + # - id: check-byte-order-marker + # - id: check-case-conflict + # - id: check-merge-conflict + # - id: check-symlinks + # - id: check-toml + # - id: end-of-file-fixer + # - id: mixed-line-ending + # - id: trailing-whitespace + # - id: detect-private-key # - id: check-executables-have-shebangs # - id: check-shebang-scripts-are-executable - - repo: "https://github.com/codespell-project/codespell.git" - rev: v2.2.2 - hooks: - - id: codespell - args: [-I, ci/codespell_ignore_words] - verbose: true - exclude: \.rules$ + # - repo: "https://github.com/codespell-project/codespell.git" + # rev: v2.2.2 + # hooks: + # - id: codespell + # args: [-I, ci/codespell_ignore_words] + # verbose: true + # exclude: \.rules$ # - repo: "https://github.com/psf/black.git" # rev: 22.8.0 # hooks: diff --git a/.workflow/branch-pipeline.yml b/.workflow/branch-pipeline.yml new file mode 100644 index 0000000000000000000000000000000000000000..9d2a2926f31b55f68083a3cb58c4cb6d6f43a07f --- /dev/null +++ b/.workflow/branch-pipeline.yml @@ -0,0 +1,53 @@ +version: '1.0' +name: branch-pipeline +displayName: BranchPipeline +stages: + - stage: + name: compile + displayName: 编译 + steps: + - step: build@maven + name: build_maven + displayName: Maven 构建 + # 支持6、7、8、9、10、11六个版本 + jdkVersion: 8 + # 支持2.2.1、3.2.5、3.3.9、3.5.2、3.5.3、3.5.4、3.6.1、3.6.3八个版本 + mavenVersion: 3.3.9 + # 构建命令 + commands: + - mvn -B clean package -Dmaven.test.skip=true + # 非必填字段,开启后表示将构建产物暂存,但不会上传到制品库中,7天后自动清除 + artifacts: + # 构建产物名字,作为产物的唯一标识可向下传递,支持自定义,默认为BUILD_ARTIFACT。在下游可以通过${BUILD_ARTIFACT}方式引用来获取构建物地址 + - name: BUILD_ARTIFACT + # 构建产物获取路径,是指代码编译完毕之后构建物的所在路径,如通常jar包在target目录下。当前目录为代码库根目录 + path: + - ./target + - step: publish@general_artifacts + name: publish_general_artifacts + displayName: 上传制品 + # 上游构建任务定义的产物名,默认BUILD_ARTIFACT + dependArtifact: BUILD_ARTIFACT + # 上传到制品库时的制品命名,默认output + artifactName: output + dependsOn: build_maven + - stage: + name: release + displayName: 发布 + steps: + - step: publish@release_artifacts + name: publish_release_artifacts + displayName: '发布' + # 上游上传制品任务的产出 + dependArtifact: output + # 发布制品版本号 + version: '1.0.0.0' + # 是否开启版本号自增,默认开启 + autoIncrement: true +triggers: + push: + branches: + exclude: + - master + include: + - .* diff --git a/.workflow/master-pipeline.yml b/.workflow/master-pipeline.yml new file mode 100644 index 0000000000000000000000000000000000000000..1f18dd493649ab370d12cb7c2f641708581f7e1e --- /dev/null +++ b/.workflow/master-pipeline.yml @@ -0,0 +1,44 @@ +version: '1.0' +name: master-pipeline +displayName: MasterPipeline +triggers: + trigger: auto + push: + branches: + include: + - master +stages: + - name: compile + displayName: 编译 + strategy: naturally + trigger: auto + steps: + - step: build@maven + name: build_maven + displayName: Maven 构建 + jdkVersion: 8 + mavenVersion: 3.3.9 + commands: + - cargo build + artifacts: + - name: BUILD_ARTIFACT + path: + - ./target + strategy: {} + - step: publish@general_artifacts + name: publish_general_artifacts + displayName: 上传制品 + dependArtifact: BUILD_ARTIFACT + artifactName: output + dependsOn: build_maven + - name: release + displayName: 发布 + strategy: naturally + trigger: auto + steps: + - step: publish@release_artifacts + name: publish_release_artifacts + displayName: 发布 + dependArtifact: output + version: 1.0.0.0 + autoIncrement: true diff --git a/.workflow/pr-pipeline.yml b/.workflow/pr-pipeline.yml new file mode 100644 index 0000000000000000000000000000000000000000..3f7579dd405c85f97f77df0357ec4893e616f85f --- /dev/null +++ b/.workflow/pr-pipeline.yml @@ -0,0 +1,40 @@ +version: '1.0' +name: pr-pipeline +displayName: PRPipeline +stages: + - stage: + name: compile + displayName: 编译 + steps: + - step: build@maven + name: build_maven + displayName: Maven 构建 + # 支持6、7、8、9、10、11六个版本 + jdkVersion: 8 + # 支持2.2.1、3.2.5、3.3.9、3.5.2、3.5.3、3.5.4、3.6.1、3.6.3八个版本 + mavenVersion: 3.3.9 + # 构建命令 + commands: + - mvn -B clean package -Dmaven.test.skip=true + # 非必填字段,开启后表示将构建产物暂存,但不会上传到制品库中,7天后自动清除 + artifacts: + # 构建产物名字,作为产物的唯一标识可向下传递,支持自定义,默认为BUILD_ARTIFACT。在下游可以通过${BUILD_ARTIFACT}方式引用来获取构建物地址 + - name: BUILD_ARTIFACT + # 构建产物获取路径,是指代码编译完毕之后构建物的所在路径,如通常jar包在target目录下。当前目录为代码库根目录 + path: + - ./target + - step: publish@general_artifacts + name: publish_general_artifacts + displayName: 上传制品 + # 上游构建任务定义的产物名,默认BUILD_ARTIFACT + dependArtifact: BUILD_ARTIFACT + # 构建产物制品库,默认default,系统默认创建 + artifactRepository: default + # 上传到制品库时的制品命名,默认output + artifactName: output + dependsOn: build_maven +triggers: + pr: + branches: + include: + - master diff --git a/ci/01-pre-commit.sh b/ci/01-pre-commit.sh index e90a936a6a8bde6dd6401a7ec92eb3cc36992dec..c6ad92ff1930567f0947d071f80e04e597f246aa 100755 --- a/ci/01-pre-commit.sh +++ b/ci/01-pre-commit.sh @@ -29,9 +29,7 @@ pip3 install pre-commit ruamel.yaml -i https://pypi.mirrors.ustc.edu.cn/simple | # oldnum=`git rev-list origin/master --no-merges --count` # newnum=`git rev-list HEAD --no-merges --count` # changenum=$[newnum - oldnum] -rustup override set 1.57 cargo check || exit 1 -git add . -A # add doc for src code for rustlist in `git diff origin/master --name-only | grep \.rs$ | grep -v "/examples/" | tr '\n' ' '` @@ -61,4 +59,3 @@ sources=("https://521github.com/" "https://gitclone.com/github.com/" "https://gh url=$(test_fasturl ${sources[@]}) git config --global url."${url}".insteadOf "https://github.com/" pre-commit run -vvv --all-files -git config --unset --global url."${url}".insteadOf "https://github.com/"