1
1
mirror of https://github.com/wez/wezterm.git synced 2024-12-18 19:01:36 +03:00
wezterm/.github/workflows/gen_centos7_continuous.yml
Wez Furlong ba804589fd Generate builds for more platforms
tweak some container names

fixup container names and regenerate the config

Ensure that curl is installed

the rust toolchain stuff wants curl

run apt update before apt install

centralize updating apt, and install sudo

revise get-deps script for slimmer debian images

more container related tweaks

get-deps: Don't require lsb-release on debianish systems

more get-deps improvements

Explicitly ask GH actions to recursively checkout the repo

Explicitly install git

fetch tags and tweak git build for debian systems

moar adjustments

remove deb8 (its wayland is too old), fixup debian publish

Ensure git build deps are installed always, tidy up sudo usage
2020-05-03 15:11:35 -07:00

135 lines
3.4 KiB
YAML

name: centos7_continuous
on:
schedule:
- cron: "10 * * * *"
jobs:
build:
strategy:
fail-fast: false
runs-on: "ubuntu-latest"
container: "centos:7"
steps:
- name: "Install Sudo"
shell: bash
run: |
export BUILD_REASON=Schedule
yum install -y sudo
- name: "Cache Git installation"
uses: actions/cache@v1
with:
path: "/usr/local/git"
key: "centos7-git-2.25.0"
- 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://mirrors.edge.kernel.org/pub/software/scm/git/git-2.25.0.tar.gz
tar xzf git-2.25.0.tar.gz
cd git-2.25.0
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
sudo -n ./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 }}"