-
Notifications
You must be signed in to change notification settings - Fork 8
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Adapt the unit test action to not use a docker image.
This uses Ubuntu 22.04 for the runner and docker image.
- Loading branch information
Showing
20 changed files
with
165 additions
and
95 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,43 +1,94 @@ | ||
--- | ||
name: Unit Tests and Coverage | ||
|
||
on: | ||
push: | ||
branches: [ main ] | ||
branches: [main] | ||
pull_request: | ||
branches: [ main ] | ||
branches: [main] | ||
|
||
jobs: | ||
unit-tests: | ||
runs-on: ubuntu-latest | ||
# If we are going to use a prebuilt image like this we need a webwork repository on docker hub | ||
container: drgrice1/webwork3 | ||
runs-on: ubuntu-22.04 | ||
steps: | ||
- uses: actions/checkout@v2 | ||
- name: Checkout webwork3 source code | ||
uses: actions/checkout@v3 | ||
|
||
# Disabling these things speeds up the setup considerably, and they are not needed for the throw away machine. | ||
- name: Disable man-db and initramfs updates | ||
run: | | ||
sudo sed -i 's/yes/no/g' /etc/initramfs-tools/update-initramfs.conf | ||
sudo rm -f /var/lib/man-db/auto-update | ||
- name: Install dependencies | ||
env: | ||
DEBIAN_FRONTEND: noninteractive | ||
DEBCONF_NONINTERACTIVE_SEEN: true | ||
DEBCONF_NOWARNINGS: yes | ||
run: | | ||
sudo apt-get update | ||
sudo apt-get install -qy --no-install-recommends --no-install-suggests \ | ||
cpanminus \ | ||
libarray-utils-perl \ | ||
libcanary-stability-perl \ | ||
libcapture-tiny-perl \ | ||
libclass-accessor-lite-perl \ | ||
libclone-perl \ | ||
libcpanel-json-xs-perl \ | ||
libcrypt-ssleay-perl \ | ||
libdata-dump-perl \ | ||
libdatetime-format-strptime-perl \ | ||
libdbd-sqlite3-perl \ | ||
libdbix-class-inflatecolumn-serializer-perl \ | ||
libdbix-class-perl \ | ||
libdbix-dbschema-perl \ | ||
libdevel-cover-perl \ | ||
libexception-class-perl \ | ||
libextutils-config-perl \ | ||
libextutils-helpers-perl \ | ||
libextutils-installpaths-perl \ | ||
libfurl-perl \ | ||
libhttp-parser-xs-perl \ | ||
libimporter-perl \ | ||
libio-socket-ssl-perl \ | ||
liblist-moreutils-perl \ | ||
libmodule-build-tiny-perl \ | ||
libmojolicious-perl \ | ||
libmojolicious-plugin-authentication-perl \ | ||
libnet-ssleay-perl \ | ||
libsql-translator-perl \ | ||
libtest-exception-perl \ | ||
libtest-harness-perl \ | ||
libtext-csv-perl \ | ||
libtry-tiny-perl \ | ||
libyaml-libyaml-perl | ||
cpanm --sudo --notest \ | ||
DBIx::Class::DynamicSubclass \ | ||
Mojolicious::Plugin::DBIC \ | ||
Mojolicious::Plugin::NotYAMLConfig \ | ||
Devel::Cover::Report::Codecov | ||
- name: Run perl unit tests | ||
env: | ||
HARNESS_PERL_SWITCHES: -MDevel::Cover | ||
run: | | ||
perl t/db/build_db.pl | ||
prove -r t | ||
# we probably don'te need to upload the codecov data | ||
# - uses: actions/upload-artifact@v2 | ||
# with: | ||
# name: coverage-report | ||
# path: cover_db/ | ||
|
||
- name: Push coverage analysis | ||
if: ${{ github.event_name == 'push' && github.ref == 'refs/heads/main' }} | ||
env: | ||
CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }} | ||
run: cover -report codecov | ||
|
||
# Install node (for npm) and use it to install eslint and stylelint dependencies. | ||
- name: Use Node.js | ||
uses: actions/setup-node@v2 | ||
# Install node (for npm). | ||
- name: Set up node | ||
uses: actions/setup-node@v3 | ||
with: | ||
node-version: '16' | ||
|
||
- name: Install Dependencies | ||
run: npm ci | ||
|
||
- name: Run typescript (client-side) tests | ||
run: npm run test |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,46 +1,61 @@ | ||
FROM ubuntu:20.04 | ||
FROM ubuntu:22.04 | ||
|
||
# the following are needed to make sure the timezone packages don't ask for your timezone. | ||
ENV DEBIAN_FRONTEND noninteractive | ||
ENV DEBCONF_NONINTERACTIVE_SEEN true | ||
ENV DEBCONF_NOWARNINGS yes | ||
ENV HARNESS_PERL_SWITCHES -MDevel::Cover | ||
|
||
RUN apt-get update && \ | ||
apt-get install -qy --no-install-recommends --no-install-suggests \ | ||
build-essential=12.8ubuntu1 \ | ||
ca-certificates=20210119~20.04.1 \ | ||
cpanminus=1.7044-1 \ | ||
git=1:2.25.1-1ubuntu3.1 \ | ||
libarray-utils-perl=0.5-1 \ | ||
libclone-perl=0.43-2 \ | ||
libcrypt-ssleay-perl=0.73.06-1build3 \ | ||
libdata-dump-perl=1.23-1 \ | ||
libdatetime-format-strptime-perl=1.7600-1 \ | ||
libdbd-mysql-perl=4.050-3 \ | ||
libdbd-sqlite3-perl=1.64-1build1 \ | ||
libdbix-class-perl=0.082841-1 \ | ||
ca-certificates=20211016 \ | ||
cpanminus=1.7045-1 \ | ||
git=1:2.34.1-1ubuntu1.4 \ | ||
libarray-utils-perl=0.5-2 \ | ||
libcanary-stability-perl=2006-2 \ | ||
libcapture-tiny-perl=0.48-1 \ | ||
libclass-accessor-lite-perl=0.08-1.1 \ | ||
libclone-perl=0.45-1build3 \ | ||
libcommon-sense-perl=3.75-2build1 \ | ||
libcpanel-json-xs-perl=4.27-1build1 \ | ||
libcrypt-ssleay-perl=0.73.06-1build6 \ | ||
libdata-dump-perl=1.25-1 \ | ||
libdatetime-format-strptime-perl=1.7900-1 \ | ||
#libdbd-mysql-perl=4.050-5 \ # if desired to use a full database | ||
libdbd-sqlite3-perl=1.70-3build1 \ | ||
libdbix-class-inflatecolumn-serializer-perl=0.09-1 \ | ||
libdbix-class-perl=0.082842-3 \ | ||
libdbix-dbschema-perl=0.45-1 \ | ||
libdevel-cover-perl=1.33-1build1 \ | ||
libexception-class-perl=1.44-1 \ | ||
libjson-perl=4.02000-2 \ | ||
libnet-ssleay-perl=1.88-2ubuntu1 \ | ||
libsql-translator-perl=1.60-1 \ | ||
libssl-dev=1.1.1f-1ubuntu2.5 \ | ||
libdevel-cover-perl=1.36-2build2 \ | ||
libc6-dev=2.35-0ubuntu3.1 \ | ||
libexception-class-perl=1.45-1 \ | ||
libextutils-config-perl=0.008-2 \ | ||
libextutils-helpers-perl=0.026-1 \ | ||
libextutils-installpaths-perl=0.012-1.1 \ | ||
libfurl-perl=3.14-2 \ | ||
libhttp-parser-xs-perl=0.17-2build1 \ | ||
libimporter-perl=0.026-1 \ | ||
libio-socket-ssl-perl=2.074-2 \ | ||
libjson-perl=4.04000-1 \ | ||
libjson-xs-perl=4.030-1build3 \ | ||
libmodule-build-tiny-perl=0.039-1.1 \ | ||
libmojolicious-perl=9.22+dfsg-1 \ | ||
libmojolicious-plugin-authentication-perl=1.37-1 \ | ||
libnet-ssleay-perl=1.92-1build2 \ | ||
libsql-translator-perl=1.62-1 \ | ||
libssl-dev=3.0.2-0ubuntu1.6 \ | ||
libtest-exception-perl=0.43-1 \ | ||
libtest-harness-perl=3.42-2 \ | ||
libtext-csv-perl=2.00-1 \ | ||
libtry-tiny-perl=0.30-1 \ | ||
libyaml-libyaml-perl=0.81+repack-1 \ | ||
# mariadb-server=1:10.3.31-0ubuntu0.20.04.1 \ # if desired to use a full database | ||
openssl=1.1.1f-1ubuntu2.5 && \ | ||
libtext-csv-perl=2.01-1 \ | ||
libtry-tiny-perl=0.31-1 \ | ||
libtypes-serialiser-perl=1.01-1 \ | ||
libyaml-libyaml-perl=0.83+ds-1build1 \ | ||
make=4.3-4.1build1 \ | ||
#mariadb-server=1:10.6.7-2ubuntu1.1 \ # if desired to use a full database | ||
openssl=3.0.2-0ubuntu1.6 && \ | ||
rm -rf /var/lib/apt/lists/* && \ | ||
cpanm --notest \ | ||
DBIx::Class::DynamicSubclass \ | ||
Mojolicious \ | ||
Mojolicious::Plugin::NotYAMLConfig \ | ||
Mojolicious::Plugin::DBIC \ | ||
Mojolicious::Plugin::Authentication \ | ||
Mojolicious::Plugin::NotYAMLConfig \ | ||
Devel::Cover::Report::Codecov | ||
|
||
ENTRYPOINT ["/bin/bash"] |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.