From 43d1afbeeb9cba0ce1281a9cf2223b5bd71664d2 Mon Sep 17 00:00:00 2001 From: Christian Duerr Date: Fri, 6 Nov 2020 23:52:56 +0000 Subject: Migrate from Travis CI to GitHub Actions This removes all CI builds from travis-ci, due to their recent changes in policy and harsh limitations on builds. With build times over 2 hours, it was a significant hindrance to development. Instead of Travis CI, the CI is now split on Sourcehut and GitHub. Since Sourcehut only supports Linux/BSD, all builds on those operating systems are executed there. The GitHub Actions CI is used to build for Windows/macOS, which are not available on Sourcehut. Since asset deployment for releases requires builds on all platforms, this is also done on GitHub actions. Though the new `upload_asset.sh` script makes sure that migration in the future is fairly simple and we do not tie ourselves to the overly complicated GitHub Actions ecosystem. --- ci/before_deploy.sh | 54 ----------------------------------------------------- ci/install.sh | 6 ------ ci/script.sh | 16 ---------------- 3 files changed, 76 deletions(-) delete mode 100755 ci/before_deploy.sh delete mode 100755 ci/install.sh delete mode 100755 ci/script.sh (limited to 'ci') diff --git a/ci/before_deploy.sh b/ci/before_deploy.sh deleted file mode 100755 index c2a335e1..00000000 --- a/ci/before_deploy.sh +++ /dev/null @@ -1,54 +0,0 @@ -#!/bin/bash - -# All files which should be added only if they changed -aux_files=("extra/completions/alacritty.bash" - "extra/completions/alacritty.fish" - "extra/completions/_alacritty" - "extra/linux/Alacritty.desktop" - "extra/alacritty.info" - "alacritty.yml") - -# Output binary name -name="Alacritty-${TRAVIS_TAG}" - -# Everything in this directory will be offered as download for the release -mkdir "./target/deploy" - -function windows { - choco install 7zip nuget.commandline - nuget install WiX - - # Create zip archive - 7z a -tzip "./target/deploy/${name}-windows-portable.zip" "./target/release/alacritty.exe" \ - "./target/release/winpty-agent.exe" - - # Create msi installer - ./WiX.*/tools/candle.exe -nologo -arch "x64" -ext WixUIExtension -ext WixUtilExtension -out \ - "target/alacritty.wixobj" "extra/windows/wix/alacritty.wxs" - ./WiX.*/tools/light.exe -nologo -ext WixUIExtension -ext WixUtilExtension -out \ - "target/installer.msi" -sice:ICE61 -sice:ICE91 "target/alacritty.wixobj" - mv "target/installer.msi" "target/deploy/${name}-windows-installer.msi" -} - -function osx { - rm -rf "./target/release" \ - && make dmg \ - && mv "./target/release/osx/Alacritty.dmg" "./target/deploy/${name}.dmg" -} - -if [ "$TRAVIS_OS_NAME" == "osx" ]; then - osx || exit -elif [ "$TRAVIS_OS_NAME" == "windows" ]; then - windows -fi - -# Convert and add manpage if it changed -gzip -c "./extra/alacritty.man" > "./target/deploy/alacritty.1.gz" || exit - -# Rename Alacritty logo to match .desktop file -cp "./extra/logo/alacritty-term.svg" "./target/deploy/Alacritty.svg" || exit - -# Offer various other files -for file in "${aux_files[@]}"; do - cp $file "./target/deploy/" || exit -done diff --git a/ci/install.sh b/ci/install.sh deleted file mode 100755 index ad62a190..00000000 --- a/ci/install.sh +++ /dev/null @@ -1,6 +0,0 @@ -#!/bin/bash - -# Add clippy for lint validation -if [ "$CLIPPY" == "true" ]; then - rustup component add clippy -fi diff --git a/ci/script.sh b/ci/script.sh deleted file mode 100755 index cc4656ae..00000000 --- a/ci/script.sh +++ /dev/null @@ -1,16 +0,0 @@ -#!/bin/bash - -# Run clippy checks -if [ "$CLIPPY" == "true" ]; then - cargo clippy --all-targets - exit -fi - -# Run test in release mode if a tag is present, to produce an optimized binary -if [ -n "$TRAVIS_TAG" ]; then - # Build separately so we generate an 'alacritty' binary without -HASH appended - cargo build --release - cargo test --release -else - cargo test -fi -- cgit