RSS Git Download  Clone
Raw Blame History
name: Legacy Build

on:
  workflow_dispatch: ~

  push:
    branches:
      - legacy
    tags:
      - 1.**

  pull_request:
    branches:
      - legacy

jobs:
  build:
    runs-on: ubuntu-latest

    strategy:
      matrix:
        php:
          - 7.4
          - 8.0
          - 8.1

    steps:
      - uses: actions/checkout@v2

      - name: Validate composer.json and composer.lock
        run: composer validate --strict

      - name: Cache Composer packages
        id: composer-cache
        uses: actions/cache@v2
        with:
          path: vendor
          key: ${{ runner.os }}-php-${{ hashFiles('**/composer.lock') }}
          restore-keys: |
            ${{ runner.os }}-php-

      - name: Install dependencies
        run: composer install --prefer-dist --no-progress

      - name: Run test suite
        run: composer run-script test

  release:
    if: startsWith(github.ref, 'refs/tags/1')
    runs-on: ubuntu-latest
    needs: [build]
    steps:
      - name: Checkout
        uses: actions/checkout@v2

      - name: Build package
        run: make build

      - name: Rename package to current tag
        run: mv build.zip gitlist-${{ github.ref_name }}.zip

      - name: Release
        uses: softprops/action-gh-release@v1
        with:
          generate_release_notes: true
          files: gitlist-${{ github.ref_name }}.zip