reorder build steps

This commit is contained in:
Jonathan Shook 2020-12-07 20:30:50 -06:00
parent 4e006438e7
commit 4f6fbf01f4

View File

@ -47,6 +47,10 @@ jobs:
- name: set git email
run: git config --global user.name "${{ secrets.NBDROID_NAME }}"
- name: free disk space
run: |
sudo swapoff -a
@ -89,7 +93,19 @@ jobs:
summary="${summary//$'\r'/'%0D'}"
echo "::set-output name=release_summary::$summary"
- name: prepare release
- name: select release type from branch name
run: |
current_branch=$(git rev-parse --abbrev-ref HEAD)
if [[ ${current_branch} == *"-rc"* ]]
then
echo "PRERELEASE=true" >> $GITHUB_ENV
echo "DOCKER_TAGS=nosqlbench/nosqlbench:${{ env.RELEASE_VERSION }}" >> $GITHUB_ENV
else
echo "PRERELEASE=false" >> $GITHUB_ENV
echo "DOCKER_TAGS=nosqlbench/nosqlbench:latest,nosqlbench/nosqlbench:${{ env.RELEASE_VERSION }}" >> $GITHUB_ENV
fi
- name: prepare Maven release
run: scripts/release-prepare.sh
env:
RELEASE_BRANCH_NAME: "main"
@ -106,6 +122,29 @@ jobs:
MAVEN_REPO_SERVER_USERNAME: ${{ secrets.MVN_REPO_PRIVATE_REPO_USER }}
MAVEN_REPO_SERVER_PASSWORD: ${{ secrets.MVN_REPO_PRIVATE_REPO_PASSWORD }}
- name: Setup docker buildx
uses: docker/setup-buildx-action@v1
- name: docker hub login
uses: docker/login-action@v1
with:
username: ${{ secrets.DOCKER_USERNAME }}
password: ${{ secrets.DOCKER_PASSWORD }}
- name: docker test build
uses: docker/build-push-action@v2
with:
context: .
file: Dockerfile
pull: true
push: false
load: true
tags: ${{ env.DOCKER_TAGS }}
- name: sanity check docker image
run: |
docker run --rm nosqlbench/nosqlbench:${{ env.RELEASE_VERSION }} --version
- name: bundle integration test logs
run: |
pwd
@ -119,8 +158,7 @@ jobs:
name: itlogs
path: itlogs
- name: perform release
- name: perform Maven release
run: scripts/release-perform.sh
continue-on-error: true
env:
@ -150,42 +188,7 @@ jobs:
name: binaries
path: staging
- name: select release type from branch name
run: |
current_branch=$(git rev-parse --abbrev-ref HEAD)
if [[ ${current_branch} == *"-rc"* ]]
then
echo "PRERELEASE=true" >> $GITHUB_ENV
echo "DOCKER_TAGS=nosqlbench/nosqlbench:${{ env.RELEASE_VERSION }}" >> $GITHUB_ENV
else
echo "PRERELEASE=false" >> $GITHUB_ENV
echo "DOCKER_TAGS=nosqlbench/nosqlbench:latest,nosqlbench/nosqlbench:${{ env.RELEASE_VERSION }}" >> $GITHUB_ENV
fi
- name: Setup docker buildx
uses: docker/setup-buildx-action@v1
- name: docker hub login
uses: docker/login-action@v1
with:
username: ${{ secrets.DOCKER_USERNAME }}
password: ${{ secrets.DOCKER_PASSWORD }}
- name: docker build
uses: docker/build-push-action@v2
with:
context: .
file: Dockerfile
pull: true
push: false
load: true
tags: ${{ env.DOCKER_TAGS }}
- name: sanity check docker image
run: |
docker run --rm nosqlbench/nosqlbench:${{ env.RELEASE_VERSION }} --version
- name: docker push
- name: docker push to hub
uses: docker/build-push-action@v2
with:
context: .
@ -203,8 +206,8 @@ jobs:
name: guidebook
path: guidebook
- name: create release
id: create_release
- name: create github release
id: create_github_release
uses: actions/create-release@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
@ -215,24 +218,24 @@ jobs:
prerelease: ${{ env.PRERELEASE }}
body: ${{ steps.prepare_summary.outputs.release_summary }}
- name: upload nb.jar
- name: upload nb.jar to github release
id: upload-nb-jar
uses: actions/upload-release-asset@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
upload_url: ${{ steps.create_release.outputs.upload_url }}
upload_url: ${{ steps.create_github_release.outputs.upload_url }}
asset_path: nb/target/nb.jar
asset_name: nb.jar
asset_content_type: application/octet-stream
- name: upload nb binary
- name: upload nb binary to github release
id: upload-nb-binary
uses: actions/upload-release-asset@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
upload_url: ${{ steps.create_release.outputs.upload_url }}
upload_url: ${{ steps.create_github_release.outputs.upload_url }}
asset_path: nb/target/nb
asset_name: nb
asset_content_type: application/octet-stream