Meta: Add CI using GitHub Actions
Using test.yml from makem.sh repo.
This commit is contained in:
parent
b1d9fcf274
commit
3cc7ebe5b4
1 changed files with 72 additions and 0 deletions
72
.github/workflows/test.yml
vendored
Normal file
72
.github/workflows/test.yml
vendored
Normal file
|
|
@ -0,0 +1,72 @@
|
|||
# * test.yml --- Test Emacs packages using makem.sh on GitHub Actions
|
||||
|
||||
# https://github.com/alphapapa/makem.sh
|
||||
|
||||
# Based on Steve Purcell's examples at
|
||||
# <https://github.com/purcell/setup-emacs/blob/master/.github/workflows/test.yml>,
|
||||
# <https://github.com/purcell/package-lint/blob/master/.github/workflows/test.yml>.
|
||||
|
||||
# * License:
|
||||
|
||||
# This program is free software; you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License as published by
|
||||
# the Free Software Foundation, either version 3 of the License, or
|
||||
# (at your option) any later version.
|
||||
|
||||
# This program is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
# GNU General Public License for more details.
|
||||
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||
|
||||
# * Code:
|
||||
|
||||
name: "CI"
|
||||
on:
|
||||
pull_request:
|
||||
push:
|
||||
# branches:
|
||||
# - master
|
||||
|
||||
jobs:
|
||||
build:
|
||||
runs-on: ubuntu-latest
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
emacs_version:
|
||||
- 26.3
|
||||
- snapshot
|
||||
steps:
|
||||
- uses: purcell/setup-emacs@master
|
||||
with:
|
||||
version: ${{ matrix.emacs_version }}
|
||||
|
||||
- uses: actions/checkout@v1
|
||||
|
||||
- name: Install sandbox script
|
||||
run: |
|
||||
curl -o $GITHUB_WORKSPACE/emacs-sandbox.sh \
|
||||
https://raw.githubusercontent.com/alphapapa/emacs-sandbox.sh/master/emacs-sandbox.sh
|
||||
chmod +x $GITHUB_WORKSPACE/emacs-sandbox.sh
|
||||
echo ::add-path::$GITHUB_WORKSPACE
|
||||
echo ::set-env name=SANDBOX_DIR::$(mktemp -d)
|
||||
|
||||
- name: Initialize sandbox
|
||||
run: ./makem.sh -vv --sandbox-dir=$SANDBOX_DIR --auto-install --install package-lint
|
||||
|
||||
# The "all" rule is not used, because it treats compilation warnings
|
||||
# as failures, so linting and testing are run as separate steps.
|
||||
|
||||
- name: Lint
|
||||
run: ./makem.sh -vv --sandbox-dir=$SANDBOX_DIR lint
|
||||
|
||||
- name: Test
|
||||
if: always() # Run test even if linting fails.
|
||||
run: ./makem.sh -vv --sandbox-dir=$SANDBOX_DIR test
|
||||
|
||||
# Local Variables:
|
||||
# eval: (outline-minor-mode)
|
||||
# End:
|
||||
Loading…
Add table
Add a link
Reference in a new issue