Skip to content

Lock rust version

Lock rust version #249

Workflow file for this run

name: CI
on: [pull_request, push, workflow_dispatch]
jobs:
check:
name: Check
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v1
- name: Shell Check
run: ./shellcheck.sh
shell: bash
build:
name: Build
needs: check
runs-on: ${{ matrix.os }}
strategy:
matrix:
include:
- target: x86_64-unknown-linux-gnu
arch: x86_64
os: ubuntu-20.04
ninja_file: ninja-linux.zip
ninja_sha: b901ba96e486dce377f9a070ed4ef3f79deb45f4ffe2938f8e7ddc69cfb3df77
ninja_dir: /usr/local/bin
ninja_sudo: sudo
rust: stable
tar: linux
out_dir: out
- target: aarch64-apple-darwin
arch: aarch64
os: macos-latest
ninja_file: ninja-mac.zip
ninja_sha: 482ecb23c59ae3d4f158029112de172dd96bb0e97549c4b1ca32d8fad11f873e
ninja_dir: /usr/local/bin
ninja_sudo: sudo
rust: stable
tar: osx
out_dir: out
- target: x86_64-pc-windows-msvc
arch: x86_64
os: windows-latest
ninja_file: ninja-win.zip
ninja_sha: 524b344a1a9a55005eaf868d991e090ab8ce07fa109f1820d40e74642e289abc
ninja_dir: /usr/bin
ninja_sudo:
rust: stable
tar: windows
out_dir: /c/out
steps:
- uses: actions/checkout@v1
- name: Install coreutils and swig
run: |
brew update && brew install coreutils && brew install swig
if: matrix.os == 'macos-latest'
shell: bash
- name: Install Ninja
run: |
curl -L -O "https://github.com/ninja-build/ninja/releases/download/v1.11.1/${{ matrix.ninja_file }}" && \
echo "${{ matrix.ninja_sha }} ${{ matrix.ninja_file }}" | sha256sum -c && \
${{ matrix.ninja_sudo }} unzip ${{ matrix.ninja_file }} -d ${{ matrix.ninja_dir }} && rm ${{ matrix.ninja_file }}
shell: bash
- name: Install Rust
uses: dtolnay/rust-toolchain@master
with:
toolchain: 1.79.0
- name: Build
run: ./build.sh ${{ matrix.out_dir }}
shell: bash
- name: Upload ${{ matrix.tar }} tarball
uses: actions/upload-artifact@v3
with:
name: platform-tools-${{ matrix.tar }}-${{ matrix.arch }}.tar.bz2
path: platform-tools-${{ matrix.tar }}-${{ matrix.arch }}.tar.bz2
- name: Upload move-dev ${{ matrix.tar }} tarball
uses: actions/upload-artifact@v3
with:
name: move-dev-${{ matrix.tar }}-${{ matrix.arch }}.tar.bz2
path: move-dev-${{ matrix.tar }}-${{ matrix.arch }}.tar.bz2
release:
name: Upload Release Assets
needs: build
runs-on: ubuntu-latest
if: ${{ startsWith(github.ref, 'refs/tags/v') }}
steps:
- name: Download Linux tarball
uses: actions/download-artifact@v3
with:
name: platform-tools-linux-x86_64.tar.bz2
- name: Download Linux move-dev
uses: actions/download-artifact@v3
with:
name: move-dev-linux-x86_64.tar.bz2
- name: Download macOS tarball
uses: actions/download-artifact@v3
with:
name: platform-tools-osx-aarch64.tar.bz2
- name: Download macOS move-dev
uses: actions/download-artifact@v3
with:
name: move-dev-osx-aarch64.tar.bz2
- name: Download Windows tarball
uses: actions/download-artifact@v3
with:
name: platform-tools-windows-x86_64.tar.bz2
- name: Download Windows move-dev
uses: actions/download-artifact@v3
with:
name: move-dev-windows-x86_64.tar.bz2
- name: Create Release
id: create_release
uses: actions/create-release@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
tag_name: ${{ github.ref }}
release_name: Release ${{ github.ref }}
draft: false
prerelease: false
- name: Release Linux tarball
id: upload-release-linux
uses: actions/upload-release-asset@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
upload_url: ${{ steps.create_release.outputs.upload_url }}
asset_path: platform-tools-linux-x86_64.tar.bz2
asset_name: platform-tools-linux-x86_64.tar.bz2
asset_content_type: application/zip
- name: Release Linux move-dev
id: upload-release-linux-move
uses: actions/upload-release-asset@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
upload_url: ${{ steps.create_release.outputs.upload_url }}
asset_path: move-dev-linux-x86_64.tar.bz2
asset_name: move-dev-linux-x86_64.tar.bz2
asset_content_type: application/zip
- name: Release macOS tarball
id: upload-release-macos
uses: actions/upload-release-asset@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
upload_url: ${{ steps.create_release.outputs.upload_url }}
asset_path: platform-tools-osx-aarch64.tar.bz2
asset_name: platform-tools-osx-aarch64.tar.bz2
asset_content_type: application/zip
- name: Release macOS move-dev
id: upload-release-macos-move
uses: actions/upload-release-asset@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
upload_url: ${{ steps.create_release.outputs.upload_url }}
asset_path: move-dev-osx-aarch64.tar.bz2
asset_name: move-dev-osx-aarch64.tar.bz2
asset_content_type: application/zip
- name: Release Windows tarball
id: upload-release-windows
uses: actions/upload-release-asset@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
upload_url: ${{ steps.create_release.outputs.upload_url }}
asset_path: platform-tools-windows-x86_64.tar.bz2
asset_name: platform-tools-windows-x86_64.tar.bz2
asset_content_type: application/zip
- name: Release Windows move-dev
id: upload-release-windows-move
uses: actions/upload-release-asset@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
upload_url: ${{ steps.create_release.outputs.upload_url }}
asset_path: move-dev-windows-x86_64.tar.bz2
asset_name: move-dev-windows-x86_64.tar.bz2
asset_content_type: application/zip