From ffae50d28ed50df762ab71a83d1a99834780bd45 Mon Sep 17 00:00:00 2001 From: Struchkov Mark Date: Thu, 11 May 2023 12:48:51 +0300 Subject: [PATCH] =?UTF-8?q?=D0=9D=D0=B0=D1=81=D1=82=D1=80=D0=BE=D0=B9?= =?UTF-8?q?=D0=BA=D0=B0=20cicd?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .drone.yml | 104 +++++++++++++++++++++++++++++++++++++ .gitlab-ci.yml | 17 ------- pom.xml | 136 ++++++++++++++++++++++++++++++++++++++++++++----- 3 files changed, 227 insertions(+), 30 deletions(-) create mode 100644 .drone.yml delete mode 100644 .gitlab-ci.yml diff --git a/.drone.yml b/.drone.yml new file mode 100644 index 0000000..8dd7568 --- /dev/null +++ b/.drone.yml @@ -0,0 +1,104 @@ +--- +kind: pipeline +type: docker +name: snapshot-publish + +trigger: + branch: + - develop + +volumes: + - name: m2 + host: + path: /drone/volume/m2 + +steps: + + - name: publish + image: maven:3.8.5-openjdk-17 + privileged: true + volumes: + - name: m2 + path: /root/.m2/repository + environment: + MAVEN_SETTINGS: + from_secret: MAVEN_SETTINGS + commands: + - echo "$MAVEN_SETTINGS" >> maven-settings.xml + - mvn --settings maven-settings.xml -U -P snapshot clean deploy + +--- +kind: pipeline +type: docker +name: release-maven-central + +trigger: + ref: + - refs/tags/v.*.*.* + +volumes: + - name: m2 + host: + path: /drone/volume/m2 + +steps: + + - name: publish maven central + image: maven:3.8.5-openjdk-17 + privileged: true + volumes: + - name: m2 + path: /root/.m2/repository + environment: + GPG_PRIVATE_KEY: + from_secret: GPG_PRIVATE_KEY + MAVEN_SETTINGS: + from_secret: MAVEN_SETTINGS + GPG_PASSPHRASE: + from_secret: GPG_PASSPHRASE + commands: + - echo "$GPG_PRIVATE_KEY" >> gpg.key + - echo "$MAVEN_SETTINGS" >> maven-settings.xml + - gpg --pinentry-mode loopback --passphrase $GPG_PASSPHRASE --import gpg.key + - mvn --settings maven-settings.xml -U -P ossrh,release clean deploy + +--- +kind: pipeline +type: docker +name: release-struchkov-nexus + +trigger: + ref: + - refs/tags/v.*.*.* + +volumes: + - name: m2 + host: + path: /drone/volume/m2 + +steps: + + - name: publish struchkov nexus + image: maven:3.8.5-openjdk-17 + privileged: true + volumes: + - name: m2 + path: /root/.m2/repository + environment: + GPG_PRIVATE_KEY: + from_secret: GPG_PRIVATE_KEY + MAVEN_SETTINGS: + from_secret: MAVEN_SETTINGS + GPG_PASSPHRASE: + from_secret: GPG_PASSPHRASE + commands: + - echo "$GPG_PRIVATE_KEY" >> gpg.key + - echo "$MAVEN_SETTINGS" >> maven-settings.xml + - gpg --pinentry-mode loopback --passphrase $GPG_PASSPHRASE --import gpg.key + - mvn --settings maven-settings.xml -U -P ossrh,release-struchkov-nexus clean deploy + +--- +kind: signature +hmac: 0d881ddafd2aab97acc4a92df9be4065edbe279d2cbd1641185f5ff1829eb3ac + +... diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml deleted file mode 100644 index 65f01de..0000000 --- a/.gitlab-ci.yml +++ /dev/null @@ -1,17 +0,0 @@ -image: maven:3.8.4-openjdk-11 -variables: - MAVEN_OPTS: "-Dmaven.repo.local=./.m2/repository" - -stages: - - deploy - -deploy: - stage: deploy - only: - - /^v.*$/ - except: - - branches - before_script: - - gpg --pinentry-mode loopback --passphrase $GPG_PASSPHRASE --import $GPG_PRIVATE_KEY - script: - - 'mvn --settings $MAVEN_SETTINGS -U -P ossrh,release clean deploy' \ No newline at end of file diff --git a/pom.xml b/pom.xml index cfd0e22..cfea3fb 100644 --- a/pom.xml +++ b/pom.xml @@ -33,10 +33,18 @@ 3.18.3 - 1.6.8 + + 3.11.0 + + 1.6.13 + 3.2.1 - 3.3.1 + + 3.5.0 + 3.0.1 + + 3.0.0-M7 @@ -70,6 +78,19 @@ + + org.apache.maven.plugins + maven-release-plugin + ${plugin.maven.release.ver} + + clean install + v.@{project.version} + true + false + true + true + + org.sonatype.plugins nexus-staging-maven-plugin @@ -158,6 +179,68 @@ org.sonatype.plugins nexus-staging-maven-plugin + + ossrh + https://s01.oss.sonatype.org/ + true + + + + org.apache.maven.plugins + maven-source-plugin + + + org.apache.maven.plugins + maven-gpg-plugin + + + org.apache.maven.plugins + maven-javadoc-plugin + + + + + + release-struchkov-nexus + + + + org.sonatype.plugins + nexus-staging-maven-plugin + + struchkov-nexus + https://nexus.struchkov.dev/nexus/ + true + true + + + + org.apache.maven.plugins + maven-source-plugin + + + org.apache.maven.plugins + maven-gpg-plugin + + + org.apache.maven.plugins + maven-javadoc-plugin + + + + + + snapshot + + + + org.sonatype.plugins + nexus-staging-maven-plugin + + struchkov-nexus + https://nexus.struchkov.dev/nexus/ + true + org.apache.maven.plugins @@ -167,28 +250,55 @@ org.apache.maven.plugins maven-javadoc-plugin - - org.apache.maven.plugins - maven-gpg-plugin - + + + struchkov-nexus-release + https://nexus.struchkov.dev/repository/maven-releases/ + + true + always + fail + + + false + + + + struchkov-nexus-snapshot + https://nexus.struchkov.dev/repository/maven-snapshots/ + + false + + + true + always + warn + + + + + + + struchkov-nexus-release + https://nexus.struchkov.dev/repository/maven-releases/ + + + struchkov-nexus-snapshot + https://nexus.struchkov.dev/repository/maven-snapshots/ + + + scm:git:https://github.com/haiti-projects/haiti-filter-jooq.git https://github.com/haiti-projects/haiti-filter-jooq scm:git:https://github.com/haiti-projects/haiti-filter-jooq.git - - - ossrh - https://s01.oss.sonatype.org/content/repositories/snapshots - - - uPagge