summaryrefslogtreecommitdiffstats
path: root/.github/workflows/cd.yml
diff options
context:
space:
mode:
Diffstat (limited to '.github/workflows/cd.yml')
-rw-r--r--.github/workflows/cd.yml113
1 files changed, 3 insertions, 110 deletions
diff --git a/.github/workflows/cd.yml b/.github/workflows/cd.yml
index 562206e9..d9c8e7ea 100644
--- a/.github/workflows/cd.yml
+++ b/.github/workflows/cd.yml
@@ -1,122 +1,15 @@
name: Continuous Deployment
-on:
- push:
- tags:
- - '[0-9]+.[0-9]+.[0-9]+'
+on: [push]
jobs:
- publish:
- name: Publishing for ${{ matrix.job.os }}
- runs-on: ${{ matrix.job.os }}
- strategy:
- matrix:
- job:
- - os: macos-latest
- target: x86_64-apple-darwin
- use-cross: false
- - os: macos-latest
- target: aarch64-apple-darwin
- use-cross: false
- - os: windows-latest
- target: x86_64-pc-windows-msvc
- use-cross: false
- - os: ubuntu-latest
- target: x86_64-unknown-linux-gnu
- use-cross: false
- - os: ubuntu-latest
- target: x86_64-unknown-linux-musl
- use-cross: true
- - os: ubuntu-latest
- target: i686-unknown-linux-gnu
- use-cross: true
- - os: ubuntu-latest
- target: arm-unknown-linux-gnueabihf
- use-cross: true
- - os: ubuntu-latest
- target: aarch64-unknown-linux-gnu
- use-cross: true
-
- steps:
- - name: Installing Rust toolchain
- uses: dtolnay/rust-toolchain@stable
- with:
- targets: ${{ matrix.job.target }}
- - name: Checkout repository
- uses: actions/checkout@v3
- - name: Install cross
- if: matrix.job.use-cross
- uses: taiki-e/install-action@v2
- with:
- tool: cross
- - name: Cargo build
- env:
- MACOSX_DEPLOYMENT_TARGET: 10.7
- shell: bash
- run: |
- if [[ "${{ matrix.job.use-cross }}" == "true" ]]; then
- cross build --release --target ${{ matrix.job.target }}
- else
- cargo build --release --target ${{ matrix.job.target }}
- fi
-
- - name: Install required dependencies
- shell: bash
- run: |
- if [[ ${{ matrix.job.target }} == arm-unknown-linux-gnueabihf ]]; then
- sudo apt update
- sudo apt-get install -y binutils-arm-linux-gnueabihf
- fi
- if [[ ${{ matrix.job.target }} == aarch64-unknown-linux-gnu ]]; then
- sudo apt update
- sudo apt-get install -y binutils-aarch64-linux-gnu
- fi
-
- - name: Packaging final binary
- shell: bash
- env:
- TARGET: ${{ matrix.job.target }}
- PROJECT_NAME: delta
- PACKAGE_NAME: git-delta
- OS_NAME: ${{ matrix.job.os }}
- run: ./etc/ci/before_deploy.sh
-
- - name: Releasing assets
- uses: softprops/action-gh-release@v1
- with:
- files: |
- delta-*-${{ matrix.job.target }}.*
- git-delta*.deb
- env:
- GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
-
- publish-to-cargo:
- name: Publishing to Cargo
- runs-on: ubuntu-latest
- steps:
- - uses: actions/checkout@v3
- - uses: dtolnay/rust-toolchain@stable
- - run: cargo publish --token ${{ secrets.CARGO_API_KEY }} --allow-dirty
-
- publish-to-winget:
- name: Publish to WinGet
- runs-on: windows-latest # Action can only be run on windows
- needs: publish
- steps:
- - uses: vedantmgoyal2009/winget-releaser@v2
- with:
- identifier: dandavison.delta
- version: ${{ github.ref_name }}
- installers-regex: '-pc-windows-msvc\.zip$'
- token: ${{ secrets.WINGET_TOKEN }}
-
bump-homebrew-formula:
runs-on: macos-latest
steps:
- name: Checkout repository
- uses: actions/checkout@v3
+ uses: actions/checkout@v2
- name: Bump Homebrew formulae
uses: dawidd6/action-homebrew-bump-formula@v3
with:
formula: git-delta
- token: ${{ secrets.HOMEBREW_GITHUB_API_TOKEN }}
+ token: ${{ secrets.GITHUB_TOKEN }}