chore: version 0.6.8 #118
Workflow file for this run
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: "publish" | |
on: | |
push: | |
tags: ["v[0-9]+.[0-9]+.[0-9]+*"] | |
# branches: [ main ] | |
env: | |
GITHUB_TOKEN: ${{ secrets.GH_TOKEN }} | |
CARGO_TERM_COLOR: always | |
jobs: | |
macos: | |
runs-on: macos-latest | |
steps: | |
- uses: actions/checkout@v3 | |
- name: setup node | |
uses: actions/setup-node@v3 | |
- uses: actions-rs/toolchain@v1 | |
with: | |
toolchain: stable | |
- name: build-web | |
run: make build-web | |
- name: Install target | |
run: | | |
rustup update | |
rustup target add aarch64-apple-darwin | |
rustup target add x86_64-apple-darwin | |
- name: release | |
run: | | |
cargo build --release --target=aarch64-apple-darwin | |
mv target/aarch64-apple-darwin/release/diving ./diving-darwin-aarch64 | |
./.github/workflows/upload_asset.sh ./diving-darwin-aarch64 $GITHUB_TOKEN | |
cargo build --release --target=x86_64-apple-darwin | |
mv target/x86_64-apple-darwin/release/diving ./diving-darwin-x86 | |
./.github/workflows/upload_asset.sh ./diving-darwin-x86 $GITHUB_TOKEN | |
windows: | |
runs-on: windows-latest | |
defaults: | |
run: | |
shell: bash | |
steps: | |
- uses: actions/checkout@v3 | |
- name: setup node | |
uses: actions/setup-node@v3 | |
- uses: actions-rs/toolchain@v1 | |
with: | |
toolchain: stable | |
- name: build-web | |
run: make build-web | |
- name: release | |
run: make release | |
- name: Upload Assets | |
run: | | |
mv target/release/diving.exe ./diving-windows.exe | |
./.github/workflows/upload_asset.sh ./diving-windows.exe $GITHUB_TOKEN | |
linux: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v3 | |
- name: setup node | |
uses: actions/setup-node@v3 | |
- name: build-web | |
run: make build-web | |
- name: release | |
uses: addnab/docker-run-action@v3 | |
with: | |
image: messense/rust-musl-cross:x86_64-musl | |
options: -v ${{ github.workspace }}:/home/rust/src | |
run: | | |
make release | |
mv target/x86_64-unknown-linux-musl/release/diving ./diving-linux-x86 | |
- name: Upload Assets | |
run: | | |
./.github/workflows/upload_asset.sh ./diving-linux-x86 $GITHUB_TOKEN | |
linux-aarch64: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v3 | |
- name: setup node | |
uses: actions/setup-node@v3 | |
- name: build-web | |
run: make build-web | |
- name: release | |
uses: addnab/docker-run-action@v3 | |
with: | |
image: messense/rust-musl-cross:aarch64-musl | |
options: -v ${{ github.workspace }}:/home/rust/src | |
run: | | |
make release | |
mv target/aarch64-unknown-linux-musl/release/diving ./diving-linux-aarch64 | |
- name: Upload Assets | |
run: | | |
./.github/workflows/upload_asset.sh ./diving-linux-aarch64 $GITHUB_TOKEN | |
docker: | |
runs-on: ubuntu-latest | |
timeout-minutes: 3600 | |
steps: | |
- name: Change Swap Space | |
run: | | |
swapon --show=NAME | tail -n 1 | |
df -lh | |
du -sh /usr/share/dotnet | |
sudo rm -rf /usr/share/dotnet | |
du -sh /usr/local/lib/android | |
sudo rm -rf /usr/local/lib/android | |
export SWAP_FILE=$(swapon --show=NAME | tail -n 1) | |
sudo swapoff $SWAP_FILE | |
sudo rm $SWAP_FILE | |
export SWAP_FILE=/swapfile | |
sudo fallocate -l 16G $SWAP_FILE | |
sudo chmod 600 $SWAP_FILE | |
sudo mkswap $SWAP_FILE | |
sudo swapon $SWAP_FILE | |
- name: Swap space report after modification | |
shell: bash | |
run: | | |
echo "Memory and swap:" | |
free -h | |
echo | |
swapon --show | |
df -lh | |
echo | |
- name: Checkout | |
uses: actions/checkout@v3 | |
- name: Docker meta | |
id: meta | |
uses: docker/metadata-action@v4 | |
with: | |
images: | | |
vicanso/diving | |
tags: | | |
type=semver,pattern={{version}} | |
- name: Set up QEMU | |
uses: docker/setup-qemu-action@v2 | |
- name: Set up Docker Buildx | |
id: buildx | |
uses: docker/setup-buildx-action@v2 | |
- name: Available platforms | |
run: echo ${{ steps.buildx.outputs.platforms }} | |
- name: Login to Docker Hub | |
uses: docker/login-action@v2 | |
with: | |
username: ${{ secrets.DOCKER_HUB_USERNAME }} | |
password: ${{ secrets.DOCKER_HUB_ACCESS_TOKEN }} | |
- name: Build and push | |
id: docker_build | |
uses: docker/build-push-action@v4 | |
with: | |
platforms: linux/amd64, linux/arm64 | |
push: true | |
tags: ${{ steps.meta.outputs.tags }} | |
- name: Image digest | |
run: | | |
echo ${{ steps.docker_build.outputs.digest }} |