Skip to content

Commit

Permalink
Add Linux::Alpine
Browse files Browse the repository at this point in the history
  • Loading branch information
DrHyde committed May 20, 2024
1 parent a45856e commit 4dd90d9
Show file tree
Hide file tree
Showing 3 changed files with 53 additions and 0 deletions.
19 changes: 19 additions & 0 deletions .github/workflows/alpine-linux.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
name: Alpine Linux
on: [push, pull_request]

jobs:
build:
runs-on: ubuntu-latest
container:
image: alpine
steps:
- uses: actions/checkout@v4
- name: Test on Alpine
run: |
cat /etc/os-release
apk add perl gcc make git
yes|perl -MCPAN -e 'install qw(App::cpanminus local::lib Expect)'
export PERL5OPT=-Mlocal::lib
/usr/local/bin/cpanm --installdeps .
perl makefile-expect-driver.pl Linux Unix OSFeatures::POSIXShellRedirection HWCapabilities::Int64 Linux::Alpine
make test
1 change: 1 addition & 0 deletions MANIFEST
Original file line number Diff line number Diff line change
Expand Up @@ -165,3 +165,4 @@ lib/Devel/AssertOS/Linux/Slackware.pm
lib/Devel/AssertOS/Linux/Gentoo.pm
lib/Devel/AssertOS/Linux/Oracle.pm
lib/Devel/AssertOS/Linux/Elementary.pm
lib/Devel/AssertOS/Linux/Alpine.pm
33 changes: 33 additions & 0 deletions lib/Devel/AssertOS/Linux/Alpine.pm
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
package Devel::AssertOS::Linux::Alpine;

use Devel::CheckOS;
use strict;
use warnings;
no warnings 'redefine';

use Devel::CheckOS::Helpers::LinuxOSrelease 'distributor_id';

our $VERSION = '1.1';

sub os_is {
my $id = distributor_id;

Devel::CheckOS::os_is('Linux') &&
defined($id) &&
$id eq 'alpine';
}

sub expn { "The operating system is Alpine" }

Devel::CheckOS::die_unsupported() unless(os_is());

=head1 COPYRIGHT and LICENCE
Copyright 2024 David Cantrell
This software is free-as-in-speech software, and may be used, distributed, and modified under the terms of either the GNU General Public Licence version 2 or the Artistic Licence. It's up to you which one you use. The full text of the licences can be found in the files GPL2.txt and ARTISTIC.txt, respectively.
=cut

1;

0 comments on commit 4dd90d9

Please sign in to comment.