Skip to content

Commit

Permalink
Add CD for windows and linux
Browse files Browse the repository at this point in the history
  • Loading branch information
hayzamjs committed Aug 21, 2021
1 parent e5bfb09 commit 8a65884
Showing 1 changed file with 51 additions and 1 deletion.
52 changes: 51 additions & 1 deletion .github/workflows/build-cd.yml
Original file line number Diff line number Diff line change
Expand Up @@ -32,14 +32,15 @@ jobs:
runs-on: ${{ matrix.os }}
strategy:
matrix:
os: [macos-latest]
os: [macos-latest, ubuntu-latest, ubuntu-18.04]
steps:
- name: Checkout code
uses: actions/checkout@v2
- name: Install go
uses: actions/setup-go@v2
with:
go-version: '1.16'

- name: Install dependencies for macOS build
if: ${{ matrix.os == 'macos-latest' }}
run: |
Expand All @@ -60,4 +61,53 @@ jobs:
upload_url: ${{ needs.create-release.outputs.upload_url }}
asset_path: ./libipfs${{ github.event.release.tag_name }}-macOS-x64.zip
asset_name: libipfs${{ github.event.release.tag_name }}-macOS-x64.zip
asset_content_type: application/zip

- name: Install dependencies for linux build
if: ${{ matrix.os == 'ubuntu-latest' }}
run: |
sudo apt update && sudo apt install -y build-essential zip
go mod download
- name: Build and package artifacts for linux build
if: ${{ matrix.os == 'ubuntu-latest' }}
run: |
make build_linux
mkdir libipfs${{ github.event.release.tag_name }}-linux-x64/
cp -rf ./bin/libipfs-linux* libipfs${{ github.event.release.tag_name }}-linux-x64/
zip -r libipfs${{ github.event.release.tag_name }}-linux-x64.zip libipfs${{ github.event.release.tag_name }}-linux-x64/
- name: Upload linux build artifacts
if: ${{ matrix.os == 'ubuntu-latest' }}
uses: actions/upload-release-asset@v1
env:
GITHUB_TOKEN: ${{ github.token }}
with:
upload_url: ${{ needs.create-release.outputs.upload_url }}
asset_path: ./libipfs${{ github.event.release.tag_name }}-linux-x64.zip
asset_name: libipfs${{ github.event.release.tag_name }}-linux-x64.zip
asset_content_type: application/zip

- name: Install dependencies for windows build
if: ${{ matrix.os == 'ubuntu-18.04' }}
run: |
sudo apt update && sudo apt install -y gcc-mingw-w64-x86-64 g++-mingw-w64-x86-64 wine64
go mod download
- name: Build and package artifacts for windows build
if: ${{ matrix.os == 'ubuntu-18.04' }}
run: |
make build_windows
mkdir libipfs${{ github.event.release.tag_name }}-win-x64/
cp -rf ./bin/libipfs-win* libipfs${{ github.event.release.tag_name }}-win-x64/
zip -r libipfs${{ github.event.release.tag_name }}-win-x64.zip libipfs${{ github.event.release.tag_name }}-win-x64/
- name: Upload windows build artifacts
if: ${{ matrix.os == 'ubuntu-18.04' }}
uses: actions/upload-release-asset@v1
env:
GITHUB_TOKEN: ${{ github.token }}
with:
upload_url: ${{ needs.create-release.outputs.upload_url }}
asset_path: ./libipfs${{ github.event.release.tag_name }}-win-x64.zip
asset_name: libipfs${{ github.event.release.tag_name }}-win-x64.zip
asset_content_type: application/zip

0 comments on commit 8a65884

Please sign in to comment.