diff options
author | Christian Duerr <contact@christianduerr.com> | 2020-11-06 23:52:56 +0000 |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-11-06 23:52:56 +0000 |
commit | 43d1afbeeb9cba0ce1281a9cf2223b5bd71664d2 (patch) | |
tree | 874e6352f8733ee61a28170bb171eb6acb6e5e19 /.builds | |
parent | 3957a2555dbd81271d3e29a2f0b8f07258037e7b (diff) | |
download | alacritty-43d1afbeeb9cba0ce1281a9cf2223b5bd71664d2.tar.gz alacritty-43d1afbeeb9cba0ce1281a9cf2223b5bd71664d2.zip |
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.
Diffstat (limited to '.builds')
-rw-r--r-- | .builds/freebsd.yml | 30 | ||||
-rw-r--r-- | .builds/linux.yml | 40 | ||||
-rw-r--r-- | .builds/rustfmt.yml | 10 |
3 files changed, 60 insertions, 20 deletions
diff --git a/.builds/freebsd.yml b/.builds/freebsd.yml index 10f0333a..ec2e1616 100644 --- a/.builds/freebsd.yml +++ b/.builds/freebsd.yml @@ -1,4 +1,5 @@ image: freebsd/latest + packages: - devel/cmake - devel/pkgconf @@ -7,21 +8,30 @@ packages: - x11-fonts/fontconfig - x11-fonts/dejavu - x11/libxcb + sources: - https://github.com/alacritty/alacritty + +environment: + PATH: /home/build/.cargo/bin:/bin:/usr/bin:/usr/local/bin + tasks: - rustup: | curl https://sh.rustup.rs -sSf | sh -s -- -y --default-toolchain stable --profile minimal - $HOME/.cargo/bin/rustup toolchain install --profile minimal 1.43.1 - - 1-43-1: | + - test: | cd alacritty - $HOME/.cargo/bin/cargo +1.43.1 test - - 1-43-1-wayland: | + cargo test + - clippy: | + cd alacritty + rustup component add clippy + cargo clippy --all-targets + - oldstable: | + cd alacritty + rustup toolchain install --profile minimal 1.43.1 + cargo +1.43.1 test + - feature-wayland: | cd alacritty/alacritty - $HOME/.cargo/bin/cargo +1.43.1 test --no-default-features --features=wayland - - 1-43-1-x11: | + cargo test --no-default-features --features=wayland + - feature-x11: | cd alacritty/alacritty - $HOME/.cargo/bin/cargo +1.43.1 test --no-default-features --features=x11 - - stable: | - cd alacritty - $HOME/.cargo/bin/cargo +stable test + cargo test --no-default-features --features=x11 diff --git a/.builds/linux.yml b/.builds/linux.yml new file mode 100644 index 00000000..90c31836 --- /dev/null +++ b/.builds/linux.yml @@ -0,0 +1,40 @@ +image: archlinux + +packages: + - pkg-config + - cmake + - make + - freetype2 + - fontconfig + - libxcb + +sources: + - https://github.com/alacritty/alacritty + +environment: + PATH: /home/build/.cargo/bin:/usr/bin/ + +tasks: + - rustup: | + curl https://sh.rustup.rs -sSf | sh -s -- -y --default-toolchain stable --profile minimal + - test: | + cd alacritty + cargo test + - rustfmt: | + cd alacritty + rustup toolchain install nightly -c rustfmt + cargo +nightly fmt -- --check + - clippy: | + cd alacritty + rustup component add clippy + cargo clippy --all-targets + - oldstable: | + cd alacritty + rustup toolchain install --profile minimal 1.43.1 + cargo +1.43.1 test + - feature-wayland: | + cd alacritty/alacritty + cargo +1.43.1 test --no-default-features --features=wayland + - feature-x11: | + cd alacritty/alacritty + cargo +1.43.1 test --no-default-features --features=x11 diff --git a/.builds/rustfmt.yml b/.builds/rustfmt.yml deleted file mode 100644 index 52836217..00000000 --- a/.builds/rustfmt.yml +++ /dev/null @@ -1,10 +0,0 @@ -image: archlinux -sources: - - https://github.com/alacritty/alacritty -tasks: - - rustup: | - curl https://sh.rustup.rs -sSf | sh -s -- -y --profile minimal --default-toolchain none - $HOME/.cargo/bin/rustup toolchain install nightly -c rustfmt - - rustfmt: | - cd alacritty - $HOME/.cargo/bin/cargo fmt -- --check |