From d563d5e48ef9b15dcf45029277bbc2f6eeef2454 Mon Sep 17 00:00:00 2001 From: Eli Zoller <5439169+elizoller@users.noreply.github.com> Date: Wed, 5 May 2021 10:38:36 -0700 Subject: [PATCH] Github actions (#94) --- .github/workflows/build-dev.yml | 74 +++++++++++++++++++++++++++++++++ .travis.yml | 35 ---------------- README.md | 4 +- 3 files changed, 76 insertions(+), 37 deletions(-) create mode 100644 .github/workflows/build-dev.yml delete mode 100644 .travis.yml diff --git a/.github/workflows/build-dev.yml b/.github/workflows/build-dev.yml new file mode 100644 index 0000000..647fe7f --- /dev/null +++ b/.github/workflows/build-dev.yml @@ -0,0 +1,74 @@ +# This is a basic workflow to help you get started with Actions + +name: CI + +# Controls when the action will run. +on: + # Triggers the workflow on push or pull request events but only for the 7.x branch + push: + branches: [ dev, main ] + pull_request: + branches: [ dev, main ] + + # Allows you to run this workflow manually from the Actions tab + workflow_dispatch: + +# A workflow run is made up of one or more jobs that can run sequentially or in parallel +jobs: + # This workflow contains a single job called "build" + build: + # The type of runner that the job will run on + runs-on: ubuntu-latest + strategy: + matrix: + php-versions: ["7.3", "7.4"] + + name: PHP ${{ matrix.php-versions }} + + # Steps represent a sequence of tasks that will be executed as part of the job + steps: + # Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it + - name: Checkout code + uses: actions/checkout@v2 + with: + path: build_dir + + - name: Checkout islandora_ci + uses: actions/checkout@v2 + with: + repository: islandora/islandora_ci + ref: github-actions + path: islandora_ci + + - name: Setup PHP + uses: shivammathur/setup-php@v2 + with: + php-version: ${{ matrix.php-versions }} + tools: composer:v2 + + - name: Set environment variables + run: | + echo "SCRIPT_DIR=$GITHUB_WORKSPACE/islandora_ci" >> $GITHUB_ENV + + - name: Cache Composer dependencies + uses: actions/cache@v2 + with: + path: /tmp/composer-cache + key: ${{ runner.os }}-${{ hashFiles('**/composer.lock') }} + + - name: composer install + run: | + cd $GITHUB_WORKSPACE/build_dir + composer install + + - name: Line endings + run: $SCRIPT_DIR/line_endings.sh $GITHUB_WORKSPACE + + - name: Test scripts + run: | + cd $GITHUB_WORKSPACE/build_dir + composer test + + - name: Codecov + uses: codecov/codecov-action@v1 + diff --git a/.travis.yml b/.travis.yml deleted file mode 100644 index 31618f0..0000000 --- a/.travis.yml +++ /dev/null @@ -1,35 +0,0 @@ -sudo: true -language: php -php: - - 7.3 - - 7.4 - -matrix: - fast_finish: true - -branches: - only: - - /main/ - - /^dev/ - -before_install: - - export SCRIPT_DIR=$HOME/islandora_ci - -install: - - git clone https://github.com/Islandora/islandora_ci.git $HOME/islandora_ci - - composer install - -script: - - $SCRIPT_DIR/line_endings.sh $TRAVIS_BUILD_DIR - - composer test - -notifications: - irc: - channels: - - "irc.freenode.org#islandora" - on_success: change - on_failure: always - skip_join: true - -after_success: - - bash <(curl -s https://codecov.io/bash) diff --git a/README.md b/README.md index 1f7d5de..04a34fd 100644 --- a/README.md +++ b/README.md @@ -3,10 +3,10 @@ [![Latest Stable Version](https://img.shields.io/packagist/v/Islandora/chullo.svg?style=flat-square)](https://packagist.org/packages/islandora/chullo) [![Minimum PHP Version](https://img.shields.io/badge/php-%3E%3D%207.4-8892BF.svg?style=flat-square)](https://php.net/) [![Downloads](https://img.shields.io/packagist/dt/islandora/chullo.svg?style=flat-square)](https://packagist.org/packages/islandora/chullo) -[![Build Status](https://travis-ci.com/Islandora/chullo.svg?branch=main)](https://travis-ci.com/Islandora/chullo) +[![Build Status](https://github.com/islandora/chullo/actions/workflows/build-dev.yml/badge.svg)](https://github.com/Islandora/chullo/actions) [![Contribution Guidelines](http://img.shields.io/badge/CONTRIBUTING-Guidelines-blue.svg)](./CONTRIBUTING.md) [![LICENSE](https://img.shields.io/badge/license-MIT-blue.svg?style=flat-square)](./LICENSE) -[![codecov](https://codecov.io/gh/Islandora/chullo/branch/main/graph/badge.svg)](https://codecov.io/gh/Islandora/chullo) +[![codecov](https://codecov.io/gh/Islandora/chullo/branch/main/graphs/badge.svg)](https://codecov.io/gh/Islandora/chullo) ## Introduction Chullo is a PHP client for [Fedora](http://fedorarepository.org/) built using [Guzzle](http://guzzlephp.org) and [EasyRdf](http://www.easyrdf.org/).