diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 2ae3719..b13a0ba 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -21,7 +21,7 @@ jobs: - develop # - latest perl: - - '5.40' + - '5.42' - '5.36' - '5.26' runner: @@ -36,6 +36,9 @@ jobs: with: perl-version: ${{ matrix.perl }} + - name: update + run: sudo apt update -y + - name: Install binary dependencies run: | # * These were taken from the installation instruction. @@ -110,3 +113,41 @@ jobs: - name: Test run: | prove -lv t + + build-artifact: + needs: run-tests + runs-on: ubuntu-22.04 + steps: + - uses: actions/checkout@v4 + + - name: update + run: sudo apt update -y + + - name: apt install + run: sudo apt-get install -y build-essential git libmodule-install-perl gettext + + - name: build + run: perl Makefile.PL && make all dist + + - name: Get short SHA + id: short_sha + run: | + if [ "${{ github.event_name }}" == "pull_request" ]; then + echo "SHORT_SHA=$(echo ${{ github.event.pull_request.head.sha }} | cut -c1-7)" >> $GITHUB_ENV + else + echo "SHORT_SHA=$(echo ${{ github.sha }} | cut -c1-7)" >> $GITHUB_ENV + fi + + - name: Get Zonemaster-CLI version + id: version + run: | + result=`grep "use version; our $VERSION" lib/Zonemaster/CLI.pm` + result+='printf $VERSION;' + VERSION=`perl -e "$result"` + echo "version=$VERSION" >> $GITHUB_OUTPUT + + - name: upload artifact + uses: actions/upload-artifact@v4 + with: + name: Zonemaster-CLI-${{ steps.version.outputs.version }}-${{ env.SHORT_SHA }} + path: Zonemaster-CLI-${{ steps.version.outputs.version }}.tar.gz diff --git a/Dockerfile b/Dockerfile index 8c5768c..3269e18 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,14 +1,19 @@ FROM zonemaster/engine:local AS build RUN apk add --no-cache \ + build-base \ make \ perl-app-cpanminus \ + perl-dev \ perl-json-xs \ perl-lwp-protocol-https \ perl-mojolicious \ perl-test-deep \ perl-test-differences \ + perl-test-nowarnings \ perl-try-tiny \ + && cpanm --notest --no-wget --from https://cpan.metacpan.org/ \ + https://cpan.metacpan.org/authors/id/E/ET/ETHER/Net-IDN-Encode-2.501-TRIAL.tar.gz \ && cpanm --notest --no-wget --from https://cpan.metacpan.org/ \ JSON::Validator diff --git a/README.md b/README.md index 9f370cf..87600ec 100644 --- a/README.md +++ b/README.md @@ -46,6 +46,15 @@ Additional end-user documentation is available in the [USING] document. When developing Zonemaster-CLI, refer to the [development documentation]. +## CI artifact + +A tarball (`Zonemaster-CLI-.tar.gz`) is built and uploaded as a GitHub Actions artifact on every push and pull request. This artifact can be useful for release testing and PR review. +To download it: +1. Go to the [Actions tab](https://github.com/zonemaster/zonemaster-cli/actions) of the repository. +2. Select a workflow run (e.g. for a specific PR or branch). +3. Scroll to the bottom of the run summary to the **Artifacts** section. +4. Download the artifact named `Zonemaster-CLI--`. +The artifact name includes the module version and the first 7 characters of the commit SHA. ## Participation, Contact and Bug reporting diff --git a/share/sv.po b/share/sv.po index df3dd1f..f15f02b 100644 --- a/share/sv.po +++ b/share/sv.po @@ -2,9 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: 0.0.5\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-12-12 10:17+0100\n" -"PO-Revision-Date: 2023-05-31 08:42+0000\n" -"Last-Translator: mattias.paivarinta@iis.se\n" +"POT-Creation-Date: 2026-06-09 13:07+0000\n" +"PO-Revision-Date: 2026-03-02 22:56+0000\n" "Language-Team: Zonemaster Team\n" "Language: sv\n" "MIME-Version: 1.0\n" @@ -28,7 +27,7 @@ msgstr "" "– finns den installerad på det här systemet?" msgid "Warning: deprecated --encoding, simply remove it from your usage." -msgstr "" +msgstr "Varning: föråldrat \"--encoding\", sluta att använda." msgid "Error: --json-stream and --no-json cannot be used together." msgstr "Fel: --json-stream och --no-json kan inte användas tillsammans." @@ -54,43 +53,19 @@ msgstr "Laddar profil från {path}." #, perl-brace-format msgid "Error: invalid value for --sourceaddr4: {reason}" -msgstr "" +msgstr "Fel: otillåtet värde för \"--sourceaddr4\": {reason}" #, perl-brace-format msgid "Error: invalid value for --sourceaddr6: {reason}" -msgstr "" +msgstr "Fel: otillåtet värde för \"--sourceaddr6\": {reason}" #, perl-brace-format -msgid "" -"Error: Invalid input '{cli_arg}' in --test. There must be at most one slash " -"('/') character." -msgstr "" - -#, perl-brace-format -msgid "" -"Error: Unrecognized test case '{testcase}' in --test. Use --list-tests for a " -"list of valid choices." -msgstr "" - -#, perl-brace-format -msgid "" -"Error: Unrecognized test module '{module}' in --test. Use --list-tests for a " -"list of valid choices." -msgstr "" - -#, perl-brace-format -msgid "Error: Invalid input '{cli_arg}' in --test." -msgstr "" - -#, perl-brace-format -msgid "" -"Notice: Engine does not have test case '{testcase}' enabled in the profile. " -"Forcing..." -msgstr "" +msgid "Error: unrecognized term '{term}' in --test." +msgstr "Fel: okänd term \"{term}\" för \"--test\"." #, perl-brace-format msgid "Failed to recognize stop level '{level}'." -msgstr "Kände inte igen avslutsnivån '{level}'." +msgstr "Kände inte igen avslutsnivån \"{level}\"." msgid "" "--level must be one of CRITICAL, ERROR, WARNING, NOTICE, INFO, DEBUG, DEBUG2 " @@ -103,15 +78,15 @@ msgid "" "Only one domain can be given for testing. Did you forget to prepend an " "option with '--