From patchwork Sun Feb 26 19:13:21 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Timo Wilken X-Patchwork-Id: 47400 Return-Path: X-Original-To: patchwork@mira.cbaines.net Delivered-To: patchwork@mira.cbaines.net Received: by mira.cbaines.net (Postfix, from userid 113) id 7A6E716BD5; Sun, 26 Feb 2023 19:14:14 +0000 (GMT) X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on mira.cbaines.net X-Spam-Level: X-Spam-Status: No, score=-2.0 required=5.0 tests=MAILING_LIST_MULTI, RCVD_IN_MSPIKE_H2,SPF_HELO_PASS,URIBL_BLOCKED autolearn=unavailable autolearn_force=no version=3.4.6 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mira.cbaines.net (Postfix) with ESMTPS id 4A02A16BA5 for ; Sun, 26 Feb 2023 19:14:12 +0000 (GMT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1pWMTF-0002AJ-4V; Sun, 26 Feb 2023 14:14:05 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pWMTD-00029e-NA for guix-patches@gnu.org; Sun, 26 Feb 2023 14:14:03 -0500 Received: from debbugs.gnu.org ([209.51.188.43]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1pWMTD-0002H1-F5 for guix-patches@gnu.org; Sun, 26 Feb 2023 14:14:03 -0500 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1pWMTD-0000hT-Av for guix-patches@gnu.org; Sun, 26 Feb 2023 14:14:03 -0500 X-Loop: help-debbugs@gnu.org Subject: [bug#61773] [PATCH 3/3] gnu: Add actionlint. Resent-From: Timo Wilken Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Sun, 26 Feb 2023 19:14:03 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 61773 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 61773@debbugs.gnu.org Cc: Timo Wilken Received: via spool by 61773-submit@debbugs.gnu.org id=B61773.16774388412655 (code B ref 61773); Sun, 26 Feb 2023 19:14:03 +0000 Received: (at 61773) by debbugs.gnu.org; 26 Feb 2023 19:14:01 +0000 Received: from localhost ([127.0.0.1]:45089 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1pWMTB-0000gg-4n for submit@debbugs.gnu.org; Sun, 26 Feb 2023 14:14:01 -0500 Received: from mx2.mythic-beasts.com ([46.235.227.24]:42271) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1pWMT3-0000fV-3v for 61773@debbugs.gnu.org; Sun, 26 Feb 2023 14:13:56 -0500 Received: by mailhub-hex-d.mythic-beasts.com with esmtpsa (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.94.2) (envelope-from ) id 1pWMSx-003cOo-Am; Sun, 26 Feb 2023 19:13:47 +0000 From: Timo Wilken Date: Sun, 26 Feb 2023 20:13:21 +0100 Message-Id: <20230226191321.13521-4-guix@twilken.net> X-Mailer: git-send-email 2.39.1 In-Reply-To: <20230226191321.13521-1-guix@twilken.net> References: <20230226191321.13521-1-guix@twilken.net> MIME-Version: 1.0 X-BlackCat-Spam-Score: 49 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: guix-patches@gnu.org List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org Sender: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org X-getmail-retrieved-from-mailbox: Patches Actionlint is a linter for GitHub Action workflow files. * gnu/packages/check.scm (actionlint): New variable. --- gnu/packages/check.scm | 52 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 52 insertions(+) diff --git a/gnu/packages/check.scm b/gnu/packages/check.scm index c928d11f64..4e907afeb6 100644 --- a/gnu/packages/check.scm +++ b/gnu/packages/check.scm @@ -1047,6 +1047,58 @@ (define-public go-github-com-robfig-cron-1.2 (base32 "0nv31m3940d9kf38lw2zs4hpj435bdi9mmim098rb3n4l07qrvva")))))) +(define-public actionlint + (package + (name "actionlint") + (version "1.6.23") + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/rhysd/actionlint") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "07is4920a40zrl7mfldg0az2pisi7f6dv4vh3ijn3nzb4i7fqbni")))) + (build-system go-build-system) + (arguments + '(#:import-path "github.com/rhysd/actionlint/cmd/actionlint" + #:unpack-path "github.com/rhysd/actionlint" + #:install-source? #f)) + (inputs (list go-github-com-fatih-color + go-github-com-mattn-go-colorable + go-github-com-mattn-go-runewidth + go-github-com-robfig-cron-1.2 + go-golang.org-x-sync-errgroup + go-golang.org-x-sync-semaphore + go-gopkg-in-yaml-v3)) + (native-inputs (list go-github-com-google-go-cmp-cmp)) + (home-page "https://rhysd.github.io/actionlint/") + (synopsis "Static checker for GitHub Actions workflow files") + (description + "actionlint is a static checker for GitHub Actions +workflow files. Features include: + +@itemize +@item Syntax check for workflow files to check unexpected or missing +keys following workflow syntax +@item Strong type check for @code{$@{@{ @}@}} expressions to catch +several semantic errors like access to not existing property, type +mismatches, ... +@item Actions usage check to check that inputs at @code{with:} and +outputs in @code{steps.@{id@}.outputs} are correct +@item Reusable workflow check to check inputs/outputs/secrets of +reusable workflows and workflow calls +@item shellcheck and pyflakes integrations for scripts at @code{run:} +@item Security checks; script injection by untrusted inputs, +hard-coded credentials +@item Other several useful checks; glob syntax validation, +dependencies check for @code{needs:}, runner label validation, cron +syntax validation, ... +@end itemize +") + (license license:expat))) + (define-public python-parameterized (package (name "python-parameterized")