bats-core
ShellCheck
bats-core | ShellCheck | |
---|---|---|
23 | 488 | |
4,636 | 34,995 | |
1.2% | - | |
8.8 | 8.7 | |
2 days ago | 7 days ago | |
Shell | Haskell | |
GNU General Public License v3.0 or later | GNU General Public License v3.0 only |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
bats-core
- BATS 1.11.0 released
-
Test Anything Protocol (Tap)
I use Bats which is TAP-compliant (https://github.com/bats-core/bats-core) at work to test CIS Benchmark at servers, it's amazing.
- Bashunit
-
How to get code coverage data out of integration tests
I'm working on a project that utilizes the standard Rust unit tests for some of its tests. However, most of the testing is done through integration tests with Bats (https://github.com/bats-core/bats-core). The Bats tests just run the binary. Is it possible to get code coverage data out of these tests somehow?
-
First time writing bash scripts for work, not sure if this is true elsewhere
There's Bat for automated bash testing. Used it a couple of times! https://github.com/bats-core/bats-core
-
Integration testing docs in GitHub Actions
Bats (Bash Automated Testing System) plus assertion libraries for kubectl
-
Unix bash scripting versus Python - any resources out there for comparisons?
Bash has a testing library. I think it's called BATS (not builtin though).
-
Testing Terraform infra - terratest alternatives?
I'm considering something like BATS, but maybe there are other specialized tools? Ofc I could just write some bash myself and add to that as the time goes on, but there has to be a better way.
-
asdf banned_commands
If you were as confused as I was where "run" is defined and how "output" gets set, and what the heck the bats extension is:
(1) and (2) are answered here:
https://github.com/bats-core/bats-core/blob/master/lib/bats-...
(3) bash automatic testing system.
-
Unix shell script tactics - a style guide
It's probably worth noting, bats-core is a solid testing framework, which allows a lot more serious approach to writing shell. https://github.com/bats-core/bats-core
ShellCheck
-
Ask HN: Is there a GUI for bash shell?
ncurse, dialog, zenity[2]. i/o buffering may be an issue [3a,3b]
Assuming using same account, use history command to show past commands[0a, 0b]
'load random example' on shellcheck using own custom examples from history command.[1]
--------
[3a] : http://www.gnu.org/software/coreutils/manual/html_node/stdbu...
[3b] : http://unix.stackexchange.com/questions/25372/how-to-turn-of...
[2] : http//funprojects.blog/2021/01/25/zenity-command-line-dialogs/
[1] : http://www.shellcheck.net/
[0a] : http://www.tecmint.com/history-command-examples/
[0b] : http://www.tecmint.com/remember-linux-commands/
web based documentation: https://www.tecmint.com/linux-commands-cheat-sheet/
commands grouped by typical usage patterns : https://www.tecmint.com/essential-linux-commands/
-
DevSecOps with AWS- IaC at scale - Building your own platform - Part 1
... #************************** Terraform ************************************* ARG TERRAFORM_VERSION=1.7.3 RUN set -ex \ && curl -O https://releases.hashicorp.com/terraform/${TERRAFORM_VERSION}/terraform_${TERRAFORM_VERSION}_linux_amd64.zip && unzip terraform_${TERRAFORM_VERSION}_linux_amd64.zip -d /usr/local/bin/ RUN set -ex \ && mkdir -p $HOME/.terraform.d/plugin-cache && echo 'plugin_cache_dir = "$HOME/.terraform.d/plugin-cache"' > ~/.terraformrc #************************* Terragrunt ************************************* ARG TERRAGRUNT_VERSION=0.55.1 RUN set -ex \ && wget https://github.com/gruntwork-io/terragrunt/releases/download/v${TERRAGRUNT_VERSION}/terragrunt_linux_amd64 -q \ && mv terragrunt_linux_amd64 /usr/local/bin/terragrunt \ && chmod +x /usr/local/bin/terragrunt #*********************** Terramate **************************************** ARG TERRAMATE_VERSION=0.4.5 RUN set -ex \ && wget https://github.com/mineiros-io/terramate/releases/download/v${TERRAMATE_VERSION}/terramate_${TERRAMATE_VERSION}_linux_x86_64.tar.gz \ && tar -xzf terramate_${TERRAMATE_VERSION}_linux_x86_64.tar.gz \ && mv terramate /usr/local/bin/terramate \ && chmod +x /usr/local/bin/terramate #*********************** tfsec ******************************************** ARG TFSEC_VERSION=1.28.5 RUN set -ex \ && wget https://github.com/aquasecurity/tfsec/releases/download/v${TFSEC_VERSION}/tfsec-linux-amd64 \ && mv tfsec-linux-amd64 /usr/local/bin/tfsec \ && chmod +x /usr/local/bin/tfsec \ && terragrunt --version #**********************Terraform docs ************************************ ARG TERRRAFORM_DOCS_VERSION=0.17.0 RUN set -ex \ && curl -sSLo ./terraform-docs.tar.gz https://terraform-docs.io/dl/v${TERRRAFORM_DOCS_VERSION}/terraform-docs-v${TERRRAFORM_DOCS_VERSION}-$(uname)-amd64.tar.gz \ && tar -xzf terraform-docs.tar.gz \ && chmod +x terraform-docs \ && mv terraform-docs /usr/local/bin/terraform-docs #********************* ShellCheck ***************************************** ARG SHELLCHECK_VERSION="stable" RUN set -ex \ && wget -qO- "https://github.com/koalaman/shellcheck/releases/download/${SHELLCHECK_VERSION?}/shellcheck-${SHELLCHECK_VERSION?}.linux.x86_64.tar.xz" | tar -xJv \ && cp "shellcheck-${SHELLCHECK_VERSION}/shellcheck" /usr/bin/ \ && shellcheck --version ...
-
Ask HN: Popular open source tool originally written in Haskell?
ShellCheck: https://github.com/koalaman/shellcheck
-
Google ZX – A tool for writing better scripts
If I want to write better shell scripts I usually run shellcheck and adjust accordingly or if I need facilities not provided by the shell i switch to a full fledged programming language. Ans oh yes, `sh` is present almost on every BSD and Linux box for free so I consider it an important thing to at least be comfortable with.
shellcheck: https://www.shellcheck.net/
-
How I use Nix in my Elm projects
When I run nix-shell at the root of the project it puts me in a Nix shell that contains, among other programs, caddy and shellcheck. Notice that in the shellHook I add the project's shell scripts to the PATH. So once I'm in the Nix shell I can, among other things:
- Ask HN: A Bash guide for Posix programmers?
-
Regex support to list modules in .cabal?
I have also seen some projects on github like ShellCheck which first make a library, expose all the modules and then simple add that do build-depends of the final executable. Is this the recommended approach than having just one executable and adding all the modules to other-modules:?
-
Shellcheck finds bugs in your shell scripts
The error checks can be pretty arcane:
https://github.com/koalaman/shellcheck/wiki/Checks
-
Is there a syntax checker?
Similar to for instance shellcheck to check the syntax of shell scripts, is there an equivalent for the set of roff commands typically used in a (Linux) man page? I'm aware that e.g. pandoc permits the conversion of an other format (e.g., org) to both roff man and roff ms.
- Shellcheck – finds bugs in your shell scripts
What are some alternatives?
shunit2 - shUnit2 is a xUnit based unit test framework for Bourne based shell scripts.
bash-language-server - A language server for Bash
getting-started-with-bash-testing - Example Bash Project to get started with testing with Bats.
shellharden - The corrective bash syntax highlighter
bash-oo-framework - Bash Infinity is a modern standard library / framework / boilerplate for Bash
shfmt - Dockernized shfmt. This formats shell script.
bats-assert - Common assertions for Bats
shfmt - A shell formatter (sh/bash/mksh)
PowerShell - PowerShell for every system!
sh - A shell parser, formatter, and interpreter with bash support; includes shfmt
efm-langserver - General purpose Language Server