From 58b9df762ee21d1af0c98966ba3f01d75ef3a7e5 Mon Sep 17 00:00:00 2001 From: Telesphoreo Date: Sat, 14 May 2022 01:10:05 -0500 Subject: [PATCH] Update build.yml --- .github/workflows/build.yml | 274 +----------------------------------- 1 file changed, 7 insertions(+), 267 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index a3d51dc..23f5001 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -1,277 +1,17 @@ -'on': - push: - branches: - - '*' - pull_request: null +name: Build + +on: [ push ] + jobs: - check: + build_and_test: + name: IBConverter runs-on: ubuntu-latest steps: - uses: actions/checkout@v2 - - uses: actions/cache@v1 - with: - path: ~/.cargo/registry - key: '${{ runner.os }}-cargo-registry-${{ hashFiles(''**/Cargo.lock'') }}' - - uses: actions/cache@v1 - with: - path: ~/.cargo/git - key: '${{ runner.os }}-cargo-index-${{ hashFiles(''**/Cargo.lock'') }}' - - uses: actions/cache@v1 - with: - path: target - key: ${{ runner.os }}-cargo-build-target-${{ hashFiles('**/Cargo.lock') }} - uses: actions-rs/toolchain@v1 with: - profile: minimal toolchain: stable - override: true - uses: actions-rs/cargo@v1 - with: - command: check - test: - runs-on: '${{ matrix.os }}' - strategy: - matrix: - include: - - os: macos-latest - - os: ubuntu-latest - - os: windows-latest - steps: - - uses: actions/checkout@v2 - - uses: actions/cache@v1 - with: - path: ~/.cargo/registry - key: '${{ runner.os }}-cargo-registry-${{ hashFiles(''**/Cargo.lock'') }}' - - uses: actions/cache@v1 - with: - path: ~/.cargo/git - key: '${{ runner.os }}-cargo-index-${{ hashFiles(''**/Cargo.lock'') }}' - - uses: actions/cache@v1 - with: - path: target - key: ${{ runner.os }}-cargo-build-target-${{ hashFiles('**/Cargo.lock') }} - - uses: actions-rs/toolchain@v1 - with: - profile: minimal - toolchain: stable - override: true - - uses: actions-rs/cargo@v1 - with: - command: test - - uses: actions-rs/cargo@v1 - with: - command: run - args: '-- -h' - lints: - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v2 - - uses: actions/cache@v1 - with: - path: ~/.cargo/registry - key: '${{ runner.os }}-cargo-registry-${{ hashFiles(''**/Cargo.lock'') }}' - - uses: actions/cache@v1 - with: - path: ~/.cargo/git - key: '${{ runner.os }}-cargo-index-${{ hashFiles(''**/Cargo.lock'') }}' - - uses: actions/cache@v1 - with: - path: target - key: ${{ runner.os }}-cargo-build-target-${{ hashFiles('**/Cargo.lock') }} - - uses: actions-rs/toolchain@v1 - with: - profile: minimal - toolchain: stable - override: true - components: 'rustfmt, clippy' - - uses: actions-rs/cargo@v1 - with: - command: fmt - args: '--all -- --check' - - uses: actions-rs/cargo@v1 - with: - command: clippy - args: '-- -D warnings' - version: - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@master - with: - lfs: true - - run: git fetch --depth=1 origin +refs/tags/*:refs/tags/* - - id: get_previous_version - run: echo ::set-output name=PREVIOUS_VERSION::$(git describe --tags "$(git rev-list --tags --max-count=1)") - shell: bash - - id: semvers - uses: WyriHaximus/github-action-next-semvers@master - with: - version: '${{ steps.get_previous_version.outputs.PREVIOUS_VERSION }}' - - run: mkdir -p ./version - - if: "!contains(github.event.head_commit.message, 'BC BREAK') && !contains(github.event.head_commit.message, 'Signed-off-by: dependabot-preview[bot] ')" - run: echo "$VERSION" >./version/version - env: - VERSION: ${{ steps.semvers.outputs.v_minor }} - - if: "contains(github.event.head_commit.message, 'Signed-off-by: dependabot-preview[bot] ')" - run: echo "$VERSION" >./version/version - env: - VERSION: ${{ steps.semvers.outputs.v_patch }} - - run: echo "$VERSION" > ./version/version - env: - VERSION: ${{ steps.semvers.outputs.v_major }} - if: "contains(github.event.head_commit.message, 'BC BREAK')" - - uses: actions/upload-artifact@master - with: - name: version - path: ./version/version - build: - needs: - - version - - lints - - test - - check - runs-on: '${{ matrix.os }}' - strategy: - matrix: - include: - - os: macos-latest - target: x86_64-apple-darwin - suffix: '' - - os: ubuntu-latest - target: x86_64-unknown-linux-gnu - suffix: '' - - os: windows-latest - target: x86_64-pc-windows-msvc - suffix: .exe - steps: - - uses: actions/checkout@master - with: - lfs: true - - id: get_repository_name - run: echo ::set-output name=REPOSITORY_NAME::$(echo "$GITHUB_REPOSITORY" | awk -F / '{print $2}' | sed -e "s/:refs//") - shell: bash - - uses: actions/download-artifact@master - with: - name: version - - id: get_version - run: 'echo ::set-output "name=VERSION::$(cat ./version/version)"' - shell: bash - - uses: actions/cache@v1 - with: - path: ~/.cargo/registry - key: '${{ runner.os }}-cargo-registry-${{ hashFiles(''**/Cargo.lock'') }}' - - uses: actions/cache@v1 - with: - path: ~/.cargo/git - key: '${{ runner.os }}-cargo-index-${{ hashFiles(''**/Cargo.lock'') }}' - - uses: actions/cache@v1 - with: - path: target - key: ${{ runner.os }}-cargo-build-target-${{ hashFiles('**/Cargo.lock') }} - - uses: actions-rs/toolchain@v1 - with: - profile: minimal - toolchain: stable - override: true - - uses: actions-rs/cargo@v1 - with: - command: install - args: 'toml-cli' - - shell: bash - env: - VERSION: '${{ steps.get_version.outputs.VERSION }}' - run: | - TEMP_FILE="$(mktemp)" - toml set Cargo.toml package.version "${VERSION:1}" > "$TEMP_FILE" - mv "$TEMP_FILE" Cargo.toml - - uses: actions-rs/cargo@v1 - env: - VERSION: '${{ steps.get_version.outputs.VERSION }}' - REPOSITORY_NAME: '${{ steps.get_repository_name.outputs.REPOSITORY_NAME }}' with: command: build - args: '--release' - - uses: actions/upload-artifact@master - with: - name: ${{ steps.get_repository_name.outputs.REPOSITORY_NAME }}-${{ matrix.target }} - path: ./target/release/${{ steps.get_repository_name.outputs.REPOSITORY_NAME }}${{ matrix.suffix }} - release: - if: github.ref == 'refs/heads/master' - needs: - - build - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@master - with: - lfs: true - - id: get_repository_name - run: echo ::set-output name=REPOSITORY_NAME::$(echo "$GITHUB_REPOSITORY" | awk -F / '{print $2}' | sed -e "s/:refs//") - shell: bash - - uses: actions/download-artifact@master - with: - name: version - - id: get_version - run: 'echo ::set-output name=VERSION::$(cat ./version/version)' - shell: bash - - uses: actions/download-artifact@master - with: - name: ${{ steps.get_repository_name.outputs.REPOSITORY_NAME }}-x86_64-unknown-linux-gnu - - uses: actions/download-artifact@master - with: - name: ${{ steps.get_repository_name.outputs.REPOSITORY_NAME }}-x86_64-apple-darwin - - uses: actions/download-artifact@master - with: - name: ${{ steps.get_repository_name.outputs.REPOSITORY_NAME }}-x86_64-pc-windows-msvc - - uses: actions-rs/toolchain@v1 - with: - profile: minimal - toolchain: stable - override: true - - uses: actions-rs/cargo@v1 - with: - command: install - args: 'toml-cli' - - run: | - TEMP_FILE="$(mktemp)" - toml set Cargo.toml package.version "${VERSION:1}" > "$TEMP_FILE" - mv "$TEMP_FILE" Cargo.toml - shell: bash - env: - VERSION: '${{ steps.get_version.outputs.VERSION }}' - - uses: stefanzweifel/git-auto-commit-action@v4.1.3 - with: - commit_message: Bump cargo version - branch: ${{ github.head_ref }} - file_pattern: Cargo.toml - - id: create_release - uses: actions/create-release@v1.0.0 - env: - GITHUB_TOKEN: '${{ secrets.COMMITTER_TOKEN }}' - with: - tag_name: '${{ steps.get_version.outputs.VERSION }}' - release_name: 'Release ${{ steps.get_version.outputs.VERSION }}' - draft: false - prerelease: false - - uses: actions/upload-release-asset@v1.0.1 - env: - GITHUB_TOKEN: '${{ secrets.GITHUB_TOKEN }}' - with: - upload_url: '${{ steps.create_release.outputs.upload_url }}' - asset_path: ./${{ steps.get_repository_name.outputs.REPOSITORY_NAME }}-x86_64-unknown-linux-gnu/${{ steps.get_repository_name.outputs.REPOSITORY_NAME }} - asset_name: ${{ steps.get_repository_name.outputs.REPOSITORY_NAME }}-x86_64-unknown-linux-gnu - asset_content_type: application/octet-stream - - uses: actions/upload-release-asset@v1.0.1 - env: - GITHUB_TOKEN: '${{ secrets.GITHUB_TOKEN }}' - with: - upload_url: '${{ steps.create_release.outputs.upload_url }}' - asset_path: ./${{ steps.get_repository_name.outputs.REPOSITORY_NAME }}-x86_64-apple-darwin/${{ steps.get_repository_name.outputs.REPOSITORY_NAME }} - asset_name: ${{ steps.get_repository_name.outputs.REPOSITORY_NAME }}-x86_64-apple-darwin - asset_content_type: application/octet-stream - - uses: actions/upload-release-asset@v1.0.1 - env: - GITHUB_TOKEN: '${{ secrets.GITHUB_TOKEN }}' - with: - upload_url: '${{ steps.create_release.outputs.upload_url }}' - asset_path: ./${{ steps.get_repository_name.outputs.REPOSITORY_NAME }}-x86_64-pc-windows-msvc/${{ steps.get_repository_name.outputs.REPOSITORY_NAME }}.exe - asset_name: ${{ steps.get_repository_name.outputs.REPOSITORY_NAME }}-x86_64-pc-windows-msvc.exe - asset_content_type: application/octet-stream \ No newline at end of file + args: --release --all-features