diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 08a0dc289..2eb7b333a 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -6,9 +6,8 @@ on: - testbranch jobs: - build: - runs-on: [ubuntu-latest] - + release: + runs-on: ubuntu-18.04 steps: - uses: actions/checkout@v2 - uses: actions/setup-java@v1 @@ -16,18 +15,94 @@ jobs: java-version: '12' java-package: jdk architecture: x64 - - run: java -version + + - name: avoid release loop + run: scripts/avoid-release-loop.sh + env: + GIT_RELEASE_BOT_NAME: "nb-droid" + + - name: capture tty + run: | + echo "::set-env name=TTY::"$(tty) + echo "::set-env name=GPG_TTY::"$(tty) + + - name: initialize gpg +# env: +# GPG_TTY: ${TTY} + run: | + set -x + echo "${{ secrets.GITHUB_GPG_KEY }}" | base64 -d > private.key + gpg --import --batch ./private.key + rm ./private.key + echo "gnupg files:" + ls -l ~/.gnupg/ + + - name: set git username + run: git config --global user.email "${{ secrets.NBDROID_EMAIL }}" + - name: set git email + run: git config --global user.name "${{ secrets.NBDROID_NAME }}" + - name: Cache Maven packages uses: actions/cache@v1 with: path: ~/.m2 key: ${{ runner.os }}-m2-${{ hashFiles('**/pom.xml') }} - restore-keys: ${{ runner.os }}-m2 - - name: Build with Maven - run: mvn -B verify --file pom.xml - + restore-keys: ${{ runner.os }}-m2 + + - name: read versions + run: | + set -x + CURRENT_VERSION=$(mvn help:evaluate -Dexpression=project.version -q -DforceStdout) + RELEASE_VERSION=${CURRENT_VERSION%%-SNAPSHOT} + BASE_VERSION=$(echo "$RELEASE_VERSION" | cut -d'.' -f1-2) + MINOR_VERSION=$(echo "$RELEASE_VERSION" | cut -d'.' -f3) + NEXT_MINOR_VERSION=$(( MINOR_VERSION+1)) + NEXT_SNAPSHOT="${BASE_VERSION}.${NEXT_MINOR_VERSION}-SNAPSHOT" + echo "::set-env name=NEXT_SNAPSHOT::${NEXT_SNAPSHOT}" + echo "::set-env name=RELEASE_VERSION::${RELEASE_VERSION}" + + - name: prepare release + run: scripts/release-prepare.sh + env: + RELEASE_BRANCH_NAME: "testbranch" + GIT_RELEASE_BOT_NAME: "nb-droid" + GIT_RELEASE_BOT_EMAIL: ${{ secrets.GIT_RELEASE_BOT_EMAIL }} + ACCESS_TOKEN: ${{ secrets.GITHUB_ACCESS_TOKEN }} + GPG_ENABLED: "true" + GPG_KEY_ID: ${{ secrets.GITHUB_GPG_KEY_ID }} + GPG_KEY: ${{ secrets.GITHUB_GPG_KEY }} + GPG_SERVER_NAME: ${{ secrets.GPG_SERVER_NAME }} + GPG_PASSPHRASE: ${{ secrets.GPG_PASSPHRASE }} + MAVEN_REPO_SERVER_ID: ${{ secrets.MAVEN_REPO_SERVER_ID }} + MAVEN_REPO_SERVER_USERNAME: ${{ secrets.MVN_REPO_PRIVATE_REPO_USER }} + MAVEN_REPO_SERVER_PASSWORD: ${{ secrets.MVN_REPO_PRIVATE_REPO_PASSWORD }} + + - name: perform release + run: scripts/release-perform.sh + env: + RELEASE_BRANCH_NAME: "testbranch" + GIT_RELEASE_BOT_NAME: "nb-droid" + GIT_RELEASE_BOT_EMAIL: ${{ secrets.GIT_RELEASE_BOT_EMAIL }} + ACCESS_TOKEN: ${{ secrets.GITHUB_ACCESS_TOKEN }} + GPG_ENABLED: "true" + GPG_KEY_ID: ${{ secrets.GITHUB_GPG_KEY_ID }} + GPG_KEY: ${{ secrets.GITHUB_GPG_KEY }} + GPG_SERVER_NAME: ${{ secrets.GPG_SERVER_NAME }} + GPG_PASSPHRASE: ${{ secrets.GPG_PASSPHRASE }} + MAVEN_REPO_SERVER_ID: ${{ secrets.MAVEN_REPO_SERVER_ID }} + MAVEN_REPO_SERVER_USERNAME: ${{ secrets.MVN_REPO_PRIVATE_REPO_USER }} + MAVEN_REPO_SERVER_PASSWORD: ${{ secrets.MVN_REPO_PRIVATE_REPO_PASSWORD }} + +# - name: prepare_release +# run: mvn --global-settings deploy.xml --batch-mode clean release:prepare -DdevelopmentVersion=${NEXT_SNAPSHOT} -DreleaseVersion=${RELEASE_VERSION} +# - name: perform_release +# run: mvn --global-settings deploy.xml --batch-mode release:perform + - name: upload artifacts - run: mkdir staging && cp nb/target/nb.jar nb/appimage/target/nb staging + run: | + pwd + ls -l + mkdir staging && cp nb/target/nb.jar nb/appimage/target/nb staging - uses: actions/upload-artifact@v1 with: name: binaries @@ -39,10 +114,36 @@ jobs: with: name: guidebook path: guidebook + docs: + needs: release + runs-on: ubuntu-18.04 + steps: + - name: set git username + run: git config --global user.email "${{ secrets.NBDROID_EMAIL }}" + - name: set git email + run: git config --global user.name "${{ secrets.NBDROID_NAME }}" + - name: download guidebook + uses: actions/download-artifact@v1 + with: + name: guidebook + path: guidebook + - run: ls -la + - name: clone nosqlbench-docs + env: + NBDROID_NAME: ${{ secrets.NBDROID_NAME }} + NBDROID_TOKEN: ${{ secrets.NBDROID_TOKEN }} + run: | + git clone https://${{secrets.NBDROID_NAME}}:${{secrets.NBDROID_TOKEN}}@github.com/nosqlbench/nosqlbench-docs.git nosqlbench-docs + cd nosqlbench-docs + git remote set-url origin https://${{secrets.NBDROID_NAME}}:${{secrets.NBDROID_TOKEN}}@github.com/nosqlbench/nosqlbench-docs.git + - name: push changes + run: | + rsync -av --delete guidebook/ nosqlbench-docs/docs/ + cd nosqlbench-docs + git add docs + git add -u + git commit -m"docs update for $GITHUB_REF" + git push -# - name: Run a one-line script -# run: echo Hello, world! -# - name: Run a multi-line script -# run: | -# echo Add other actions to build, -# echo test, and deploy your project. + + diff --git a/.gitignore b/.gitignore index f19ed5294..94bfba416 100644 --- a/.gitignore +++ b/.gitignore @@ -1,3 +1,4 @@ +workshop/** local/** metrics/** bin/** diff --git a/activitytype-cql/pom.xml b/activitytype-cql/pom.xml index 6aff653d3..be034214c 100644 --- a/activitytype-cql/pom.xml +++ b/activitytype-cql/pom.xml @@ -4,7 +4,7 @@ io.nosqlbench mvn-defaults - 3.12.3-SNAPSHOT + 3.12.25-SNAPSHOT ../mvn-defaults @@ -28,7 +28,7 @@ io.nosqlbench engine-api - 3.12.3-SNAPSHOT + 3.12.25-SNAPSHOT diff --git a/activitytype-cqlverify/pom.xml b/activitytype-cqlverify/pom.xml index a9b0760d1..b3d809057 100644 --- a/activitytype-cqlverify/pom.xml +++ b/activitytype-cqlverify/pom.xml @@ -4,7 +4,7 @@ io.nosqlbench mvn-defaults - 3.12.3-SNAPSHOT + 3.12.25-SNAPSHOT ../mvn-defaults @@ -24,7 +24,7 @@ io.nosqlbench activitytype-cql - 3.12.3-SNAPSHOT + 3.12.25-SNAPSHOT diff --git a/activitytype-diag/pom.xml b/activitytype-diag/pom.xml index c8c119393..732687dcb 100644 --- a/activitytype-diag/pom.xml +++ b/activitytype-diag/pom.xml @@ -5,7 +5,7 @@ mvn-defaults io.nosqlbench - 3.12.3-SNAPSHOT + 3.12.25-SNAPSHOT ../mvn-defaults @@ -20,7 +20,7 @@ io.nosqlbench engine-api - 3.12.3-SNAPSHOT + 3.12.25-SNAPSHOT diff --git a/activitytype-http/pom.xml b/activitytype-http/pom.xml index 08d4fddf0..1ab38794d 100644 --- a/activitytype-http/pom.xml +++ b/activitytype-http/pom.xml @@ -5,7 +5,7 @@ mvn-defaults io.nosqlbench - 3.12.3-SNAPSHOT + 3.12.25-SNAPSHOT ../mvn-defaults @@ -21,7 +21,7 @@ io.nosqlbench engine-api - 3.12.3-SNAPSHOT + 3.12.25-SNAPSHOT diff --git a/activitytype-stdout/pom.xml b/activitytype-stdout/pom.xml index 763335f8c..ca22cde91 100644 --- a/activitytype-stdout/pom.xml +++ b/activitytype-stdout/pom.xml @@ -7,7 +7,7 @@ mvn-defaults io.nosqlbench - 3.12.3-SNAPSHOT + 3.12.25-SNAPSHOT ../mvn-defaults @@ -21,7 +21,7 @@ io.nosqlbench engine-api - 3.12.3-SNAPSHOT + 3.12.25-SNAPSHOT diff --git a/activitytype-tcp/pom.xml b/activitytype-tcp/pom.xml index 33270d29d..577207e6b 100644 --- a/activitytype-tcp/pom.xml +++ b/activitytype-tcp/pom.xml @@ -7,7 +7,7 @@ mvn-defaults io.nosqlbench - 3.12.3-SNAPSHOT + 3.12.25-SNAPSHOT ../mvn-defaults @@ -23,13 +23,13 @@ io.nosqlbench engine-api - 3.12.3-SNAPSHOT + 3.12.25-SNAPSHOT io.nosqlbench activitytype-stdout - 3.12.3-SNAPSHOT + 3.12.25-SNAPSHOT diff --git a/deploy.xml b/deploy.xml new file mode 100644 index 000000000..0108d4442 --- /dev/null +++ b/deploy.xml @@ -0,0 +1,14 @@ + + + + + + ${env.secrets.ossrh_server} + ${env.secrets.ossrh.nexus_username} + ${env.secrets.ossrh_server} + + + + diff --git a/docsys/pom.xml b/docsys/pom.xml index 412fde1b3..0b5e68443 100644 --- a/docsys/pom.xml +++ b/docsys/pom.xml @@ -9,7 +9,7 @@ mvn-defaults io.nosqlbench - 3.12.3-SNAPSHOT + 3.12.25-SNAPSHOT ../mvn-defaults @@ -131,17 +131,17 @@ io.nosqlbench virtdata-processors - 3.12.3-SNAPSHOT + 3.12.25-SNAPSHOT io.nosqlbench virtdata-annotations - 3.12.3-SNAPSHOT + 3.12.25-SNAPSHOT io.nosqlbench virtdata-api - 3.12.3-SNAPSHOT + 3.12.25-SNAPSHOT org.slf4j @@ -207,6 +207,7 @@ 3.0.0-M1 + org.apache.maven.plugins maven-deploy-plugin 3.0.0-M1 diff --git a/docsys/src/main/node/docsys/update.sh b/docsys/src/main/node/docsys/update.sh index 1aee17020..d731c4fc5 100755 --- a/docsys/src/main/node/docsys/update.sh +++ b/docsys/src/main/node/docsys/update.sh @@ -1,4 +1,7 @@ #!/bin/bash +set -x +pwd +export PATH=local/node12/bin:node_modules/nuxt/bin/:$PATH rm -rf dist .nuxt if ! which npm >/dev/null 2>&1 then @@ -7,6 +10,7 @@ then ./install_npm fi +npm install npm run generate rm -rf ../../resources/docsys-guidebook mv dist ../../resources/docsys-guidebook diff --git a/docsys/src/main/resources/docsys-guidebook/200.html b/docsys/src/main/resources/docsys-guidebook/200.html index c2f64451f..d816474dc 100644 --- a/docsys/src/main/resources/docsys-guidebook/200.html +++ b/docsys/src/main/resources/docsys-guidebook/200.html @@ -1,9 +1,9 @@ - guidebooknosqlbench docs + guidebooknosqlbench docs
Loading...
- + diff --git a/docsys/src/main/resources/docsys-guidebook/_nuxt/3fc8daf49bf0ed8c9dfd.js b/docsys/src/main/resources/docsys-guidebook/_nuxt/09eb2af0af9c15c6d621.js similarity index 72% rename from docsys/src/main/resources/docsys-guidebook/_nuxt/3fc8daf49bf0ed8c9dfd.js rename to docsys/src/main/resources/docsys-guidebook/_nuxt/09eb2af0af9c15c6d621.js index 26fc7b142..bff216268 100644 --- a/docsys/src/main/resources/docsys-guidebook/_nuxt/3fc8daf49bf0ed8c9dfd.js +++ b/docsys/src/main/resources/docsys-guidebook/_nuxt/09eb2af0af9c15c6d621.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([[5],{216:function(module,exports,__webpack_require__){eval("// style-loader: Adds some css to the DOM by adding a
Loading...
- + diff --git a/docsys/src/test/java/io/nosqlbench/docsys/core/DocsysMarkdownEndpointTest.java b/docsys/src/test/java/io/nosqlbench/docsys/core/DocsysMarkdownEndpointTest.java new file mode 100644 index 000000000..fc89a4f08 --- /dev/null +++ b/docsys/src/test/java/io/nosqlbench/docsys/core/DocsysMarkdownEndpointTest.java @@ -0,0 +1,15 @@ +package io.nosqlbench.docsys.core; + +import org.junit.Test; + +import static org.junit.jupiter.api.Assertions.*; + +public class DocsysMarkdownEndpointTest { + + @Test + public void testDocLoader() { + DocsysMarkdownEndpoint ep = new DocsysMarkdownEndpoint(); + String markdownList = ep.getMarkdownList(true); + } + +} \ No newline at end of file diff --git a/engine-api/pom.xml b/engine-api/pom.xml index edd0d2963..d7b906a2f 100644 --- a/engine-api/pom.xml +++ b/engine-api/pom.xml @@ -5,7 +5,7 @@ mvn-defaults io.nosqlbench - 3.12.3-SNAPSHOT + 3.12.25-SNAPSHOT ../mvn-defaults @@ -22,7 +22,7 @@ io.nosqlbench virtdata-userlibs - 3.12.3-SNAPSHOT + 3.12.25-SNAPSHOT diff --git a/engine-cli/pom.xml b/engine-cli/pom.xml index 12fb70691..4ae2ea271 100644 --- a/engine-cli/pom.xml +++ b/engine-cli/pom.xml @@ -4,7 +4,7 @@ mvn-defaults io.nosqlbench - 3.12.3-SNAPSHOT + 3.12.25-SNAPSHOT ../mvn-defaults @@ -23,13 +23,13 @@ io.nosqlbench engine-core - 3.12.3-SNAPSHOT + 3.12.25-SNAPSHOT io.nosqlbench engine-docker - 3.12.3-SNAPSHOT + 3.12.25-SNAPSHOT shaded @@ -54,7 +54,7 @@ io.nosqlbench engine-docker - 3.12.3-SNAPSHOT + 3.12.25-SNAPSHOT diff --git a/engine-core/pom.xml b/engine-core/pom.xml index 24ac6b0f2..f1485dc5c 100644 --- a/engine-core/pom.xml +++ b/engine-core/pom.xml @@ -5,7 +5,7 @@ mvn-defaults io.nosqlbench - 3.12.3-SNAPSHOT + 3.12.25-SNAPSHOT ../mvn-defaults @@ -28,7 +28,7 @@ io.nosqlbench engine-api - 3.12.3-SNAPSHOT + 3.12.25-SNAPSHOT diff --git a/engine-docker/pom.xml b/engine-docker/pom.xml index a3fb7f4eb..1f4de881e 100644 --- a/engine-docker/pom.xml +++ b/engine-docker/pom.xml @@ -4,7 +4,7 @@ mvn-defaults io.nosqlbench - 3.12.3-SNAPSHOT + 3.12.25-SNAPSHOT ../mvn-defaults @@ -87,7 +87,7 @@ io.nosqlbench engine-api - 3.12.3-SNAPSHOT + 3.12.25-SNAPSHOT diff --git a/engine-docs/pom.xml b/engine-docs/pom.xml index 67d8406b3..c1483b776 100644 --- a/engine-docs/pom.xml +++ b/engine-docs/pom.xml @@ -4,7 +4,7 @@ mvn-defaults io.nosqlbench - 3.12.3-SNAPSHOT + 3.12.25-SNAPSHOT ../mvn-defaults @@ -29,7 +29,7 @@ io.nosqlbench docsys - 3.12.3-SNAPSHOT + 3.12.25-SNAPSHOT diff --git a/engine-extensions/pom.xml b/engine-extensions/pom.xml index 04b4ccb96..6da9d8a9a 100644 --- a/engine-extensions/pom.xml +++ b/engine-extensions/pom.xml @@ -4,7 +4,7 @@ mvn-defaults io.nosqlbench - 3.12.3-SNAPSHOT + 3.12.25-SNAPSHOT ../mvn-defaults @@ -22,7 +22,7 @@ io.nosqlbench engine-api - 3.12.3-SNAPSHOT + 3.12.25-SNAPSHOT diff --git a/mvn-defaults/pom.xml b/mvn-defaults/pom.xml index cb28233c0..9ad388254 100644 --- a/mvn-defaults/pom.xml +++ b/mvn-defaults/pom.xml @@ -1,10 +1,9 @@ - + 4.0.0 io.nosqlbench mvn-defaults - 3.12.3-SNAPSHOT + 3.12.25-SNAPSHOT pom @@ -45,6 +44,13 @@ HEAD + + + org.apache.maven.plugins + maven-gpg-plugin + 1.6 + + @@ -201,8 +207,7 @@ - + true false @@ -259,6 +264,7 @@ sign + --pinentry-mode diff --git a/nb/.gitignore b/nb/.gitignore new file mode 100644 index 000000000..663efc108 --- /dev/null +++ b/nb/.gitignore @@ -0,0 +1 @@ +cache/** diff --git a/nb/appimage/build b/nb/appimage/build deleted file mode 100755 index 8c2cbc747..000000000 --- a/nb/appimage/build +++ /dev/null @@ -1,73 +0,0 @@ -#!/bin/bash -set -x -mkdir -p target/NB.AppDir - -if [ ! -f ../target/nb.jar ] -then - print "../target/nb.jar does not exist" - exit 2 -fi - -if [ -x "target/nb" ] -then - printf "Removing stale target/nb...\n" - rm target/nb -fi - -rsync -av skel/ target/NB.AppDir/ -cp ../target/nb.jar target/NB.AppDir/usr/bin/nb.jar - - -( cd target/NB.AppDir && ( - if [ ! -d "usr/bin/jre" ] - then - printf "getting jre...\n"; - # JRE 12 - wget -c https://github.com/AdoptOpenJDK/openjdk12-binaries/releases/download/jdk-12.0.2%2B10/OpenJDK12U-jre_x64_linux_hotspot_12.0.2_10.tar.gz - tar xf OpenJDK12U-jre_x64_linux_hotspot_12.0.2_10.tar.gz - mv jdk-12.0.2+10-jre usr/bin/jre - rm OpenJDK12U-jre_x64_linux_hotspot_12.0.2_10.tar.gz - - # JRE 13 - # wget -c https://github.com/AdoptOpenJDK/openjdk13-binaries/releases/download/jdk-13%2B33/OpenJDK13U-jre_x64_linux_hotspot_13_33.tar.gz - # tar xf OpenJDK13U-jre_x64_linux_hotspot_13_33.tar.gz - #mv jdk-13+33-jre usr/bin/jre - #rm OpenJDK13U-jre_x64_linux_hotspot_13_33.tar.gz - else - printf "jre directory present, skipping...\n"; - fi - - if [ -f "AppRun" ] - then - printf "Removing stale AppRun...\n"; - rm AppRun - fi - - if [ ! -f "AppRun" ] - then - printf "Linking AppRun...\n"; - ln -s usr/bin/nb AppRun - fi - - ) -) - -printf "getting appimage tool and building image...\n"; - -( cd target && ( - if [ ! -x "appimagetool-x86_64.AppImage" ] - then - wget -c https://github.com/AppImage/AppImageKit/releases/download/12/appimagetool-x86_64.AppImage - chmod +x appimagetool-x86_64.AppImage - fi - - ARCH=x86_64 ./appimagetool-x86_64.AppImage NB.AppDir nb - # && chmod +x nb - ) -) - -if [ -x "target/nb" ] -then - printf "nosqlbench AppImage binary was built at target/nb\n"; -fi - diff --git a/nb/build-bin.sh b/nb/build-bin.sh new file mode 100755 index 000000000..d27b2d3e8 --- /dev/null +++ b/nb/build-bin.sh @@ -0,0 +1,97 @@ +#!/bin/bash +set -x +mkdir -p target/NB.AppDir + +if [ ! -f target/nb.jar ] +then + print "target/nb.jar does not exist" + exit 2 +fi + +#if [ -x "target/nb" ] +#then +# printf "Removing stale target/nb...\n" +# rm target/nb +#fi + +rsync -av appimage/skel/ target/NB.AppDir/ +cp target/nb.jar target/NB.AppDir/usr/bin/nb.jar + +if [ ! -d "cache/jre" ] +then + printf "getting jre once into cache/jre\n"; + mkdir -p cache + (cd cache && ( + wget -c https://github.com/AdoptOpenJDK/openjdk12-binaries/releases/download/jdk-12.0.2%2B10/OpenJDK12U-jre_x64_linux_hotspot_12.0.2_10.tar.gz + tar xf OpenJDK12U-jre_x64_linux_hotspot_12.0.2_10.tar.gz + mv jdk-12.0.2+10-jre jre + rm OpenJDK12U-jre_x64_linux_hotspot_12.0.2_10.tar.gz + )) +fi + +mkdir -p target/NB.AppDir/usr/bin/jre +rsync -av cache/jre/ target/NB.AppDir/usr/bin/jre/ + +if [ ! -f "target/NB.AppDir/AppRun" ] + then + ( cd target/NB.AppDir && ( + printf "Linking AppRun...\n"; + ln -s usr/bin/nb AppRun + )) +fi + +#( cd target/NB.AppDir && ( +# rsync -av .. +# if [ ! -d "usr/bin/jre" ] +# then +# printf "getting jre...\n"; +# +# # JRE 12 +# wget -c https://github.com/AdoptOpenJDK/openjdk12-binaries/releases/download/jdk-12.0.2%2B10/OpenJDK12U-jre_x64_linux_hotspot_12.0.2_10.tar.gz +# tar xf OpenJDK12U-jre_x64_linux_hotspot_12.0.2_10.tar.gz +# mv jdk-12.0.2+10-jre usr/bin/jre +# rm OpenJDK12U-jre_x64_linux_hotspot_12.0.2_10.tar.gz +# +# # JRE 13 +# # wget -c https://github.com/AdoptOpenJDK/openjdk13-binaries/releases/download/jdk-13%2B33/OpenJDK13U-jre_x64_linux_hotspot_13_33.tar.gz +# # tar xf OpenJDK13U-jre_x64_linux_hotspot_13_33.tar.gz +# #mv jdk-13+33-jre usr/bin/jre +# #rm OpenJDK13U-jre_x64_linux_hotspot_13_33.tar.gz +# else +# printf "jre directory present, skipping...\n"; +# fi +# +# if [ -f "AppRun" ] +# then +# printf "Removing stale AppRun...\n"; +# rm AppRun +# fi +# +# if [ ! -f "AppRun" ] +# then +# printf "Linking AppRun...\n"; +# ln -s usr/bin/nb AppRun +# fi +# +# ) +#) + +printf "getting appimage tool and building image...\n"; + +( cd target && ( + if [ ! -x "appimagetool-x86_64.AppImage" ] + then + wget -c https://github.com/AppImage/AppImageKit/releases/download/12/appimagetool-x86_64.AppImage + chmod +x appimagetool-x86_64.AppImage + fi + + ARCH=x86_64 ./appimagetool-x86_64.AppImage NB.AppDir nb + # && chmod +x nb + ) +) + +if [ -x "target/nb" ] +then + printf "nosqlbench AppImage binary was built at target/nb\n"; +fi + diff --git a/gendocs.sh b/nb/gendocs.sh similarity index 50% rename from gendocs.sh rename to nb/gendocs.sh index f1ac0229a..ee3700a75 100755 --- a/gendocs.sh +++ b/nb/gendocs.sh @@ -1,32 +1,28 @@ #!/bin/bash # update nuxt -GUIDEBOOK="nb/target" +GUIDEBOOK="target/guidebook" -if [ ! -d "nb/target" ] +if [ ! -f "target/nb.jar" ] then - printf "You should not run this unless you have an nb/target directory.\n" - printf "It depends on the Java components to be built first.\n" + printf "You should not run this unless you have target/nb.jar\n" exit 6 fi -if [ ! -d "nb/target/guidebook" ] +if [ ! -d "target/guidebook" ] then - pushd docsys/src/main/node/docsys + pushd ../docsys/src/main/node/docsys if ! ./update.sh $@ then printf "Unable to update the guidebook static app\n" exit 2; fi - popd - printf "PWD: %s\n" $(pwd) - - cp -R docsys/src/main/resources/docsys-guidebook/ nb/target/guidebook/ + cp -R ../docsys/src/main/resources/docsys-guidebook/ target/guidebook/ else - printf "nb/target/guidebook exists, not building again until mvn clean\n" + printf "target/guidebook exists, not building again until mvn clean\n" fi JAVA=$(which java) @@ -38,7 +34,7 @@ then exit 5 fi -$JAVA -jar nb/target/nb.jar docserver generate nb/target/guidebook +$JAVA -jar target/nb.jar docserver generate target/guidebook #JAVA_HOME=${JAVA_HOME:-JAVA_HOME must be specified if java isn not in the path} # diff --git a/nb/pom.xml b/nb/pom.xml index 0264968f7..7e8a50e79 100644 --- a/nb/pom.xml +++ b/nb/pom.xml @@ -5,7 +5,7 @@ mvn-defaults io.nosqlbench - 3.12.3-SNAPSHOT + 3.12.25-SNAPSHOT ../mvn-defaults @@ -24,61 +24,61 @@ io.nosqlbench engine-cli - 3.12.3-SNAPSHOT + 3.12.25-SNAPSHOT io.nosqlbench engine-docs - 3.12.3-SNAPSHOT + 3.12.25-SNAPSHOT io.nosqlbench engine-core - 3.12.3-SNAPSHOT + 3.12.25-SNAPSHOT io.nosqlbench engine-extensions - 3.12.3-SNAPSHOT + 3.12.25-SNAPSHOT io.nosqlbench activitytype-stdout - 3.12.3-SNAPSHOT + 3.12.25-SNAPSHOT io.nosqlbench activitytype-diag - 3.12.3-SNAPSHOT + 3.12.25-SNAPSHOT io.nosqlbench activitytype-tcp - 3.12.3-SNAPSHOT + 3.12.25-SNAPSHOT io.nosqlbench activitytype-http - 3.12.3-SNAPSHOT + 3.12.25-SNAPSHOT io.nosqlbench activitytype-cql - 3.12.3-SNAPSHOT + 3.12.25-SNAPSHOT io.nosqlbench activitytype-cqlverify - 3.12.3-SNAPSHOT + 3.12.25-SNAPSHOT @@ -180,21 +180,30 @@ - org.codehaus.mojo - exec-maven-plugin - 1.6.0 - - - build-nb-appimage - package - exec - - ${project.basedir}/appimage - ${project.basedir}/appimage/build - - - - + org.codehaus.mojo + exec-maven-plugin + 1.6.0 + + + build-nb-appimage + package + exec + + ${project.basedir} + ${project.basedir}/build-bin.sh + + + + build-static-guidebook + package + exec + + ${project.basedir} + ${project.basedir}/gendocs.sh + + + + diff --git a/pom.xml b/pom.xml index 1e1e1f9d9..02d64b1da 100644 --- a/pom.xml +++ b/pom.xml @@ -7,7 +7,7 @@ mvn-defaults io.nosqlbench - 3.12.3-SNAPSHOT + 3.12.25-SNAPSHOT mvn-defaults @@ -70,7 +70,6 @@ - 2.5.3 maven-release-plugin @@ -83,8 +82,7 @@ - - + Jonathan Shook diff --git a/release.xml b/release.xml new file mode 100644 index 000000000..422957808 --- /dev/null +++ b/release.xml @@ -0,0 +1,34 @@ + + + + + + release + + true + + + gpg + ${env.GPG_KEY_NAME} + ${env.GPG_PASSPHRASE} + + + + + + + + + ${env.GPG_SERVER_NAME} + ${env.GPG_PASSPHRASE} + + + ${env.MAVEN_REPO_SERVER_ID} + ${env.MAVEN_REPO_SERVER_USERNAME} + ${env.MAVEN_REPO_SERVER_PASSWORD} + + + + diff --git a/scripts/avoid-release-loop.sh b/scripts/avoid-release-loop.sh new file mode 100755 index 000000000..8653b1c1a --- /dev/null +++ b/scripts/avoid-release-loop.sh @@ -0,0 +1,16 @@ +#!/bin/bash +set -e +set -x + +GIT_RELEASE_BOT_NAME=${GIT_RELEASE_BOT_NAME:?GIT_RELEASE_BOT_NAME must be provided} +GITHUB_SHA=${GITHUB_SHA:?GITHUB_SHA must be provided} + +# avoid the release loop by checking if the latest commit is a release commit +readonly local last_release_commit_hash=$(git log --grep='\[maven-release-plugin\] prepare release' --pretty=format:"%H" -1) + +echo "Last $GIT_RELEASE_BOT_NAME commit: ${last_release_commit_hash}" +echo "Current commit: ${GITHUB_SHA}" +if [[ "${last_release_commit_hash}" = "${GITHUB_SHA}" ]]; then + echo "Skipping for $GIT_RELEASE_BOT_NAME commit" + exit 1 +fi diff --git a/scripts/deploy-docs.sh b/scripts/deploy-docs.sh new file mode 100755 index 000000000..c5e57f28f --- /dev/null +++ b/scripts/deploy-docs.sh @@ -0,0 +1,20 @@ +#!/bin/bash +set -e +set -x + +NBDROID_TOKEN=${NBDROID_TOKEN:?NBDROID_TOKEN must be provided} +NBDROID_NAME=${NBDROID_NAME:?NBDROID_NAME must be provided} + +#GITHUB_REF=${GITHUB_REF:?GITHUB_REF must be provided} +#RELEASE_BRANCH_NAME=${RELEASE_BRANCH_NAME:?RELEASE_BRANCH_NAME must be provided} + +f26313be9720eef77f85f1d384650229213ee22a + +git clone https://${NBDROID_NAME}:${NBDROID_TOKEN}@github.com/nosqlbench/nosqlbench-docs.git nosqlbench-docs +pushd nosqlbench-docs +rm -rf docs +unzip ../docs.zip +git add docs +git commit -m'docs update' +git push + diff --git a/scripts/release-perform.sh b/scripts/release-perform.sh new file mode 100755 index 000000000..c1b5ad3cc --- /dev/null +++ b/scripts/release-perform.sh @@ -0,0 +1,39 @@ +#!/bin/bash +set -e +set -x + +GIT_RELEASE_BOT_NAME=${GIT_RELEASE_BOT_NAME:?GIT_RELEASE_BOT_NAME must be provided} +GITHUB_SHA=${GITHUB_SHA:?GITHUB_SHA must be provided} +GITHUB_REF=${GITHUB_REF:?GITHUB_REF must be provided} +RELEASE_BRANCH_NAME=${RELEASE_BRANCH_NAME:?RELEASE_BRANCH_NAME must be provided} +#MAVEN_LOCAL_REPO_PATH=${MAVEN_LOCAL_REPO_PATH:?MAVEN_LOCAL_REPO_PATH must be provided} +#MAVEN_REPO_LOCAL=${MAVEN_REPO_LOCAL:?MAVEN_REPO_LOCAL must be provided} +#MAVEN_ARGS=${MAVEN_ARGS:?MAVEN_ARGS must be provided} + +# avoid the release loop by checking if the latest commit is a release commit +readonly local last_release_commit_hash=$(git log --pretty=format:"%H" -1) +echo "Last $GIT_RELEASE_BOT_NAME commit: ${last_release_commit_hash}" +echo "Current commit: ${GITHUB_SHA}" +if [[ "${last_release_commit_hash}" = "${GITHUB_SHA}" ]]; then + echo "Skipping for $GIT_RELEASE_BOT_NAME commit" + exit 0 +fi + +# Filter the branch to execute the release on +readonly local branch=${GITHUB_REF##*/} +echo "Current branch: ${branch}" +if [[ -n "$RELEASE_BRANCH_NAME" && ! "${branch}" = "$RELEASE_BRANCH_NAME" ]]; then + echo "Skipping for ${branch} branch" + exit 0 +fi + +# Making sure we are on top of the branch +echo "Git checkout branch ${GITHUB_REF##*/}" +git checkout ${GITHUB_REF##*/} +echo "Git reset hard to ${GITHUB_SHA}" +git reset --hard ${GITHUB_SHA} + +echo "Do mvn release:perform..." +#mvn $MAVEN_REPO_LOCAL --batch-mode --global-settings release.xml release:perform +mvn --batch-mode --global-settings release.xml release:perform -DskipTests + diff --git a/scripts/release-prepare.sh b/scripts/release-prepare.sh new file mode 100755 index 000000000..06d91e1ce --- /dev/null +++ b/scripts/release-prepare.sh @@ -0,0 +1,28 @@ +#!/bin/bash +set -e +set -x + +GIT_RELEASE_BOT_NAME=${GIT_RELEASE_BOT_NAME:?GIT_RELEASE_BOT_NAME must be provided} +GITHUB_SHA=${GITHUB_SHA:?GITHUB_SHA must be provided} +GITHUB_REF=${GITHUB_REF:?GITHUB_REF must be provided} +RELEASE_BRANCH_NAME=${RELEASE_BRANCH_NAME:?RELEASE_BRANCH_NAME must be provided} + +# Filter the branch to execute the release on +readonly local branch=${GITHUB_REF##*/} +echo "Current branch: ${branch}" +if [[ -n "$RELEASE_BRANCH_NAME" && ! "${branch}" = "$RELEASE_BRANCH_NAME" ]]; then + echo "Skipping for ${branch} branch" + exit 0 +fi + +# Making sure we are on top of the branch +echo "Git checkout branch ${GITHUB_REF##*/}" +git checkout ${GITHUB_REF##*/} +echo "Git reset hard to ${GITHUB_SHA}" +git reset --hard ${GITHUB_SHA} + +# Do the release +echo "Do mvn release:prepare..." +#mvn $MAVEN_REPO_LOCAL --batch-mode --global-settings release.xml -Dusername=$GITHUB_ACCESS_TOKEN release:prepare +mvn --batch-mode --global-settings release.xml -Dusername=$GITHUB_ACCESS_TOKEN clean release:prepare -DdevelopmentVersion=${NEXT_SNAPSHOT} -DreleaseVersion=${RELEASE_VERSION} + diff --git a/virtdata-annotations/pom.xml b/virtdata-annotations/pom.xml index 9d3e43ab9..b9640bde3 100644 --- a/virtdata-annotations/pom.xml +++ b/virtdata-annotations/pom.xml @@ -7,7 +7,7 @@ mvn-defaults io.nosqlbench - 3.12.3-SNAPSHOT + 3.12.25-SNAPSHOT ../mvn-defaults diff --git a/virtdata-api/pom.xml b/virtdata-api/pom.xml index 5bf819d4d..ddddbea58 100644 --- a/virtdata-api/pom.xml +++ b/virtdata-api/pom.xml @@ -7,7 +7,7 @@ io.nosqlbench mvn-defaults - 3.12.3-SNAPSHOT + 3.12.25-SNAPSHOT ../mvn-defaults @@ -18,17 +18,17 @@ io.nosqlbench virtdata-processors - 3.12.3-SNAPSHOT + 3.12.25-SNAPSHOT io.nosqlbench virtdata-annotations - 3.12.3-SNAPSHOT + 3.12.25-SNAPSHOT io.nosqlbench virtdata-lang - 3.12.3-SNAPSHOT + 3.12.25-SNAPSHOT diff --git a/virtdata-lang/pom.xml b/virtdata-lang/pom.xml index b4c75d2f9..3bfd07423 100644 --- a/virtdata-lang/pom.xml +++ b/virtdata-lang/pom.xml @@ -7,7 +7,7 @@ mvn-defaults io.nosqlbench - 3.12.3-SNAPSHOT + 3.12.25-SNAPSHOT ../mvn-defaults diff --git a/virtdata-lib-basics/pom.xml b/virtdata-lib-basics/pom.xml index a976b2a67..9cede9468 100644 --- a/virtdata-lib-basics/pom.xml +++ b/virtdata-lib-basics/pom.xml @@ -7,7 +7,7 @@ mvn-defaults io.nosqlbench - 3.12.3-SNAPSHOT + 3.12.25-SNAPSHOT ../mvn-defaults @@ -35,7 +35,7 @@ io.nosqlbench virtdata-api - 3.12.3-SNAPSHOT + 3.12.25-SNAPSHOT diff --git a/virtdata-lib-basics/src/test/java/io/nosqlbench/virtdata/library/basics/shared/from_long/to_long/InterpolateTest.java b/virtdata-lib-basics/src/test/java/io/nosqlbench/virtdata/library/basics/shared/from_long/to_long/InterpolateTest.java index 1562c367b..605e98275 100644 --- a/virtdata-lib-basics/src/test/java/io/nosqlbench/virtdata/library/basics/shared/from_long/to_long/InterpolateTest.java +++ b/virtdata-lib-basics/src/test/java/io/nosqlbench/virtdata/library/basics/shared/from_long/to_long/InterpolateTest.java @@ -10,6 +10,12 @@ public class InterpolateTest { public void testDeciles() { long topvalue = 1_000_000_000L; + Interpolate t = new Interpolate(10L, 100L); + long mint = t.applyAsLong(0L); + assertThat(mint).isEqualTo(10L); + long maxt = t.applyAsLong(Long.MAX_VALUE); + assertThat(maxt).isEqualTo(100L); + Interpolate f = new Interpolate(0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, topvalue); long min = f.applyAsLong(0L); assertThat(min).isEqualTo(0L); diff --git a/virtdata-lib-curves4/pom.xml b/virtdata-lib-curves4/pom.xml index ace908100..eb98d7def 100644 --- a/virtdata-lib-curves4/pom.xml +++ b/virtdata-lib-curves4/pom.xml @@ -4,7 +4,7 @@ mvn-defaults io.nosqlbench - 3.12.3-SNAPSHOT + 3.12.25-SNAPSHOT ../mvn-defaults @@ -21,7 +21,7 @@ io.nosqlbench virtdata-api - 3.12.3-SNAPSHOT + 3.12.25-SNAPSHOT diff --git a/virtdata-lib-random/pom.xml b/virtdata-lib-random/pom.xml index 2a835798a..f596d3cde 100644 --- a/virtdata-lib-random/pom.xml +++ b/virtdata-lib-random/pom.xml @@ -7,7 +7,7 @@ mvn-defaults io.nosqlbench - 3.12.3-SNAPSHOT + 3.12.25-SNAPSHOT ../mvn-defaults @@ -20,7 +20,7 @@ io.nosqlbench virtdata-api - 3.12.3-SNAPSHOT + 3.12.25-SNAPSHOT diff --git a/virtdata-lib-realer/pom.xml b/virtdata-lib-realer/pom.xml index 06679dcad..fc229c113 100644 --- a/virtdata-lib-realer/pom.xml +++ b/virtdata-lib-realer/pom.xml @@ -4,7 +4,7 @@ mvn-defaults io.nosqlbench - 3.12.3-SNAPSHOT + 3.12.25-SNAPSHOT ../mvn-defaults @@ -31,7 +31,7 @@ io.nosqlbench virtdata-lib-basics - 3.12.3-SNAPSHOT + 3.12.25-SNAPSHOT diff --git a/virtdata-processors/pom.xml b/virtdata-processors/pom.xml index 710370d61..916f1bf43 100644 --- a/virtdata-processors/pom.xml +++ b/virtdata-processors/pom.xml @@ -7,7 +7,7 @@ mvn-defaults io.nosqlbench - 3.12.3-SNAPSHOT + 3.12.25-SNAPSHOT ../mvn-defaults @@ -22,7 +22,7 @@ io.nosqlbench virtdata-annotations - 3.12.3-SNAPSHOT + 3.12.25-SNAPSHOT diff --git a/virtdata-realdata/pom.xml b/virtdata-realdata/pom.xml index 481ff4347..b9599ce89 100644 --- a/virtdata-realdata/pom.xml +++ b/virtdata-realdata/pom.xml @@ -7,7 +7,7 @@ mvn-defaults io.nosqlbench - 3.12.3-SNAPSHOT + 3.12.25-SNAPSHOT ../mvn-defaults @@ -19,7 +19,7 @@ io.nosqlbench virtdata-api - 3.12.3-SNAPSHOT + 3.12.25-SNAPSHOT diff --git a/virtdata-userlibs/pom.xml b/virtdata-userlibs/pom.xml index b27970754..a91756d27 100644 --- a/virtdata-userlibs/pom.xml +++ b/virtdata-userlibs/pom.xml @@ -4,7 +4,7 @@ mvn-defaults io.nosqlbench - 3.12.3-SNAPSHOT + 3.12.25-SNAPSHOT ../mvn-defaults @@ -17,38 +17,38 @@ io.nosqlbench virtdata-realdata - 3.12.3-SNAPSHOT + 3.12.25-SNAPSHOT io.nosqlbench virtdata-lib-realer - 3.12.3-SNAPSHOT + 3.12.25-SNAPSHOT io.nosqlbench virtdata-api - 3.12.3-SNAPSHOT + 3.12.25-SNAPSHOT io.nosqlbench virtdata-lib-random - 3.12.3-SNAPSHOT + 3.12.25-SNAPSHOT virtdata-lib-basics io.nosqlbench - 3.12.3-SNAPSHOT + 3.12.25-SNAPSHOT virtdata-lib-curves4 io.nosqlbench - 3.12.3-SNAPSHOT + 3.12.25-SNAPSHOT io.nosqlbench docsys - 3.12.3-SNAPSHOT + 3.12.25-SNAPSHOT