From caf97d9cd063ebc98df80293f6d3d6c64471766d Mon Sep 17 00:00:00 2001
From: Daniel Friesel <derf@finalrewind.org>
Date: Mon, 6 Apr 2020 10:07:07 +0200
Subject: [PATCH] Switch from Travis CI to GitHub Actions

Squashed commit of the following:

commit 3dd25e35bb8c9d238e64300494b8c4e05e494bba
Author: Daniel Friesel <derf@finalrewind.org>
Date:   Mon Apr 6 10:02:57 2020 +0200

    hm

commit 04159061ed7932e2ee4ceca7af9d43a3fca034c5
Author: Daniel Friesel <derf@finalrewind.org>
Date:   Mon Apr 6 09:56:19 2020 +0200

    no sudo

commit 1d16ec10faa807672433cbab11acd50eee9c8a6f
Author: Daniel Friesel <derf@finalrewind.org>
Date:   Mon Apr 6 09:51:54 2020 +0200

    Switch from Travis CI to GitHub Actions
---
 .../travelynx.conf                            |  6 +--
 .github/workflows/perl.yml                    | 50 +++++++++++++++++++
 .travis.yml                                   | 20 --------
 3 files changed, 53 insertions(+), 23 deletions(-)
 rename .travis.travelynx.conf => .github/travelynx.conf (67%)
 create mode 100644 .github/workflows/perl.yml
 delete mode 100644 .travis.yml

diff --git a/.travis.travelynx.conf b/.github/travelynx.conf
similarity index 67%
rename from .travis.travelynx.conf
rename to .github/travelynx.conf
index 2678d10f..816926e6 100644
--- a/.travis.travelynx.conf
+++ b/.github/travelynx.conf
@@ -4,9 +4,9 @@
 		realtime => '/tmp/dbf-iris-realtime',
 	},
 	db => {
-		host => 'localhost',
+		host => 'postgres',
 		database => 'travelynx_ci_test',
-		user => 'postgres',
-		password => '',
+		user => 'travelynx',
+		password => 'whatever',
 	},
 };
diff --git a/.github/workflows/perl.yml b/.github/workflows/perl.yml
new file mode 100644
index 00000000..64f8a15f
--- /dev/null
+++ b/.github/workflows/perl.yml
@@ -0,0 +1,50 @@
+name: Perl Tests
+
+on:
+  push:
+    branches:
+      - '*'
+  pull_request:
+    branches:
+      - '*'
+
+jobs:
+  perl:
+
+    runs-on: ubuntu-latest
+
+    strategy:
+      matrix:
+        perl-version:
+          - '5.20'
+          - 'latest'
+          - 'threaded'
+
+    container:
+      image: perl:${{ matrix.perl-version }}
+
+    services:
+      postgres:
+        image: postgres:11
+        env:
+          POSTGRES_USER: travelynx
+          POSTGRES_PASSWORD: whatever
+          POSTGRES_DB: travelynx_ci_test
+        ports:
+        - 5432:5432
+        options: --health-cmd pg_isready --health-interval 10s --health-timeout 5s --health-retries 5
+
+    steps:
+      - uses: actions/checkout@v2
+      - name: perl -V
+        run: perl -V
+      - name: Setup Repo
+        run: |
+          rm -f cpanfile.snapshot
+          cp .github/travelynx.conf travelynx.conf
+      - name: Install PostgreSQL Client Library
+        run: apt install libpq-dev
+      - name: Install Perl Dependencies
+        run: curl -sL https://git.io/cpm | perl - install -g --show-build-log-on-failure
+      - name: Run Tests
+        run: prove -l t
diff --git a/.travis.yml b/.travis.yml
deleted file mode 100644
index 2ae0fe42..00000000
--- a/.travis.yml
+++ /dev/null
@@ -1,20 +0,0 @@
-language: perl
-perl:
-  - "5.30"
-  - "5.28"
-  - "5.26"
-services:
-  - postgresql
-addons:
-  apt:
-    packages:
-      - libcache-perl
-      - libdb-dev
-      - libpq-dev
-      - libxml2-dev
-  postgresql: "9.4"
-before_script:
-  - cp .travis.travelynx.conf travelynx.conf
-  - psql -c 'create database travelynx_ci_test;' -U postgres
-script:
-  - prove -lv
-- 
GitLab