mirror of
https://github.com/wez/wezterm.git
synced 2024-12-24 22:01:47 +03:00
845a196b04
looks like the SSL cert for kernel.org expired today, breaking some of our CI flows. Let's try switching to github's mirror for git.
128 lines
3.2 KiB
YAML
128 lines
3.2 KiB
YAML
|
|
name: centos7_continuous
|
|
|
|
on:
|
|
schedule:
|
|
- cron: "10 * * * *"
|
|
|
|
|
|
jobs:
|
|
build:
|
|
strategy:
|
|
fail-fast: false
|
|
runs-on: "ubuntu-latest"
|
|
container: "centos:7"
|
|
steps:
|
|
- name: "Cache Git installation"
|
|
uses: actions/cache@v1
|
|
with:
|
|
path: "/usr/local/git"
|
|
key: "centos7-git-2.26.2"
|
|
- name: "Install Git from source"
|
|
shell: bash
|
|
run: |
|
|
export BUILD_REASON=Schedule
|
|
|
|
yum install -y wget curl-devel expat-devel gettext-devel openssl-devel zlib-devel gcc perl-ExtUtils-MakeMaker make
|
|
|
|
if test ! -x /usr/local/git/bin/git ; then
|
|
cd /tmp
|
|
wget https://github.com/git/git/archive/v2.26.2.tar.gz
|
|
tar xzf v2.26.2.tar.gz
|
|
cd git-2.26.2
|
|
make prefix=/usr/local/git install
|
|
fi
|
|
|
|
ln -s /usr/local/git/bin/git /usr/local/bin/git
|
|
|
|
|
|
|
|
- name: "Install curl"
|
|
shell: bash
|
|
run: |
|
|
export BUILD_REASON=Schedule
|
|
yum install -y curl
|
|
|
|
|
|
- name: "checkout repo"
|
|
uses: actions/checkout@v2
|
|
with:
|
|
submodules: "recursive"
|
|
- name: "Fetch tags"
|
|
shell: bash
|
|
run: |
|
|
export BUILD_REASON=Schedule
|
|
git fetch --depth=1 origin +refs/tags/*:refs/tags/*
|
|
|
|
|
|
- name: "Fetch tag/branch history"
|
|
shell: bash
|
|
run: |
|
|
export BUILD_REASON=Schedule
|
|
git fetch --prune --unshallow
|
|
|
|
|
|
- name: "Install Rust"
|
|
uses: actions-rs/toolchain@v1
|
|
with:
|
|
profile: "minimal"
|
|
toolchain: "stable"
|
|
override: true
|
|
components: "rustfmt"
|
|
- name: "Cache cargo registry"
|
|
uses: actions/cache@v1
|
|
with:
|
|
path: "~/.cargo/registry"
|
|
key: "centos7-None-${{ hashFiles('Cargo.lock') }}-cargo-registry"
|
|
- name: "Cache cargo index"
|
|
uses: actions/cache@v1
|
|
with:
|
|
path: "~/.cargo/git"
|
|
key: "centos7-None-${{ hashFiles('Cargo.lock') }}-cargo-index"
|
|
- name: "Cache cargo build"
|
|
uses: actions/cache@v1
|
|
with:
|
|
path: "target"
|
|
key: "centos7-None-${{ hashFiles('Cargo.lock') }}-cargo-build-target"
|
|
- name: "Install System Deps"
|
|
shell: bash
|
|
run: |
|
|
export BUILD_REASON=Schedule
|
|
./get-deps
|
|
|
|
|
|
- name: "Build (Release mode)"
|
|
shell: bash
|
|
run: |
|
|
export BUILD_REASON=Schedule
|
|
cargo build --all --release
|
|
|
|
|
|
- name: "Test (Release mode)"
|
|
shell: bash
|
|
run: |
|
|
export BUILD_REASON=Schedule
|
|
cargo test --all --release
|
|
|
|
|
|
- name: "Package"
|
|
shell: bash
|
|
run: |
|
|
export BUILD_REASON=Schedule
|
|
bash ci/deploy.sh
|
|
|
|
|
|
- name: "Move RPM"
|
|
shell: bash
|
|
run: |
|
|
export BUILD_REASON=Schedule
|
|
mv ~/rpmbuild/RPMS/*/*.rpm wezterm-nightly-centos7.rpm
|
|
|
|
|
|
- name: "Upload to Nightly Release"
|
|
uses: wez/upload-release-assets@releases/v1
|
|
with:
|
|
files: "wezterm-*.rpm"
|
|
release-tag: "nightly"
|
|
repo-token: "${{ secrets.GITHUB_TOKEN }}"
|