verus v2.2 for miner testing #45
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Docker Build and Release | |
on: | |
push: | |
branches: | |
- master # or the name of your default branch | |
jobs: | |
build_and_release: | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout code | |
uses: actions/checkout@v2 | |
- name: Set up Docker Buildx | |
uses: docker/setup-buildx-action@v1 | |
- name: Get branch name | |
id: get_branch_name | |
run: | | |
echo "BRANCH_NAME=$(echo ${GITHUB_REF#refs/heads/})" >> $GITHUB_ENV | |
- name: Get version | |
id: get_version | |
run: | | |
echo "VERSION=$(grep 'version :' meson.build | cut -d "'" -f 2)" >> $GITHUB_ENV | |
- name: Get commit hash | |
id: get_commit_hash | |
run: | | |
echo "COMMIT_HASH=$(git rev-parse --short HEAD)" >> $GITHUB_ENV | |
- name: Check if commit is tagged with release | |
id: check_tag | |
run: | | |
echo "IS_RELEASE=$(if git describe --exact-match --tags HEAD 2>/dev/null | grep -q '^release'; then echo 'true'; else echo 'false'; fi)" >> $GITHUB_ENV | |
- name: Docker Build Windows | |
run: DOCKER_BUILDKIT=1 docker build . -f Dockerfiles/Dockerfile_Windows --output ./build/Windows | |
- name: Docker Build Ubuntu 18.04 | |
run: DOCKER_BUILDKIT=1 docker build . -f Dockerfiles/Dockerfile_Ubuntu18 --output ./build/Ubuntu18 | |
- name: Docker Build Ubuntu 20.04 | |
run: DOCKER_BUILDKIT=1 docker build . -f Dockerfiles/Dockerfile_Ubuntu20 --output ./build/Ubuntu20 | |
- name: Docker Build Ubuntu 22.04 | |
run: DOCKER_BUILDKIT=1 docker build . -f Dockerfiles/Dockerfile_Ubuntu22 --output ./build/Ubuntu22 | |
- name: Build for HiveOS | |
run: | | |
cp ./integrations/hiveos/* ./build/Ubuntu18 | |
./build/Ubuntu18/build.sh janusminer_hiveos ${{ env.VERSION }} | |
- name: Build for HiveOS Beta | |
run: | | |
cp ./integrations/hiveos/* ./build/Ubuntu20 | |
./build/Ubuntu20/build.sh janusminer_hiveosbeta ${{ env.VERSION }} | |
- name: Build for mmpOS | |
run: | | |
cp ./integrations/mmpos/* ./build/Ubuntu20 | |
./build/Ubuntu20/build_mmpos.sh janusminer_mmpos ${{ env.VERSION }} | |
- name: Create Release | |
id: create_release | |
uses: actions/create-release@v1 | |
env: | |
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} # This token is provided by Actions, you do not need to create your own token | |
with: | |
tag_name: ${{ env.VERSION }} | |
release_name: janusminer ${{ env.VERSION }} | |
body: | | |
This is an automated pre-release of ${{ env.BRANCH_NAME }}-${{ env.VERSION }}-${{ env.COMMIT_HASH }} to see what are the changes in this release please check the commit history. | |
prerelease: ${{ env.IS_RELEASE }} | |
- name: Upload HiveOS build | |
id: upload-docker-build-output-hiveos | |
uses: actions/upload-release-asset@v1 | |
env: | |
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
with: | |
upload_url: ${{ steps.create_release.outputs.upload_url }} | |
asset_path: ./build/Ubuntu18/janusminer_hiveos-${{ env.VERSION }}.tgz | |
asset_name: janusminer_hiveos-${{ env.VERSION }}.tgz | |
asset_content_type: application/octet-stream | |
- name: Upload HiveOS Beta build | |
id: upload-docker-build-output-hiveosbeta | |
uses: actions/upload-release-asset@v1 | |
env: | |
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
with: | |
upload_url: ${{ steps.create_release.outputs.upload_url }} | |
asset_path: ./build/Ubuntu20/janusminer_hiveosbeta-${{ env.VERSION }}.tgz | |
asset_name: janusminer_hiveosbeta-${{ env.VERSION }}.tgz | |
asset_content_type: application/octet-stream | |
- name: Upload mmpOS build | |
id: upload-docker-build-output-mmpos | |
uses: actions/upload-release-asset@v1 | |
env: | |
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
with: | |
upload_url: ${{ steps.create_release.outputs.upload_url }} | |
asset_path: ./build/Ubuntu20/janusminer_mmpos_${{ env.VERSION }}.tar.gz | |
asset_name: janusminer_mmpos_${{ env.VERSION }}.tar.gz | |
asset_content_type: application/octet-stream | |
- name: Upload Windows build | |
id: upload-docker-build-output-windows | |
uses: actions/upload-release-asset@v1 | |
env: | |
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
with: | |
upload_url: ${{ steps.create_release.outputs.upload_url }} | |
asset_path: ./build/Windows/wart-miner.exe | |
asset_name: janusminer-windows.exe | |
asset_content_type: application/octet-stream | |
- name: Upload Ubuntu 18.04 build | |
id: upload-docker-build-output-ubuntu18 | |
uses: actions/upload-release-asset@v1 | |
env: | |
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
with: | |
upload_url: ${{ steps.create_release.outputs.upload_url }} | |
asset_path: ./build/Ubuntu18/wart-miner | |
asset_name: janusminer-ubuntu18 | |
asset_content_type: application/octet-stream | |
- name: Upload Ubuntu 20.04 build | |
id: upload-docker-build-output-ubuntu20 | |
uses: actions/upload-release-asset@v1 | |
env: | |
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
with: | |
upload_url: ${{ steps.create_release.outputs.upload_url }} | |
asset_path: ./build/Ubuntu20/wart-miner | |
asset_name: janusminer-ubuntu20 | |
asset_content_type: application/octet-stream | |
- name: Upload Ubuntu 22.04 build | |
id: upload-docker-build-output-ubuntu22 | |
uses: actions/upload-release-asset@v1 | |
env: | |
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
with: | |
upload_url: ${{ steps.create_release.outputs.upload_url }} | |
asset_path: ./build/Ubuntu22/wart-miner | |
asset_name: janusminer-ubuntu22 | |
asset_content_type: application/octet-stream |