summaryrefslogtreecommitdiffstats
path: root/.builds
diff options
context:
space:
mode:
authorChristian Duerr <contact@christianduerr.com>2020-11-06 23:52:56 +0000
committerGitHub <noreply@github.com>2020-11-06 23:52:56 +0000
commit43d1afbeeb9cba0ce1281a9cf2223b5bd71664d2 (patch)
tree874e6352f8733ee61a28170bb171eb6acb6e5e19 /.builds
parent3957a2555dbd81271d3e29a2f0b8f07258037e7b (diff)
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.yml30
-rw-r--r--.builds/linux.yml40
-rw-r--r--.builds/rustfmt.yml10
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